Changeset 6135
- Timestamp:
- 02/03/12 17:20:55 (4 months ago)
- Location:
- trunk/pustefix-core/src/main/java/de/schlund/pfixxml
- Files:
-
- 6 modified
-
IncludeDocumentExtension.java (modified) (6 diffs)
-
targets/Themes.java (modified) (2 diffs)
-
util/Xslt.java (modified) (2 diffs)
-
util/XsltContext.java (modified) (2 diffs)
-
util/xsltimpl/XsltContextSaxon1.java (modified) (2 diffs)
-
util/xsltimpl/XsltContextSaxon2.java (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/pustefix-core/src/main/java/de/schlund/pfixxml/IncludeDocumentExtension.java
r6114 r6135 28 28 29 29 import javax.xml.transform.TransformerException; 30 import javax.xml.transform.URIResolver; 30 31 31 32 import org.apache.log4j.Logger; … … 40 41 import de.schlund.pfixxml.resources.ResourceProviderRegistry; 41 42 import de.schlund.pfixxml.resources.ResourceUtil; 43 import de.schlund.pfixxml.targets.Target; 42 44 import de.schlund.pfixxml.targets.TargetGenerator; 43 45 import de.schlund.pfixxml.targets.VirtualTarget; … … 46 48 import de.schlund.pfixxml.util.XPath; 47 49 import de.schlund.pfixxml.util.Xml; 50 import de.schlund.pfixxml.util.Xslt.ResourceResolver; 48 51 import de.schlund.pfixxml.util.XsltContext; 49 52 … … 139 142 140 143 String[] themes = targetgen.getGlobalThemes().getThemesArr(); 141 if (!targetkey.equals(NOTARGET)) { 144 if(targetkey.equals(NOTARGET)) { 145 Target parentTarget = getParentTarget(context); 146 if(parentTarget != null && parentTarget.getThemes() != null && !parentTarget.getThemes().isEmpty()) { 147 themes = parentTarget.getThemes().getThemesArr(); 148 } 149 } else { 142 150 themes = target.getThemes().getThemesArr(); 143 151 } … … 356 364 357 365 String[] themes = targetgen.getGlobalThemes().getThemesArr(); 358 if (!targetkey.equals(NOTARGET)) { 366 if(targetkey.equals(NOTARGET)) { 367 Target parentTarget = getParentTarget(context); 368 if(parentTarget != null && parentTarget.getThemes() != null && !parentTarget.getThemes().isEmpty()) { 369 themes = parentTarget.getThemes().getThemesArr(); 370 } 371 } else { 359 372 themes = target.getThemes().getThemesArr(); 360 373 } … … 450 463 return ""; 451 464 } 465 466 private static Target getParentTarget(XsltContext context) { 467 URIResolver resolver = context.getURIResolver(); 468 if(resolver != null && resolver instanceof ResourceResolver) { 469 ResourceResolver resResolver = (ResourceResolver)resolver; 470 return resResolver.getParentTarget(); 471 } 472 return null; 473 } 452 474 453 475 public static boolean isIncludeDocument(XsltContext context) { -
trunk/pustefix-core/src/main/java/de/schlund/pfixxml/targets/Themes.java
r4517 r6135 33 33 */ 34 34 public class Themes { 35 35 36 ArrayList<String> themes; 36 37 String id; … … 82 83 return (String[]) themes.toArray(new String[]{}); 83 84 } 85 86 public boolean isEmpty() { 87 return themes.isEmpty(); 88 } 84 89 85 90 @Override -
trunk/pustefix-core/src/main/java/de/schlund/pfixxml/util/Xslt.java
r5815 r6135 252 252 253 253 254 static class ResourceResolver implements URIResolver {254 public static class ResourceResolver implements URIResolver { 255 255 256 256 private TargetImpl parent; … … 264 264 } 265 265 266 public Target getParentTarget() { 267 return parent; 268 } 269 266 270 /** 267 271 * Resolve file url relative to root. Before searching the file system, check -
trunk/pustefix-core/src/main/java/de/schlund/pfixxml/util/XsltContext.java
r4517 r6135 19 19 package de.schlund.pfixxml.util; 20 20 21 import javax.xml.transform.URIResolver; 22 21 23 /** 22 24 * @author mleidig@schlund.de … … 27 29 public String getDocumentElementName(); 28 30 public XsltVersion getXsltVersion(); 29 31 public URIResolver getURIResolver(); 30 32 } -
trunk/pustefix-core/src/main/java/de/schlund/pfixxml/util/xsltimpl/XsltContextSaxon1.java
r4517 r6135 18 18 19 19 package de.schlund.pfixxml.util.xsltimpl; 20 21 import javax.xml.transform.URIResolver; 20 22 21 23 import org.w3c.dom.Document; … … 52 54 } 53 55 56 public URIResolver getURIResolver() { 57 return context.getController().getURIResolver(); 58 } 59 54 60 } -
trunk/pustefix-core/src/main/java/de/schlund/pfixxml/util/xsltimpl/XsltContextSaxon2.java
r4517 r6135 18 18 19 19 package de.schlund.pfixxml.util.xsltimpl; 20 21 import javax.xml.transform.URIResolver; 20 22 21 23 import net.sf.saxon.expr.XPathContext; … … 49 51 } 50 52 53 public URIResolver getURIResolver() { 54 return context.getController().getURIResolver(); 55 } 56 51 57 }
