Author: nbelaevski
Date: 2011-02-17 09:55:54 -0500 (Thu, 17 Feb 2011)
New Revision: 21733
Modified:
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/ProcessMojo.java
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/resource/util/ResourceUtil.java
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/resource/writer/impl/ResourceWriterImpl.java
Log:
https://issues.jboss.org/browse/RF-9124
Modified:
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/ProcessMojo.java
===================================================================
---
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/ProcessMojo.java 2011-02-17
14:42:38 UTC (rev 21732)
+++
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/ProcessMojo.java 2011-02-17
14:55:54 UTC (rev 21733)
@@ -103,6 +103,12 @@
};
};
+ private static final Function<Resource, String> RESOURCE_QUALIFIER_FUNCTION =
new Function<Resource, String>() {
+ public String apply(Resource from) {
+ return ResourceUtil.getResourceQualifier(from);
+ };
+ };
+
private final Function<String, URL> filePathToURL = new Function<String,
URL>() {
public URL apply(String from) {
try {
@@ -150,6 +156,16 @@
/**
* @parameter
*/
+ private List<String> includedFiles;
+
+ /**
+ * @parameter
+ */
+ private List<String> excludedFiles;
+
+ /**
+ * @parameter
+ */
// TODO review usage of properties?
private FileNameMapping[] fileNameMappings = new FileNameMapping[0];
@@ -192,9 +208,16 @@
}
private Predicate<Resource> createResourcesFilter() {
+ Predicate<CharSequence> qualifierPredicate =
MorePredicates.compose(includedFiles,
+ excludedFiles, REGEX_CONTAINS_BUILDER_FUNCTION);
+
+ Predicate<Resource> qualifierResourcePredicate =
Predicates.compose(qualifierPredicate, RESOURCE_QUALIFIER_FUNCTION);
+
Predicate<CharSequence> contentTypePredicate =
MorePredicates.compose(includedContentTypes,
excludedContentTypes, REGEX_CONTAINS_BUILDER_FUNCTION);
- return Predicates.compose(contentTypePredicate, CONTENT_TYPE_FUNCTION);
+ Predicate<Resource> contentTypeResourcePredicate =
Predicates.compose(contentTypePredicate, CONTENT_TYPE_FUNCTION);
+
+ return Predicates.and(qualifierResourcePredicate, contentTypeResourcePredicate);
}
private URL resolveWebRoot() throws MalformedURLException {
Modified:
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/resource/util/ResourceUtil.java
===================================================================
---
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/resource/util/ResourceUtil.java 2011-02-17
14:42:38 UTC (rev 21732)
+++
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/resource/util/ResourceUtil.java 2011-02-17
14:55:54 UTC (rev 21733)
@@ -21,6 +21,7 @@
*/
package org.richfaces.cdk.resource.util;
+import static org.richfaces.cdk.strings.Constants.COLON_JOINER;
import static org.richfaces.cdk.strings.Constants.DOT_JOINER;
import java.io.IOException;
@@ -31,6 +32,8 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+import javax.faces.application.Resource;
+
import org.richfaces.cdk.vfs.VFSRoot;
import org.richfaces.cdk.vfs.VirtualFile;
@@ -144,4 +147,9 @@
return result;
}
+
+ public static String getResourceQualifier(Resource resource) {
+ return COLON_JOINER.join(resource.getLibraryName(), resource.getResourceName());
+ }
+
}
Modified:
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/resource/writer/impl/ResourceWriterImpl.java
===================================================================
---
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/resource/writer/impl/ResourceWriterImpl.java 2011-02-17
14:42:38 UTC (rev 21732)
+++
trunk/cdk/maven-resources-plugin/src/main/java/org/richfaces/cdk/resource/writer/impl/ResourceWriterImpl.java 2011-02-17
14:55:54 UTC (rev 21733)
@@ -21,8 +21,6 @@
*/
package org.richfaces.cdk.resource.writer.impl;
-import static org.richfaces.cdk.strings.Constants.COLON_JOINER;
-
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
@@ -36,6 +34,7 @@
import org.apache.maven.plugin.logging.Log;
import org.richfaces.cdk.ResourceWriter;
+import org.richfaces.cdk.resource.util.ResourceUtil;
import org.richfaces.cdk.resource.writer.ResourceProcessor;
import org.richfaces.cdk.strings.Constants;
import org.richfaces.resource.ResourceFactory;
@@ -91,10 +90,6 @@
currentTime = System.currentTimeMillis();
}
- private String getResourceQualifier(Resource resource) {
- return COLON_JOINER.join(resource.getLibraryName(), resource.getResourceName());
- }
-
private synchronized File createOutputFile(String path) throws IOException {
File outFile = new File(resourceContentsDir, path);
outFile.getParentFile().mkdirs();
@@ -133,7 +128,7 @@
File outFile = createOutputFile(requestPathWithSkin);
matchingProcessor.process(requestPathWithSkin, new
ResourceInputStreamSupplier(resource), Files.newOutputStreamSupplier(outFile));
- processedResources.put(getResourceQualifier(resource), requestPath);
+ processedResources.put(ResourceUtil.getResourceQualifier(resource),
requestPath);
}
@Override