Skip to content

Commit

Permalink
Sqale: AccessCertificationCase WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
semancik committed Jun 21, 2021
1 parent 25c8583 commit bbefd9a
Show file tree
Hide file tree
Showing 4 changed files with 402 additions and 3 deletions.
6 changes: 3 additions & 3 deletions repo/repo-sqale/sql/pgnew-repo.sql
Original file line number Diff line number Diff line change
Expand Up @@ -1263,7 +1263,6 @@ CREATE INDEX m_access_cert_definition_policySituation_idx
ON m_access_cert_definition USING GIN(policysituations gin__int_ops);
CREATE INDEX m_access_cert_definition_ext_idx ON m_access_cert_definition USING gin (ext);

-- TODO not mapped yet
CREATE TABLE m_access_cert_campaign (
oid UUID NOT NULL PRIMARY KEY REFERENCES m_object_oid(oid),
objectType ObjectType GENERATED ALWAYS AS ('ACCESS_CERTIFICATION_CAMPAIGN') STORED
Expand Down Expand Up @@ -1298,6 +1297,7 @@ CREATE INDEX m_access_cert_campaign_policySituation_idx
ON m_access_cert_campaign USING GIN(policysituations gin__int_ops);
CREATE INDEX m_access_cert_campaign_ext_idx ON m_access_cert_campaign USING gin (ext);

-- TODO not mapped yet
CREATE TABLE m_access_cert_case (
ownerOid UUID NOT NULL REFERENCES m_object_oid(oid) ON DELETE CASCADE,
containerType ContainerType GENERATED ALWAYS AS ('ACCESS_CERTIFICATION_CASE') STORED
Expand All @@ -1323,8 +1323,8 @@ CREATE TABLE m_access_cert_case (
orgRefRelationId INTEGER REFERENCES m_uri(id),
outcome TEXT,
remediedTimestamp TIMESTAMPTZ,
reviewDeadline TIMESTAMPTZ,
reviewRequestedTimestamp TIMESTAMPTZ,
currentStageDeadline TIMESTAMPTZ,
currentStageCreateTimestamp TIMESTAMPTZ,
stageNumber INTEGER,
targetRefTargetOid UUID,
targetRefTargetType ObjectType,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
/*
* 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.accesscert;

import java.time.Instant;
import java.util.UUID;

import com.evolveum.midpoint.repo.sqale.qmodel.common.MContainer;
import com.evolveum.midpoint.repo.sqale.qmodel.object.MObjectType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ActivationStatusType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.TimeIntervalStatusType;

/**
* Querydsl "row bean" type related to {@link QAccessCertificationCase}.
*/
public class MAccessCertificationCase extends MContainer {

// activation columns
public ActivationStatusType administrativeStatus;
public Instant archiveTimestamp;
public String disableReason;
public Instant disableTimestamp;
public ActivationStatusType effectiveStatus;
public Instant enableTimestamp;
public Instant validFrom;
public Instant validTo;
public Instant validityChangeTimestamp;
public TimeIntervalStatusType validityStatus;

public String currentStageOutcome;
public byte[] fullObject;
public Integer iteration;
public UUID objectRefTargetOid;
public MObjectType objectRefTargetType;
public Integer objectRefRelationId;
public UUID orgRefTargetOid;
public MObjectType orgRefTargetType;
public Integer orgRefRelationId;
public String outcome;
public Instant remediedTimestamp;
public Instant currentStageDeadline;
public Instant currentStageCreateTimestamp;
public Integer stageNumber;
public UUID targetRefTargetOid;
public MObjectType targetRefTargetType;
public Integer targetRefRelationId;
public UUID tenantRefTargetOid;
public MObjectType tenantRefTargetType;
public Integer tenantRefRelationId;

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
/*
* 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.accesscert;

import java.sql.Types;
import java.time.Instant;

import com.querydsl.core.types.dsl.*;
import com.querydsl.sql.ColumnMetadata;

import com.evolveum.midpoint.repo.sqale.qmodel.common.QContainer;
import com.evolveum.midpoint.repo.sqale.qmodel.object.MObjectType;
import com.evolveum.midpoint.repo.sqlbase.querydsl.UuidPath;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ActivationStatusType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.TimeIntervalStatusType;

/**
* Querydsl query type for {@value #TABLE_NAME} table.
*/
@SuppressWarnings("unused")
public class QAccessCertificationCase extends QContainer<MAccessCertificationCase, MAccessCertificationCampaign> {

private static final long serialVersionUID = -7057010668203386506L;

public static final String TABLE_NAME = "m_access_cert_case";

// activation columns
public static final ColumnMetadata ADMINISTRATIVE_STATUS =
ColumnMetadata.named("administrativeStatus").ofType(Types.OTHER);
public static final ColumnMetadata ARCHIVE_TIMESTAMP =
ColumnMetadata.named("archiveTimestamp").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata DISABLE_REASON =
ColumnMetadata.named("disableReason").ofType(Types.VARCHAR);
public static final ColumnMetadata DISABLE_TIMESTAMP =
ColumnMetadata.named("disableTimestamp").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata EFFECTIVE_STATUS =
ColumnMetadata.named("effectiveStatus").ofType(Types.OTHER);
public static final ColumnMetadata ENABLE_TIMESTAMP =
ColumnMetadata.named("enableTimestamp").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata VALID_FROM =
ColumnMetadata.named("validFrom").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata VALID_TO =
ColumnMetadata.named("validTo").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata VALIDITY_CHANGE_TIMESTAMP =
ColumnMetadata.named("validityChangeTimestamp").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata VALIDITY_STATUS =
ColumnMetadata.named("validityStatus").ofType(Types.OTHER);
public static final ColumnMetadata CURRENT_STAGE_OUTCOME =
ColumnMetadata.named("currentStageOutcome").ofType(Types.VARCHAR);
public static final ColumnMetadata FULL_OBJECT =
ColumnMetadata.named("fullObject").ofType(Types.BINARY);
public static final ColumnMetadata ITERATION =
ColumnMetadata.named("iteration").ofType(Types.INTEGER);
public static final ColumnMetadata OBJECT_REF_TARGET_OID =
ColumnMetadata.named("objectRefTargetOid").ofType(UuidPath.UUID_TYPE);
public static final ColumnMetadata OBJECT_REF_TARGET_TYPE =
ColumnMetadata.named("objectRefTargetType").ofType(Types.OTHER);
public static final ColumnMetadata OBJECT_REF_RELATION_ID =
ColumnMetadata.named("objectRefRelationId").ofType(Types.INTEGER);
public static final ColumnMetadata ORG_REF_TARGET_OID =
ColumnMetadata.named("orgRefTargetOid").ofType(UuidPath.UUID_TYPE);
public static final ColumnMetadata ORG_REF_TARGET_TYPE =
ColumnMetadata.named("orgRefTargetType").ofType(Types.OTHER);
public static final ColumnMetadata ORG_REF_RELATION_ID =
ColumnMetadata.named("orgRefRelationId").ofType(Types.INTEGER);
public static final ColumnMetadata OUTCOME =
ColumnMetadata.named("outcome").ofType(Types.VARCHAR);
public static final ColumnMetadata REMEDIED_TIMESTAMP =
ColumnMetadata.named("remediedTimestamp").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata CURRENT_STAGE_DEADLINE =
ColumnMetadata.named("currentStageDeadline").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata CURRENT_STAGE_CREATE_TIMESTAMP =
ColumnMetadata.named("currentStageCreateTimestamp").ofType(Types.TIMESTAMP_WITH_TIMEZONE);
public static final ColumnMetadata STAGE_NUMBER =
ColumnMetadata.named("stageNumber").ofType(Types.INTEGER);
public static final ColumnMetadata TARGET_REF_TARGET_OID =
ColumnMetadata.named("targetRefTargetOid").ofType(UuidPath.UUID_TYPE);
public static final ColumnMetadata TARGET_REF_TARGET_TYPE =
ColumnMetadata.named("targetRefTargetType").ofType(Types.OTHER);
public static final ColumnMetadata TARGET_REF_RELATION_ID =
ColumnMetadata.named("targetRefRelationId").ofType(Types.INTEGER);
public static final ColumnMetadata TENANT_REF_TARGET_OID =
ColumnMetadata.named("tenantRefTargetOid").ofType(UuidPath.UUID_TYPE);
public static final ColumnMetadata TENANT_REF_TARGET_TYPE =
ColumnMetadata.named("tenantRefTargetType").ofType(Types.OTHER);
public static final ColumnMetadata TENANT_REF_RELATION_ID =
ColumnMetadata.named("tenantRefRelationId").ofType(Types.INTEGER);

// attributes

// activation
public final EnumPath<ActivationStatusType> administrativeStatus =
createEnum("administrativeStatus", ActivationStatusType.class, ADMINISTRATIVE_STATUS);
public final DateTimePath<Instant> archiveTimestamp =
createInstant("archiveTimestamp", ARCHIVE_TIMESTAMP);
public final StringPath disableReason = createString("disableReason", DISABLE_REASON);
public final DateTimePath<Instant> disableTimestamp =
createInstant("disableTimestamp", DISABLE_TIMESTAMP);
public final EnumPath<ActivationStatusType> effectiveStatus =
createEnum("effectiveStatus", ActivationStatusType.class, EFFECTIVE_STATUS);
public final DateTimePath<Instant> enableTimestamp =
createInstant("enableTimestamp", ENABLE_TIMESTAMP);
public final DateTimePath<Instant> validFrom = createInstant("validFrom", VALID_FROM);
public final DateTimePath<Instant> validTo = createInstant("validTo", VALID_TO);
public final DateTimePath<Instant> validityChangeTimestamp =
createInstant("validityChangeTimestamp", VALIDITY_CHANGE_TIMESTAMP);
public final EnumPath<TimeIntervalStatusType> validityStatus =
createEnum("validityStatus", TimeIntervalStatusType.class, VALIDITY_STATUS);

public final StringPath currentStageOutcome = createString("currentStageOutcome", CURRENT_STAGE_OUTCOME);
public final ArrayPath<byte[], Byte> fullObject = createByteArray("fullObject", FULL_OBJECT);
public final NumberPath<Integer> iteration = createInteger("iteration", ITERATION);
public final UuidPath objectRefTargetOid =
createUuid("objectRefTargetOid", OBJECT_REF_TARGET_OID);
public final EnumPath<MObjectType> objectRefTargetType =
createEnum("objectRefTargetType", MObjectType.class, OBJECT_REF_TARGET_TYPE);
public final NumberPath<Integer> objectRefRelationId =
createInteger("objectRefRelationId", OBJECT_REF_RELATION_ID);
public final UuidPath orgRefTargetOid =
createUuid("orgRefTargetOid", ORG_REF_TARGET_OID);
public final EnumPath<MObjectType> orgRefTargetType =
createEnum("orgRefTargetType", MObjectType.class, ORG_REF_TARGET_TYPE);
public final NumberPath<Integer> orgRefRelationId =
createInteger("orgRefRelationId", ORG_REF_RELATION_ID);
public final StringPath outcome = createString("outcome", OUTCOME);
public final DateTimePath<Instant> remediedTimestamp =
createInstant("remediedTimestamp", REMEDIED_TIMESTAMP);
public final DateTimePath<Instant> currentStageCreateTimestamp =
createInstant("currentStageCreateTimestamp", CURRENT_STAGE_DEADLINE);
public final DateTimePath<Instant> reviewRequestedTimestamp =
createInstant("reviewRequestedTimestamp", CURRENT_STAGE_CREATE_TIMESTAMP);
public final NumberPath<Integer> stageNumber =
createInteger("stageNumber", STAGE_NUMBER);
public final UuidPath targetRefTargetOid =
createUuid("targetRefTargetOid", TARGET_REF_TARGET_OID);
public final EnumPath<MObjectType> targetRefTargetType =
createEnum("targetRefTargetType", MObjectType.class, TARGET_REF_TARGET_TYPE);
public final NumberPath<Integer> targetRefRelationId =
createInteger("targetRefRelationId", TARGET_REF_RELATION_ID);
public final UuidPath tenantRefTargetOid =
createUuid("tenantRefTargetOid", TENANT_REF_TARGET_OID);
public final EnumPath<MObjectType> tenantRefTargetType =
createEnum("tenantRefTargetType", MObjectType.class, TENANT_REF_TARGET_TYPE);
public final NumberPath<Integer> tenantRefRelationId =
createInteger("tenantRefRelationId", TENANT_REF_RELATION_ID);

public QAccessCertificationCase(String variable) {
this(variable, DEFAULT_SCHEMA_NAME, TABLE_NAME);
}

public QAccessCertificationCase(String variable, String schema, String table) {
super(MAccessCertificationCase.class, variable, schema, table);
}

@Override
public BooleanExpression isOwnedBy(MAccessCertificationCampaign ownerRow) {
return ownerOid.eq(ownerRow.oid);
}
}

0 comments on commit bbefd9a

Please sign in to comment.