From c72e6ad23d2a820a8441145c148162f6b9fa3b44 Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Fri, 26 Apr 2024 14:58:23 -0500 Subject: [PATCH] CE-882 Add reversed join --- .../rdbms/sharing/SharingMetaDataProvider.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/qqq-backend-module-rdbms/src/test/java/com/kingsrook/qqq/backend/module/rdbms/sharing/SharingMetaDataProvider.java b/qqq-backend-module-rdbms/src/test/java/com/kingsrook/qqq/backend/module/rdbms/sharing/SharingMetaDataProvider.java index 57a94c9c..98f822c6 100644 --- a/qqq-backend-module-rdbms/src/test/java/com/kingsrook/qqq/backend/module/rdbms/sharing/SharingMetaDataProvider.java +++ b/qqq-backend-module-rdbms/src/test/java/com/kingsrook/qqq/backend/module/rdbms/sharing/SharingMetaDataProvider.java @@ -55,6 +55,7 @@ public class SharingMetaDataProvider public static final String GROUP_ID_ALL_ACCESS_KEY_TYPE = "groupIdAllAccessKey"; private static final String ASSET_JOIN_SHARED_ASSET = "assetJoinSharedAsset"; + private static final String SHARED_ASSET_JOIN_ASSET = "sharedAssetJoinAsset"; @@ -93,11 +94,11 @@ public class SharingMetaDataProvider .withLock(new RecordSecurityLock() .withSecurityKeyType(USER_ID_KEY_TYPE) .withFieldName("sharedAsset.userId") - .withJoinNameChain(List.of(ASSET_JOIN_SHARED_ASSET))) + .withJoinNameChain(List.of(SHARED_ASSET_JOIN_ASSET))) .withLock(new RecordSecurityLock() .withSecurityKeyType(GROUP_ID_KEY_TYPE) .withFieldName("sharedAsset.groupId") - .withJoinNameChain(List.of(ASSET_JOIN_SHARED_ASSET))) + .withJoinNameChain(List.of(SHARED_ASSET_JOIN_ASSET))) )); QInstanceEnricher.setInferredFieldBackendNames(qInstance.getTable(Asset.TABLE_NAME)); @@ -154,6 +155,14 @@ public class SharingMetaDataProvider .withType(JoinType.ONE_TO_MANY) .withJoinOn(new JoinOn("id", "assetId")) ); + + qInstance.addJoin(new QJoinMetaData() + .withName(SHARED_ASSET_JOIN_ASSET) + .withLeftTable(SharedAsset.TABLE_NAME) + .withRightTable(Asset.TABLE_NAME) + .withType(JoinType.MANY_TO_ONE) + .withJoinOn(new JoinOn("assetId", "id")) + ); } }