From cca4cb8ea9f384176da70c4910f6fccc46bfc259 Mon Sep 17 00:00:00 2001 From: Richard Richter Date: Wed, 12 May 2021 23:17:02 +0200 Subject: [PATCH] repo-sqale: update of querydsl mapping around QOrgClosure Still no Q*Mapping class is needed, this is only for query support. --- .../midpoint/repo/sqale/qmodel/org/MOrg.java | 3 +-- .../repo/sqale/qmodel/org/MOrgClosure.java | 23 +++++++++++++++++++ .../repo/sqale/qmodel/org/QOrgClosure.java | 22 ++++++++++-------- 3 files changed, 36 insertions(+), 12 deletions(-) create mode 100644 repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/MOrgClosure.java diff --git a/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/MOrg.java b/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/MOrg.java index 09e31cecd8c..26e35ca1b96 100644 --- a/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/MOrg.java +++ b/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/MOrg.java @@ -7,10 +7,9 @@ package com.evolveum.midpoint.repo.sqale.qmodel.org; import com.evolveum.midpoint.repo.sqale.qmodel.role.MAbstractRole; -import com.evolveum.midpoint.repo.sqale.qmodel.role.QRole; /** - * Querydsl "row bean" type related to {@link QRole}. + * Querydsl "row bean" type related to {@link QOrg}. */ public class MOrg extends MAbstractRole { diff --git a/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/MOrgClosure.java b/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/MOrgClosure.java new file mode 100644 index 00000000000..3925f623cc4 --- /dev/null +++ b/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/MOrgClosure.java @@ -0,0 +1,23 @@ +/* + * Copyright (C) 2010-2021 Evolveum and contributors + * + * This work is dual-licensed under the Apache License 2.0 + * and European Union Public License. See LICENSE file for details. + */ +package com.evolveum.midpoint.repo.sqale.qmodel.org; + +import java.util.UUID; + +/** + * Querydsl "row bean" type related to {@link QOrgClosure}. + */ +public class MOrgClosure { + + public UUID ancestorOid; + public UUID descendantOid; + + @Override + public String toString() { + return "MOrgClosure{" + ancestorOid + " -> " + descendantOid + '}'; + } +} diff --git a/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/QOrgClosure.java b/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/QOrgClosure.java index 336fa886059..cce18ef83d0 100644 --- a/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/QOrgClosure.java +++ b/repo/repo-sqale/src/main/java/com/evolveum/midpoint/repo/sqale/qmodel/org/QOrgClosure.java @@ -12,24 +12,26 @@ import com.evolveum.midpoint.repo.sqlbase.querydsl.UuidPath; /** - * Querydsl query type for common table expression (CTE) representing org hierarchy on the fly. - * Does not use any backing bean, it is never retrieved directly, only used in the query. + * Querydsl query type for org closure table. + * Can also be used for common table expression (CTE) representing org hierarchy on the fly. * This does not have to be under {@link FlexibleRelationalPathBase}, but is for convenience. */ @SuppressWarnings("unused") -public class QOrgClosure extends FlexibleRelationalPathBase { +public class QOrgClosure extends FlexibleRelationalPathBase { private static final long serialVersionUID = 4406075586720866032L; + public static final String TABLE_NAME = "m_org_closure"; + public static final String DEFAULT_ALIAS_NAME = "orgc"; - public static final ColumnMetadata PARENT = - ColumnMetadata.named("parent").ofType(UuidPath.UUID_TYPE); - public static final ColumnMetadata CHILD = - ColumnMetadata.named("child").ofType(UuidPath.UUID_TYPE); + public static final ColumnMetadata ANCESTOR_OID = + ColumnMetadata.named("ancestor_oid").ofType(UuidPath.UUID_TYPE); + public static final ColumnMetadata DESCENDANT_OID = + ColumnMetadata.named("descendant_oid").ofType(UuidPath.UUID_TYPE); - public final UuidPath parent = createUuid("parent", PARENT); - public final UuidPath child = createUuid("child", CHILD); + public final UuidPath ancestorOid = createUuid("ancestorOid", ANCESTOR_OID); + public final UuidPath descendantOid = createUuid("descendantOid", DESCENDANT_OID); public QOrgClosure() { this(DEFAULT_ALIAS_NAME, DEFAULT_SCHEMA_NAME); @@ -40,6 +42,6 @@ public QOrgClosure(String variable) { } public QOrgClosure(String variable, String schema) { - super(QOrgClosure.class, variable, schema, "orgc"); // not a real table + super(MOrgClosure.class, variable, schema, TABLE_NAME); } }