feature[TW18065]: Add AtsCmBranch token
Change-Id: I05f288817d17e7111cda40927ac57e56963f32a9
diff --git a/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/data/AtsArtifactToken.java b/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/data/AtsArtifactToken.java
index 4639f63..3c36fde 100644
--- a/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/data/AtsArtifactToken.java
+++ b/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/data/AtsArtifactToken.java
@@ -35,6 +35,10 @@
*/
public static final ArtifactToken AtsCmAccessControl = ArtifactToken.valueOf(9885573, "ATS CM Access Control", COMMON, CoreArtifactTypes.GeneralData);
+ /**
+ * Associated artifact marking branch as an ATS CM Branch. Mostly for Baseline branches that don't have Team Workflow associated.
+ */
+ public static final ArtifactToken AtsCmBranch = ArtifactToken.valueOf(10867103, "ATS CM Branch", COMMON, CoreArtifactTypes.GeneralData);
public static ArtifactToken AtsTopFolder = ArtifactToken.valueOf(114713, "Action Tracking System", COMMON, CoreArtifactTypes.Folder);
public static final ArtifactToken AtsConfig = ArtifactToken.valueOf(5367053, "ATS Config", COMMON, CoreArtifactTypes.GeneralData);
diff --git a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/AtsDbConfigBase.java b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/AtsDbConfigBase.java
index b300c08..e0a3738 100644
--- a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/AtsDbConfigBase.java
+++ b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/config/AtsDbConfigBase.java
@@ -15,6 +15,7 @@
import java.io.File;
import java.util.Arrays;
+import java.util.List;
import org.eclipse.define.api.importing.IArtifactExtractor;
import org.eclipse.define.api.importing.RoughArtifact;
import org.eclipse.define.api.importing.RoughArtifactCollector;
@@ -55,6 +56,7 @@
import org.eclipse.osee.framework.core.util.JsonUtil;
import org.eclipse.osee.framework.core.util.OseeInf;
import org.eclipse.osee.framework.jdk.core.result.XResultData;
+import org.eclipse.osee.framework.jdk.core.util.Conditions;
import org.eclipse.osee.orcs.OrcsApi;
import org.eclipse.osee.orcs.OrcsBranch;
import org.eclipse.osee.orcs.data.ArtifactReadable;
@@ -77,6 +79,13 @@
branchOps = orcsApi.getBranchOps();
}
+ String getMultipleArtEntriesonCommon(AtsApi atsApi) {
+ return "SELECT DISTINCT art1.art_id FROM osee_artifact art1, osee_artifact art2, \n" + //
+ "osee_txs txs WHERE art1.ART_ID = art2.ART_ID AND \n" + //
+ "art1.art_type_id = art2.art_type_id AND art1.GAMMA_ID <> art2.GAMMA_ID AND \n" + //
+ "art2.GAMMA_ID = txs.GAMMA_ID and txs.BRANCH_ID = 570 ORDER BY art1.art_id";
+ }
+
public XResultData run() {
OseeInfo.setValue(atsApi.getJdbcService().getClient(), "osee.work.def.as.name", "true");
@@ -97,6 +106,16 @@
changes.setSoleAttributeValue(topAi, AtsAttributeTypes.Actionable, false);
changes.execute();
+ changes.reset("Create ATS CM Artifact");
+ ArtifactToken art = changes.createArtifact(AtsArtifactToken.AtsTopFolder, AtsArtifactToken.AtsCmBranch);
+ changes.setSoleAttributeValue(art, CoreAttributeTypes.Description,
+ "Used to denote Baseline branch as ATS CM branch");
+ changes.execute();
+
+ List<ArtifactId> artIds = atsApi.getQueryService().getArtifactIdsFromQuery(getMultipleArtEntriesonCommon(atsApi));
+
+ Conditions.assertTrue(artIds.isEmpty(), "Duplicate artifact ids found [%s]", artIds);
+
atsApi.clearCaches();
createUserGroups(atsApi);
@@ -237,9 +256,9 @@
changes.execute();
- (new OrganizePrograms(atsApi)).run();
+ XResultData results = (new OrganizePrograms(atsApi)).run();
- return new XResultData();
+ return results;
}
}
\ No newline at end of file
diff --git a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/util/AtsChangeSet.java b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/util/AtsChangeSet.java
index 669af8d..0f0febf 100644
--- a/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/util/AtsChangeSet.java
+++ b/plugins/org.eclipse.osee.ats.rest/src/org/eclipse/osee/ats/rest/internal/util/AtsChangeSet.java
@@ -476,4 +476,10 @@
throw new UnsupportedOperationException("Unsupported on Server");
}
-}
\ No newline at end of file
+ @Override
+ public void clear() {
+ super.clear();
+ transaction = null;
+ }
+
+}