Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.osee.ats.reports.split/src/org/eclipse/osee/ats/reports/split/ui/LoadDistributionDataOperation.java')
-rw-r--r--plugins/org.eclipse.osee.ats.reports.split/src/org/eclipse/osee/ats/reports/split/ui/LoadDistributionDataOperation.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/plugins/org.eclipse.osee.ats.reports.split/src/org/eclipse/osee/ats/reports/split/ui/LoadDistributionDataOperation.java b/plugins/org.eclipse.osee.ats.reports.split/src/org/eclipse/osee/ats/reports/split/ui/LoadDistributionDataOperation.java
new file mode 100644
index 00000000000..46a34573980
--- /dev/null
+++ b/plugins/org.eclipse.osee.ats.reports.split/src/org/eclipse/osee/ats/reports/split/ui/LoadDistributionDataOperation.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2012 Robert Bosch Engineering and Business Solutions Ltd India. All rights reserved. This program and
+ * the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies
+ * this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.osee.ats.reports.split.ui;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.osee.ats.api.version.IAtsVersion;
+import org.eclipse.osee.ats.core.client.config.store.VersionArtifactStore;
+import org.eclipse.osee.ats.reports.split.Activator;
+import org.eclipse.osee.ats.reports.split.model.AIDistributionEntry;
+import org.eclipse.osee.ats.reports.split.model.DistributionModel;
+import org.eclipse.osee.ats.reports.split.model.StateDistributionEntry;
+import org.eclipse.osee.ats.reports.split.model.TeamDistributionEntry;
+import org.eclipse.osee.framework.core.operation.AbstractOperation;
+import org.eclipse.osee.framework.core.util.Conditions;
+import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
+
+/**
+ * Class to extract data from workflows and fills the DistributionModel
+ *
+ * @author Praveen Joseph
+ */
+public class LoadDistributionDataOperation extends AbstractOperation {
+
+ private final IAtsVersion version;
+
+ public LoadDistributionDataOperation(IAtsVersion version) {
+ super("Load Work Distribution Data", Activator.PLUGIN_ID);
+ this.version = version;
+ }
+
+ @Override
+ protected void doWork(IProgressMonitor monitor) throws Exception {
+ Conditions.checkNotNull(version, "teamDefinition");
+ VersionArtifactStore artifactStore = new VersionArtifactStore(version);
+ Artifact artifact = artifactStore.getArtifact();
+
+ AIDistributionEntry aiSplitEntry = new AIDistributionEntry(artifact);
+ aiSplitEntry.computeAISplit();
+
+ TeamDistributionEntry teamSplitEntry = new TeamDistributionEntry(artifact);
+ teamSplitEntry.computeTeamSplit();
+
+ StateDistributionEntry stateSplitEntry = new StateDistributionEntry(artifact);
+ stateSplitEntry.computeStateSplit();
+
+ DistributionModel.setAiSplitEntry(aiSplitEntry);
+ DistributionModel.setTeamSplitEntry(teamSplitEntry);
+ DistributionModel.setStateSplitEntry(stateSplitEntry);
+ }
+
+}

Back to the top