Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/CrossSectionArtifact.java @ 3556:afc7bfb4800b
Use the new infrastructure to figure out if a facet should
be initially active or not.
flys-artifacts/trunk@5152 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Sun, 29 Jul 2012 11:04:06 +0000 |
parents | b0ba96bbf01d |
children | c3cd414982fe |
comparison
equal
deleted
inserted
replaced
3555:b1912514e0f5 | 3556:afc7bfb4800b |
---|---|
22 import de.intevation.flys.artifacts.model.CrossSectionFactory; | 22 import de.intevation.flys.artifacts.model.CrossSectionFactory; |
23 | 23 |
24 import de.intevation.flys.artifacts.states.StaticState; | 24 import de.intevation.flys.artifacts.states.StaticState; |
25 | 25 |
26 import de.intevation.artifactdatabase.state.Facet; | 26 import de.intevation.artifactdatabase.state.Facet; |
27 import de.intevation.artifactdatabase.state.FacetActivity; | |
27 import de.intevation.artifactdatabase.state.State; | 28 import de.intevation.artifactdatabase.state.State; |
28 | 29 |
29 import de.intevation.flys.utils.FLYSUtils; | 30 import de.intevation.flys.utils.FLYSUtils; |
30 | 31 |
31 import de.intevation.flys.artifacts.services.CrossSectionKMService; | 32 import de.intevation.flys.artifacts.services.CrossSectionKMService; |
62 | 63 |
63 /** Own logger. */ | 64 /** Own logger. */ |
64 private static final Logger logger = | 65 private static final Logger logger = |
65 Logger.getLogger(CrossSectionArtifact.class); | 66 Logger.getLogger(CrossSectionArtifact.class); |
66 | 67 |
68 static { | |
69 // TODO: Move to configuration. | |
70 FacetActivity.Registry.getInstance().register( | |
71 CS_ARTIFACT_NAME, | |
72 new FacetActivity() { | |
73 @Override | |
74 public boolean isInitialActive( | |
75 Artifact artifact, | |
76 Facet facet, | |
77 String outputName | |
78 ) { | |
79 if (artifact instanceof FLYSArtifact) { | |
80 FLYSArtifact flys = (FLYSArtifact)artifact; | |
81 String data = flys.getDataAsString(DATA_IS_NEWEST); | |
82 return data != null && data.equals("1"); | |
83 } | |
84 return false; | |
85 } | |
86 }); | |
87 } | |
67 | 88 |
68 /** Return given name. */ | 89 /** Return given name. */ |
69 @Override | 90 @Override |
70 public String getName() { | 91 public String getName() { |
71 return CS_ARTIFACT_NAME; | 92 return CS_ARTIFACT_NAME; |
318 addStringData(DATA_NEXT_KM, nextKm.toString()); | 339 addStringData(DATA_NEXT_KM, nextKm.toString()); |
319 | 340 |
320 return FastCrossSectionLineFactory | 341 return FastCrossSectionLineFactory |
321 .getCrossSectionLine(crossSection, km); | 342 .getCrossSectionLine(crossSection, km); |
322 } | 343 } |
323 | |
324 | |
325 /** | |
326 * Determines Facets initial disposition regarding activity (think of | |
327 * selection in Client ThemeList GUI). This will be checked one time | |
328 * when the facet enters a collections describe document. | |
329 * | |
330 * @param outputName Ignored. | |
331 * @param facetName Ignored. | |
332 * @param index Ignored. | |
333 * @return 0 if not active | |
334 */ | |
335 @Override | |
336 public int getInitialFacetActivity(String outputName, String facetName, int index) { | |
337 return (getDataAsString(DATA_IS_NEWEST) != null | |
338 && getDataAsString(DATA_IS_NEWEST).equals("1")) ? 1 : 0; | |
339 } | |
340 } | 344 } |
341 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 345 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |