Revision 1991 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/resourcesstorage/FilesResourcesStorage.java

View differences:

FilesResourcesStorage.java
8 8
import java.io.OutputStream;
9 9
import java.net.MalformedURLException;
10 10
import java.net.URL;
11
import java.util.ArrayList;
12
import java.util.List;
11 13
import org.apache.commons.io.IOUtils;
12 14
import org.gvsig.tools.util.HasAFile;
13 15

  
......
115 117

  
116 118
    }
117 119

  
118
    private final String fullPathName;
120
    private final List<String> resourcesPaths;
119 121

  
120 122
    public FilesResourcesStorage(String fullPathName) {
121
        this.fullPathName = fullPathName;
123
        this.resourcesPaths = new ArrayList<>();
124
        this.resourcesPaths.add(fullPathName);
122 125
    }
123 126

  
124 127
    @Override
128
    public String getSeparator() {
129
        return ".";
130
    }
131

  
132
    @Override
125 133
    public Resource getResource(String resourceName) {
126
        File folder = new File(this.fullPathName);
127
        if( folder.isDirectory() ) {
128
            File fres = new File(folder,resourceName);
129
            return new FileResource(fres);
134
        File fres;
135
        for (String pathName : resourcesPaths) {
136
            File folder = new File(pathName);
137
            if( folder.isDirectory() ) {
138
                fres = new File(folder,resourceName);
139
            } else {
140
                fres = new File(pathName + this.getSeparator() + resourceName);
141
            }
142
            if( fres.exists() ) {
143
                return new FileResource(fres);
144
            }
130 145
        }
131
        return new FileResource(new File(fullPathName + "." + resourceName));
146
        String pathName = this.resourcesPaths.get(0);
147
        fres = new File(pathName + this.getSeparator() + resourceName);
148
        return new FileResource(fres);
132 149
    }
133 150

  
151
    public List<String> getPaths() {
152
        return this.resourcesPaths;
153
    }
134 154
}

Also available in: Unified diff