Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordonald.g.dunne2013-11-25 21:34:43 +0000
committerdonald.g.dunne2013-11-26 17:02:59 +0000
commit671fbd22f0ed2328a786bcddd6f9e0c2b9e38a1b (patch)
tree7a489454e6845fb770c15b592b025c2b0f16420b /plugins
parent41a6ae76c22fdf97567961099dacb3b06cae096c (diff)
downloadorg.eclipse.osee-671fbd22f0ed2328a786bcddd6f9e0c2b9e38a1b.tar.gz
org.eclipse.osee-671fbd22f0ed2328a786bcddd6f9e0c2b9e38a1b.tar.xz
org.eclipse.osee-671fbd22f0ed2328a786bcddd6f9e0c2b9e38a1b.zip
feature[ats_XP9N2]: Remove un-necessary cache in AtsWorkDefinitionServiceImpl
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionAdmin.java2
-rw-r--r--plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionService.java6
-rw-r--r--plugins/org.eclipse.osee.ats.core.client/src/org/eclipse/osee/ats/core/client/internal/workdef/LoadAtsWorkDefinitionCacheCallable.java3
-rw-r--r--plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/workdef/AtsWorkDefinitionAdminImpl.java4
-rw-r--r--plugins/org.eclipse.osee.ats.impl/src/org/eclipse/osee/ats/impl/internal/AtsWorkDefinitionServiceImpl.java49
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workdef/AtsWorkDefinitionSheetProviders.java6
6 files changed, 22 insertions, 48 deletions
diff --git a/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionAdmin.java b/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionAdmin.java
index e77e9d9b142..c0cd643febe 100644
--- a/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionAdmin.java
+++ b/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionAdmin.java
@@ -77,6 +77,6 @@ public interface IAtsWorkDefinitionAdmin {
IAtsStateDefinition getStateDefinitionByName(IAtsWorkItem workItem, String stateName) throws OseeCoreException;
- Collection<String> getAllValidStateNames();
+ Collection<String> getAllValidStateNames(XResultData resultData) throws Exception;
} \ No newline at end of file
diff --git a/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionService.java b/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionService.java
index f67dbcc35e3..713ad176106 100644
--- a/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionService.java
+++ b/plugins/org.eclipse.osee.ats.api/src/org/eclipse/osee/ats/api/workdef/IAtsWorkDefinitionService.java
@@ -46,14 +46,12 @@ public interface IAtsWorkDefinitionService {
String getStorageString(IAtsWorkDefinition workDef, XResultData resultData) throws Exception;
- void clearCaches();
-
boolean teamDefHasRule(IAtsWorkItem workItem, RuleDefinitionOption rule);
boolean isInState(IAtsWorkItem workItem, IAtsStateDefinition stateDef);
- Collection<IAtsWorkDefinition> getAllWorkDefinitions() throws OseeCoreException, Exception;
+ Collection<IAtsWorkDefinition> getAllWorkDefinitions(XResultData resultData) throws OseeCoreException, Exception;
- Collection<String> getAllValidStateNames();
+ Collection<String> getAllValidStateNames(XResultData resultData) throws Exception;
}
diff --git a/plugins/org.eclipse.osee.ats.core.client/src/org/eclipse/osee/ats/core/client/internal/workdef/LoadAtsWorkDefinitionCacheCallable.java b/plugins/org.eclipse.osee.ats.core.client/src/org/eclipse/osee/ats/core/client/internal/workdef/LoadAtsWorkDefinitionCacheCallable.java
index 8102d24829b..c8c58b33dac 100644
--- a/plugins/org.eclipse.osee.ats.core.client/src/org/eclipse/osee/ats/core/client/internal/workdef/LoadAtsWorkDefinitionCacheCallable.java
+++ b/plugins/org.eclipse.osee.ats.core.client/src/org/eclipse/osee/ats/core/client/internal/workdef/LoadAtsWorkDefinitionCacheCallable.java
@@ -12,7 +12,6 @@ package org.eclipse.osee.ats.core.client.internal.workdef;
import java.util.concurrent.Callable;
import java.util.logging.Level;
-import org.eclipse.osee.ats.api.workdef.IAtsWorkDefinitionAdmin;
import org.eclipse.osee.ats.api.workdef.IAtsWorkDefinitionService;
import org.eclipse.osee.ats.core.client.internal.Activator;
import org.eclipse.osee.ats.core.workdef.AtsWorkDefinitionCache;
@@ -37,7 +36,7 @@ public class LoadAtsWorkDefinitionCacheCallable implements Callable<AtsWorkDefin
AtsWorkDefinitionCache cache = new AtsWorkDefinitionCache();
XResultData resultData = new XResultData(false);
- workDefinitionService.getWorkDef(IAtsWorkDefinitionAdmin.TaskWorkflowDefinitionId, resultData);
+ workDefinitionService.getAllWorkDefinitions(resultData);
if (!resultData.isEmpty()) {
OseeLog.log(Activator.class, Level.SEVERE, "Error " + NAME + resultData.toString());
diff --git a/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/workdef/AtsWorkDefinitionAdminImpl.java b/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/workdef/AtsWorkDefinitionAdminImpl.java
index 7fade0d763c..f056e59f753 100644
--- a/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/workdef/AtsWorkDefinitionAdminImpl.java
+++ b/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/workdef/AtsWorkDefinitionAdminImpl.java
@@ -415,7 +415,7 @@ public class AtsWorkDefinitionAdminImpl implements IAtsWorkDefinitionAdmin {
}
@Override
- public Collection<String> getAllValidStateNames() {
- return workDefinitionService.getAllValidStateNames();
+ public Collection<String> getAllValidStateNames(XResultData resultData) throws Exception {
+ return workDefinitionService.getAllValidStateNames(resultData);
}
}
diff --git a/plugins/org.eclipse.osee.ats.impl/src/org/eclipse/osee/ats/impl/internal/AtsWorkDefinitionServiceImpl.java b/plugins/org.eclipse.osee.ats.impl/src/org/eclipse/osee/ats/impl/internal/AtsWorkDefinitionServiceImpl.java
index 2f3a69d5926..627fcf10bc3 100644
--- a/plugins/org.eclipse.osee.ats.impl/src/org/eclipse/osee/ats/impl/internal/AtsWorkDefinitionServiceImpl.java
+++ b/plugins/org.eclipse.osee.ats.impl/src/org/eclipse/osee/ats/impl/internal/AtsWorkDefinitionServiceImpl.java
@@ -13,10 +13,8 @@ package org.eclipse.osee.ats.impl.internal;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
-import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
import org.eclipse.osee.ats.api.IAtsWorkItem;
@@ -51,8 +49,6 @@ import org.eclipse.osee.framework.logging.OseeLog;
*/
public class AtsWorkDefinitionServiceImpl implements IAtsWorkDefinitionService {
- private Map<String, IAtsWorkDefinition> workDefIdToWorkDef;
-
private IAtsWorkDefinitionStore workDefStore;
private IAttributeResolver attrResolver;
private IAtsUserService userService;
@@ -76,10 +72,6 @@ public class AtsWorkDefinitionServiceImpl implements IAtsWorkDefinitionService {
System.out.println("ATS - AtsWorkDefinitionServiceImpl started");
}
- public void stop() {
- workDefIdToWorkDef = null;
- }
-
@Override
public IAtsWorkDefinition copyWorkDefinition(String newName, IAtsWorkDefinition workDef, XResultData resultData) {
ConvertWorkDefinitionToAtsDsl converter = new ConvertWorkDefinitionToAtsDsl(resultData);
@@ -115,26 +107,8 @@ public class AtsWorkDefinitionServiceImpl implements IAtsWorkDefinitionService {
}
};
- private void ensureLoaded(XResultData resultData) throws Exception {
- if (workDefIdToWorkDef == null) {
- workDefIdToWorkDef = new HashMap<String, IAtsWorkDefinition>(15);
- for (Pair<String, String> entry : workDefStore.getWorkDefinitionStrings()) {
- String name = entry.getFirst();
- String workDefStr = entry.getSecond();
- AtsDsl atsDsl = ModelUtil.loadModel(name + ".ats", workDefStr);
- ConvertAtsDslToWorkDefinition convert =
- new ConvertAtsDslToWorkDefinition(name, atsDsl, resultData, attrResolver, userService);
- IAtsWorkDefinition workDef = convert.convert();
- if (workDefIdToWorkDef != null) {
- workDefIdToWorkDef.put(name, workDef);
- }
- }
- }
- }
-
@Override
public IAtsWorkDefinition getWorkDef(String workDefId, XResultData resultData) throws Exception {
- ensureLoaded(resultData);
String workDefStr = workDefStore.loadWorkDefinitionString(workDefId);
AtsDsl atsDsl = ModelUtil.loadModel(workDefId + ".ats", workDefStr);
ConvertAtsDslToWorkDefinition convert =
@@ -244,11 +218,6 @@ public class AtsWorkDefinitionServiceImpl implements IAtsWorkDefinitionService {
}
@Override
- public void clearCaches() {
- workDefIdToWorkDef = null;
- }
-
- @Override
public boolean teamDefHasRule(IAtsWorkItem workItem, RuleDefinitionOption option) {
boolean hasRule = false;
IAtsTeamWorkflow teamWf = null;
@@ -273,18 +242,24 @@ public class AtsWorkDefinitionServiceImpl implements IAtsWorkDefinitionService {
}
@Override
- public Collection<IAtsWorkDefinition> getAllWorkDefinitions() throws Exception {
- XResultData resultData = new XResultData(false);
- ensureLoaded(resultData);
+ public Collection<IAtsWorkDefinition> getAllWorkDefinitions(XResultData resultData) throws Exception {
List<IAtsWorkDefinition> workDefs = new ArrayList<IAtsWorkDefinition>();
- workDefs.addAll(workDefIdToWorkDef.values());
+ for (Pair<String, String> entry : workDefStore.getWorkDefinitionStrings()) {
+ String name = entry.getFirst();
+ String workDefStr = entry.getSecond();
+ AtsDsl atsDsl = ModelUtil.loadModel(name + ".ats", workDefStr);
+ ConvertAtsDslToWorkDefinition convert =
+ new ConvertAtsDslToWorkDefinition(name, atsDsl, resultData, attrResolver, userService);
+ IAtsWorkDefinition workDef = convert.convert();
+ workDefs.add(workDef);
+ }
return workDefs;
}
@Override
- public Collection<String> getAllValidStateNames() {
+ public Collection<String> getAllValidStateNames(XResultData resultData) throws Exception {
Set<String> allValidStateNames = new HashSet<String>();
- for (IAtsWorkDefinition workDef : workDefIdToWorkDef.values()) {
+ for (IAtsWorkDefinition workDef : getAllWorkDefinitions(resultData)) {
for (String stateName : getStateNames(workDef)) {
if (!allValidStateNames.contains(stateName)) {
allValidStateNames.add(stateName);
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workdef/AtsWorkDefinitionSheetProviders.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workdef/AtsWorkDefinitionSheetProviders.java
index 5f396bdc9f1..e3e7a4f0d09 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workdef/AtsWorkDefinitionSheetProviders.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/workdef/AtsWorkDefinitionSheetProviders.java
@@ -96,13 +96,15 @@ public final class AtsWorkDefinitionSheetProviders {
allValidStateNames.add(value);
}
} else {
+ XResultData resultData = new XResultData(false);
OseeLog.logf(AtsCore.class, Level.INFO,
"ATS Valid State Names: Missing [%s] Artifact; Falling back to loadAddDefinitions",
org.eclipse.osee.ats.api.data.AtsArtifactToken.WorkDef_State_Names.getName());
- allValidStateNames.addAll(AtsClientService.get().getWorkDefinitionAdmin().getAllValidStateNames());
+ allValidStateNames.addAll(AtsClientService.get().getWorkDefinitionAdmin().getAllValidStateNames(
+ resultData));
}
Collections.sort(allValidStateNames);
- } catch (OseeCoreException ex) {
+ } catch (Exception ex) {
OseeLog.log(AtsCore.class, Level.SEVERE, ex);
}
}

Back to the top