}
}
// Archive
if(mapping.hasArchive() && res.getResourceProvider() instanceof CompressResourceProvider) {
Resource archive = mapping.getArchive();
CompressResource cr = ((CompressResource) res);
if(archive.equals(cr.getCompressResource())) {
return mapping.getPageSource(cr.getCompressPath());
}
}
}
}
// config mappings
for(int i=0;i<this.mappings.length;i++) {
mapping = this.mappings[i];
// Physical
if(mapping.hasPhysical()) {
path=ResourceUtil.getPathToChild(res, mapping.getPhysical());
if(path!=null) {
return mapping.getPageSource(path);
}
}
// Archive
if(mapping.hasArchive() && res.getResourceProvider() instanceof CompressResourceProvider) {
Resource archive = mapping.getArchive();
CompressResource cr = ((CompressResource) res);
if(archive.equals(cr.getCompressResource())) {
return mapping.getPageSource(cr.getCompressPath());
}
}
}
// map resource to root mapping when same filesystem