1 package eu
.etaxonomy
.taxeditor
.editor
;
4 import java
.net
.URISyntaxException
;
8 import org
.eclipse
.core
.runtime
.IProgressMonitor
;
9 import org
.eclipse
.ui
.IMemento
;
11 import eu
.etaxonomy
.cdm
.api
.conversation
.ConversationHolder
;
12 import eu
.etaxonomy
.cdm
.api
.service
.IFeatureTreeService
;
13 import eu
.etaxonomy
.cdm
.api
.service
.ITermService
;
14 import eu
.etaxonomy
.cdm
.api
.service
.IVocabularyService
;
15 import eu
.etaxonomy
.cdm
.model
.common
.MarkerType
;
16 import eu
.etaxonomy
.cdm
.model
.common
.TermVocabulary
;
17 import eu
.etaxonomy
.cdm
.model
.description
.Feature
;
18 import eu
.etaxonomy
.cdm
.model
.description
.FeatureNode
;
19 import eu
.etaxonomy
.cdm
.model
.description
.FeatureTree
;
20 import eu
.etaxonomy
.cdm
.model
.description
.Modifier
;
21 import eu
.etaxonomy
.cdm
.model
.description
.State
;
22 import eu
.etaxonomy
.taxeditor
.model
.ContextListenerAdapter
;
23 import eu
.etaxonomy
.taxeditor
.store
.CdmStore
;
24 import eu
.etaxonomy
.taxeditor
.store
.StoreUtil
;
26 public class UseObjectManager
extends ContextListenerAdapter
{
28 public void contextRefresh(IProgressMonitor monitor
) {
29 monitor
.subTask("Refreshing the Uses View");
30 StoreUtil
.warn(getClass(), "Refreshing Uses View warn");
31 setupNecessaryItems(monitor
);
36 public void contextStart(IMemento memento
, IProgressMonitor monitor
) {
37 monitor
.subTask("Starting the Uses View");
38 StoreUtil
.warn(getClass(), "Starting Uses View warn");
39 setupNecessaryItems(monitor
);
42 private void setupNecessaryItems(IProgressMonitor monitor
) {
43 MarkerType existingMarkertype
= (MarkerType
) CdmStore
.getService(ITermService
.class).find(UUID
.fromString("2e6e42d9-e92a-41f4-899b-03c0ac64f039"));
44 TermVocabulary
<State
> stateVocabulary
= (TermVocabulary
<State
>) CdmStore
.getService(IVocabularyService
.class).find(UUID
.fromString("67430d7c-fd43-4e9d-af5e-d0dca3f74931"));
45 Feature featureUseRecord
= (Feature
) CdmStore
.getService(ITermService
.class).find(UUID
.fromString("8125a59d-b4d5-4485-89ea-67306297b599"));
46 Feature featureUseSummary
= (Feature
) CdmStore
.getService(ITermService
.class).find(UUID
.fromString("6acb0348-c070-4512-a37c-67bcac016279"));
48 TermVocabulary
<Modifier
> countryVocabulary
= (TermVocabulary
<Modifier
>) CdmStore
.getService(IVocabularyService
.class).find(UUID
.fromString("116c51f1-e63a-46f7-a258-e1149a42868b"));
49 TermVocabulary
<Modifier
> plantPartVocabulary
= (TermVocabulary
<Modifier
>) CdmStore
.getService(IVocabularyService
.class).find(UUID
.fromString("369914fe-d54b-4063-99ce-abc81d30ad35"));
50 TermVocabulary
<Modifier
> humanGroupVocabulary
= (TermVocabulary
<Modifier
>) CdmStore
.getService(IVocabularyService
.class).find(UUID
.fromString("ca46cea5-bdf7-438d-9cd8-e2793d2178dc"));
51 //TermVocabulary<Feature> featureVocabulary = (TermVocabulary<Feature>)CdmStore.getService(IVocabularyService.class).find((UUID.fromString("b187d555-f06f-4d65-9e53-da7c93f8eaa8")));
53 ConversationHolder conversation
= CdmStore
.createConversation();
54 if (existingMarkertype
== null) {
55 existingMarkertype
= MarkerType
.NewInstance("use", "use", null);
56 existingMarkertype
.setUuid( UUID
.fromString("2e6e42d9-e92a-41f4-899b-03c0ac64f039"));
57 TermVocabulary
<MarkerType
> markerTypeVocabulary
= (TermVocabulary
<MarkerType
>)CdmStore
.getService(IVocabularyService
.class).find((UUID
.fromString("19dffff7-e142-429c-a420-5d28e4ebe305")));
58 markerTypeVocabulary
.addTerm(existingMarkertype
);
59 CdmStore
.getService(IVocabularyService
.class).saveOrUpdate(markerTypeVocabulary
);
60 conversation
.commit(true);
62 if (stateVocabulary
== null) {
63 monitor
.subTask("stateVocabulary empty");
64 URI termSourceUri
= null;
66 termSourceUri
= new URI("eu.etaxonomy.cdm.model.description.State");
67 } catch (URISyntaxException e
) {
70 stateVocabulary
= TermVocabulary
.NewInstance("Use Category", "Use Category", null, termSourceUri
);
71 stateVocabulary
.setUuid(UUID
.fromString("67430d7c-fd43-4e9d-af5e-d0dca3f74931"));
72 State newDummyState
= State
.NewInstance("N/A", "N/A", null);
73 newDummyState
.setUuid(UUID
.fromString("983a7184-6a51-489e-aca1-f21fc4fdbae3"));
74 State newDummySubCat
= State
.NewInstance("N/A", "N/A", null);
75 newDummySubCat
.setUuid(UUID
.fromString("a8d80223-5c79-4063-8c6b-4dc8681e9c62"));
76 newDummyState
.addIncludes(newDummySubCat
);
77 stateVocabulary
.addTerm(newDummyState
);
78 CdmStore
.getService(IVocabularyService
.class).saveOrUpdate(stateVocabulary
);
79 conversation
.commit(true);
81 if (countryVocabulary
== null) {
82 monitor
.subTask("countryVocabulary empty");
83 URI termSourceUri
= null;
85 termSourceUri
= new URI("eu.etaxonomy.cdm.model.description.Modifier");
86 } catch (URISyntaxException e
) {
89 countryVocabulary
= TermVocabulary
.NewInstance("Country", "Country", null, termSourceUri
);
90 countryVocabulary
.setUuid(UUID
.fromString("116c51f1-e63a-46f7-a258-e1149a42868b"));
91 Modifier newDummyModifier
= Modifier
.NewInstance("N/A", "N/A", null);
92 newDummyModifier
.setUuid(UUID
.fromString("761dddee-bfa2-41f4-82df-3a19c71adee0"));
93 countryVocabulary
.addTerm(newDummyModifier
);
94 CdmStore
.getService(IVocabularyService
.class).saveOrUpdate(countryVocabulary
);
95 conversation
.commit(true);
97 if (plantPartVocabulary
== null) {
98 monitor
.subTask("plantPartVocabulary empty");
99 URI termSourceUri
= null;
101 termSourceUri
= new URI("eu.etaxonomy.cdm.model.description.Modifier");
102 } catch (URISyntaxException e
) {
105 plantPartVocabulary
= TermVocabulary
.NewInstance("Plant Part", "Plant Part", null, termSourceUri
);
106 plantPartVocabulary
.setUuid(UUID
.fromString("369914fe-d54b-4063-99ce-abc81d30ad35"));
107 Modifier newDummyModifier
= Modifier
.NewInstance("N/A", "N/A", null);
108 newDummyModifier
.setUuid(UUID
.fromString("30150a82-a12f-4278-96ad-7ce708efa082"));
109 plantPartVocabulary
.addTerm(newDummyModifier
);
110 CdmStore
.getService(IVocabularyService
.class).saveOrUpdate(plantPartVocabulary
);
111 conversation
.commit(true);
113 if (humanGroupVocabulary
== null) {
114 monitor
.subTask("humanGroupVocabulary empty");
115 URI termSourceUri
= null;
117 termSourceUri
= new URI("eu.etaxonomy.cdm.model.description.Modifier");
118 } catch (URISyntaxException e
) {
121 humanGroupVocabulary
= TermVocabulary
.NewInstance("Human Group", "Human Group", null, termSourceUri
);
122 humanGroupVocabulary
.setUuid(UUID
.fromString("ca46cea5-bdf7-438d-9cd8-e2793d2178dc"));
123 Modifier newDummyModifier
= Modifier
.NewInstance("N/A", "N/A", null);
124 newDummyModifier
.setUuid(UUID
.fromString("c4b63327-2548-429d-8d55-81fdba5900a5"));
125 Modifier newSubDummyModifier
= Modifier
.NewInstance("N/A", "N/A", null);
126 newSubDummyModifier
.setUuid(UUID
.fromString("3ca851e5-d0d4-41cd-9066-f79e246c36c2"));
127 newDummyModifier
.addIncludes(newSubDummyModifier
);
128 humanGroupVocabulary
.addTerm(newDummyModifier
);
129 CdmStore
.getService(IVocabularyService
.class).saveOrUpdate(humanGroupVocabulary
);
130 conversation
.commit(true);
133 if(featureUseRecord
== null|| featureUseSummary
== null) {
134 TermVocabulary
<Feature
> featureVocabulary
= (TermVocabulary
<Feature
>)CdmStore
.getService(IVocabularyService
.class).find((UUID
.fromString("b187d555-f06f-4d65-9e53-da7c93f8eaa8")));
135 FeatureTree palmWebFeatureTree
= CdmStore
.getService(IFeatureTreeService
.class).find(UUID
.fromString("72ccce05-7cc8-4dab-8e47-bf3f5fd848a0"));
136 //List<FeatureTree> featureTrees = CdmStore.getService(IFeatureTreeService.class).list(FeatureTree.class, null, null, null, null);
138 if (featureUseRecord
== null ) {
139 featureUseRecord
= Feature
.NewInstance("Use Record", "Use Record", null);
140 featureUseRecord
.setUuid(UUID
.fromString("8125a59d-b4d5-4485-89ea-67306297b599"));
141 featureUseRecord
.isSupportsCategoricalData();
142 featureUseRecord
.setSupportsCategoricalData(true);
143 featureVocabulary
.addTerm(featureUseRecord
);
144 FeatureNode useRecFeatureNode
= FeatureNode
.NewInstance(featureUseRecord
);
145 palmWebFeatureTree
.getRoot().addChild(useRecFeatureNode
);
147 if (featureUseSummary
== null) {
148 featureUseSummary
= Feature
.NewInstance("Use", "Use", null);
149 featureUseSummary
.setUuid(UUID
.fromString("6acb0348-c070-4512-a37c-67bcac016279"));
150 featureUseSummary
.isSupportsTextData();
151 featureUseSummary
.setSupportsTextData(true);
152 //TermVocabulary<Feature> featureVocabulary = (TermVocabulary<Feature>)CdmStore.getService(IVocabularyService.class).find((UUID.fromString("b187d555-f06f-4d65-9e53-da7c93f8eaa8")));
153 featureVocabulary
.addTerm(featureUseSummary
);
154 FeatureNode useSumFeatureNode
= FeatureNode
.NewInstance(featureUseSummary
);
155 palmWebFeatureTree
.getRoot().addChild(useSumFeatureNode
);
158 CdmStore
.getService(IVocabularyService
.class).saveOrUpdate(featureVocabulary
);
159 CdmStore
.getService(IFeatureTreeService
.class).saveOrUpdate(palmWebFeatureTree
);
160 conversation
.commit(true);
163 //if(featureUseRecord == null || featureUseSummary == null) {
164 /*if(featureUseRecord == null) {
165 FeatureTree palmWebFeatureTree = CdmStore.getService(IFeatureTreeService.class).find(UUID.fromString("72ccce05-7cc8-4dab-8e47-bf3f5fd848a0"));
167 if (featureUseRecord == null ) {
168 featureUseRecord = Feature.NewInstance("Use Record", "Use Record", null);
169 featureUseRecord.setUuid(UUID.fromString("8125a59d-b4d5-4485-89ea-67306297b599"));
170 featureUseRecord.isSupportsCategoricalData();
171 featureUseRecord.setSupportsCategoricalData(true);
172 //TermVocabulary<Feature> featureVocabulary = (TermVocabulary<Feature>)CdmStore.getService(IVocabularyService.class).find((UUID.fromString("b187d555-f06f-4d65-9e53-da7c93f8eaa8")));
173 featureVocabulary.addTerm(featureUseRecord);
174 FeatureNode useRecFeatureNode = FeatureNode.NewInstance(featureUseRecord);
175 palmWebFeatureTree.getRoot().addChild(useRecFeatureNode);
176 CdmStore.getService(IVocabularyService.class).saveOrUpdate(featureVocabulary);
177 CdmStore.getService(IFeatureTreeService.class).saveOrUpdate(palmWebFeatureTree);
178 conversation.commit(true);
181 /*if (featureUseSummary == null) {
182 featureUseSummary = Feature.NewInstance("Use", "Use", null);
183 featureUseSummary.setUuid(UUID.fromString("6acb0348-c070-4512-a37c-67bcac016279"));
184 featureUseSummary.isSupportsTextData();
185 featureUseSummary.setSupportsTextData(true);
186 //TermVocabulary<Feature> featureVocabulary = (TermVocabulary<Feature>)CdmStore.getService(IVocabularyService.class).find((UUID.fromString("b187d555-f06f-4d65-9e53-da7c93f8eaa8")));
187 featureVocabulary.addTerm(featureUseSummary);
188 FeatureNode useSumFeatureNode = FeatureNode.NewInstance(featureUseSummary);
189 palmWebFeatureTree.getRoot().addChild(useSumFeatureNode);
190 CdmStore.getService(IVocabularyService.class).saveOrUpdate(featureVocabulary);
191 CdmStore.getService(IFeatureTreeService.class).saveOrUpdate(palmWebFeatureTree);
192 conversation.commit(true);
195 //FeatureTree palmWebFeatureTree = CdmStore.getService(IFeatureTreeService.class).find(UUID.fromString("72ccce05-7cc8-4dab-8e47-bf3f5fd848a0"));
196 //List<FeatureTree> featureTrees = CdmStore.getService(IFeatureTreeService.class).list(FeatureTree.class, null, null, null, null);
197 //FeatureNode useRecFeatureNode = FeatureNode.NewInstance(featureUseRecord);
199 //palmWebFeatureTree.getRoot().addChild(useRecFeatureNode);
204 conversation
.close();