diff options
author | donald.g.dunne | 2013-11-25 21:34:43 +0000 |
---|---|---|
committer | donald.g.dunne | 2013-11-26 17:02:59 +0000 |
commit | 671fbd22f0ed2328a786bcddd6f9e0c2b9e38a1b (patch) | |
tree | 7a489454e6845fb770c15b592b025c2b0f16420b /plugins | |
parent | 41a6ae76c22fdf97567961099dacb3b06cae096c (diff) | |
download | org.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
Change-Id: I6f0d23f47e984c5c8055cee199464382969f2409
Diffstat (limited to 'plugins')
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); } } |