comparison flys-artifacts/src/main/java/de/intevation/flys/collections/FLYSArtifactCollection.java @ 1744:62efd1288e34

Fix setting of masterartifact in flyscollections. flys-artifacts/trunk@3038 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Wed, 19 Oct 2011 16:04:40 +0000
parents defe2cfeefa5
children d2a17e990c70
comparison
equal deleted inserted replaced
1743:8a2cbf947395 1744:62efd1288e34
56 56
57 public static final String XPATH_OUT_NAME = "/art:action/@art:name"; 57 public static final String XPATH_OUT_NAME = "/art:action/@art:name";
58 58
59 public static final String XPATH_OUT_TYPE = "/art:action/@art:type"; 59 public static final String XPATH_OUT_TYPE = "/art:action/@art:type";
60 60
61 public static final String XPATH_MASTER_UUID = "/art:artifact-collection/art:artifact/@art:uuid";
62
61 public static final String XPATH_LOADED_RECOMMENDATIONS = 63 public static final String XPATH_LOADED_RECOMMENDATIONS =
62 "/art:attribute/art:loaded-recommendations"; 64 "/art:attribute/art:loaded-recommendations";
63
64 65
65 66
66 /** 67 /**
67 * Return description Document for this collection. 68 * Return description Document for this collection.
68 */ 69 */
215 return; 216 return;
216 } 217 }
217 218
218 generator.init(format, out, context); 219 generator.init(format, out, context);
219 220
220 // TODO Determine the correct master artifact here! 221 // Get master artifact.
222 try{
223 ArtifactDatabase db = context.getDatabase();
224 CallMeta callMeta = context.getMeta();
225 Document document =
226 db.getCollectionsMasterArtifact(identifier(), callMeta);
227
228 //log.debug(XMLUtils.toString(document));
229
230 String masterUUID = XMLUtils.xpathString(
231 document, XPATH_MASTER_UUID, ArtifactNamespaceContext.INSTANCE);
232
233 log.error("Will set master Artifact to uuid: " + masterUUID);
234 generator.setMasterArtifact(getArtifact(masterUUID, context));
235 } catch (ArtifactDatabaseException adb) {
236 log.error(adb, adb);
237 }
221 238
222 try { 239 try {
223 Document attr = getAttribute(context, name); 240 Document attr = getAttribute(context, name);
224 doOut(generator, name, subtype, attr, context); 241 doOut(generator, name, subtype, attr, context);
225 } 242 }
275 if (outName.equals("export") && !facetName.equals(facet)) { 292 if (outName.equals("export") && !facetName.equals(facet)) {
276 continue; 293 continue;
277 } 294 }
278 295
279 Artifact artifact = getArtifact(art, context); 296 Artifact artifact = getArtifact(art, context);
280 if (i == 0) {
281 generator.setMasterArtifact(artifact);
282 }
283 297
284 generator.doOut( 298 generator.doOut(
285 artifact, 299 artifact,
286 theme, 300 theme,
287 getFacetThemeFromAttribute( 301 getFacetThemeFromAttribute(

http://dive4elements.wald.intevation.org