Changeset 5326

Show
Ignore:
Timestamp:
08/30/10 00:30:11 (18 months ago)
Author:
mtld
Message:

added config-include support for modules

Location:
branches/release-0.15.x
Files:
3 added
8 modified

Legend:

Unmodified
Added
Removed
  • branches/release-0.15.x/pustefix-core/src/main/java/de/schlund/pfixcore/workflow/Navigation.java

    r4517 r5326  
    4949import de.schlund.pfixxml.config.includes.IncludesResolver; 
    5050import de.schlund.pfixxml.resources.FileResource; 
     51import de.schlund.pfixxml.resources.Resource; 
    5152import de.schlund.pfixxml.util.TransformerHandlerAdapter; 
    5253import de.schlund.pfixxml.util.XPath; 
     
    5859    private Map<String, NavigationElement> pagetonavi; 
    5960     
    60     private Set<FileResource> fileDependencies = new HashSet<FileResource>(); 
     61    private Set<Resource> fileDependencies = new HashSet<Resource>(); 
    6162    private long loadTime = 0; 
    6263     
     
    116117     
    117118    public boolean needsReload() { 
    118         for (FileResource file : fileDependencies) { 
     119        for (Resource file : fileDependencies) { 
    119120            long lastModified = file.lastModified(); 
    120121            if (lastModified > loadTime) { 
  • branches/release-0.15.x/pustefix-core/src/main/java/de/schlund/pfixxml/config/includes/FileIncludeEvent.java

    r4512 r5326  
    2121import java.util.EventObject; 
    2222 
    23 import de.schlund.pfixxml.resources.FileResource; 
     23import de.schlund.pfixxml.resources.Resource; 
    2424 
    2525public class FileIncludeEvent extends EventObject { 
    2626    private static final long serialVersionUID = -3702684169219524940L; 
    27     private FileResource includedFile; 
     27    private Resource includedFile; 
    2828 
    29     protected FileIncludeEvent(Object source, FileResource file) { 
     29    protected FileIncludeEvent(Object source, Resource file) { 
    3030        super(source); 
    3131        this.includedFile = file; 
    3232    } 
    3333     
    34     public FileResource getIncludedFile() { 
     34    public Resource getIncludedFile() { 
    3535        return includedFile; 
    3636    } 
  • branches/release-0.15.x/pustefix-core/src/main/java/de/schlund/pfixxml/config/includes/IncludesResolver.java

    r5108 r5326  
    3838import com.marsching.flexiparse.util.DOMBasedNamespaceContext; 
    3939 
    40 import de.schlund.pfixxml.resources.FileResource; 
     40import de.schlund.pfixxml.resources.Resource; 
    4141import de.schlund.pfixxml.resources.ResourceUtil; 
    4242import de.schlund.pfixxml.util.Generics; 
     
    117117            } 
    118118 
     119            String module = elem.getAttribute("module"); 
     120            if(module.equals("")) module = null; 
     121             
    119122            String filepath = elem.getAttribute("file"); 
    120123            if (filepath == null) { 
    121124                throw new SAXException("The attribute \"file\" must be set for the include tag!"); 
    122125            } 
     126            if(module != null) { 
     127                if(filepath.startsWith("/")) filepath = filepath.substring(1); 
     128                filepath = "module://" + module + "/" + filepath; 
     129            } 
     130             
    123131 
    124132            // Look if the same include has been performed ealier in the recursion 
     
    133141            } 
    134142             
    135             FileResource includeFile = ResourceUtil.getFileResourceFromDocroot(filepath); 
     143            Resource includeFile = ResourceUtil.getResource(filepath); 
    136144            Document includeDocument; 
    137145            try { 
     146                System.out.println(">>>>>>>>>>>> PARSE: "+includeFile.toString()); 
    138147                includeDocument = Xml.parseMutable(includeFile); 
    139148            } catch (IOException e) { 
     
    164173                Node node = includeNodes.item(i); 
    165174                Node newNode = doc.importNode(node, true); 
     175                if(module != null) { 
     176                        newNode.setUserData("module", module, null); 
     177                } 
    166178                elem.getParentNode().insertBefore(newNode, elem); 
    167179            } 
  • branches/release-0.15.x/pustefix-core/src/main/java/de/schlund/pfixxml/targets/TargetGenerator.java

    r5100 r5326  
    102102    private long config_mtime = 0; 
    103103 
    104     private Set<FileResource> configFileDependencies = new HashSet<FileResource>(); 
     104    private Set<Resource> configFileDependencies = new HashSet<Resource>(); 
    105105 
    106106    private String name; 
     
    234234 
    235235    private boolean needsReload() { 
    236         for (FileResource file : configFileDependencies) { 
     236        for (Resource file : configFileDependencies) { 
    237237            if (file.lastModified() > config_mtime) { 
    238238                return true; 
     
    244244    protected long getConfigMaxModTime() { 
    245245        long tmptime = -1; 
    246         for (FileResource file: configFileDependencies) { 
     246        for (Resource file: configFileDependencies) { 
    247247            tmptime = Math.max(file.lastModified(), tmptime); 
    248248        } 
  • branches/release-0.15.x/pustefix-core/src/main/java/de/schlund/pfixxml/util/Xml.java

    r5063 r5326  
    210210     
    211211    public static Document parseMutable(Resource res) throws IOException, SAXException { 
    212         return parseMutable(new InputSource(res.toURI().toString())); 
     212        InputSource is = new InputSource(); 
     213        is.setSystemId(res.toURI().toString()); 
     214        is.setByteStream(res.getInputStream()); 
     215        return parseMutable(is); 
    213216    } 
    214217     
  • branches/release-0.15.x/pustefix-samples/pustefix-sample1/src/main/webapp/WEB-INF/config.conf.xml

    r5209 r5326  
    245245 
    246246  <config-include file="WEB-INF/fragments.xml" section="pagerequests" /> 
     247  <config-include file="conf/fragments.xml" section="pagerequests" module="animal-module"/> 
    247248 
    248249  <!-- <properties> --> 
  • branches/release-0.15.x/pustefix-samples/pustefix-sample1/src/main/webapp/WEB-INF/depend.xml

    r5111 r5326  
    3333 
    3434    <config-include file="WEB-INF/fragments.xml" section="navigation"/> 
     35    <config-include file="conf/fragments.xml" section="navigation" module="animal-module"/> 
    3536 
    3637  </navigation> 
     
    7172 
    7273  <config-include file="WEB-INF/fragments.xml" section="targets"/> 
     74  <config-include file="conf/fragments.xml" section="targets" module="animal-module"/> 
    7375 
    7476  <standardpage master="var1" metatags="var1" name="home"     xml="xml/one_frame_navi.xml"/> 
  • branches/release-0.15.x/pustefix-samples/pustefix-sample1/src/main/webapp/WEB-INF/fragments.xml

    r5113 r5326  
    1 <?xml version="1.0"?> 
     1<?xml version="1.0" encoding="UTF-8"?> 
    22<fr:config-fragments  
    33  xmlns:fr="http://www.pustefix-framework.org/2008/namespace/config-fragments"