mirror of
https://github.com/Athou/commafeed.git
synced 2026-03-21 21:37:29 +00:00
process timestamps at build time
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
package com.commafeed.frontend.resources;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.Reader;
|
||||
import java.io.Writer;
|
||||
import java.util.Calendar;
|
||||
|
||||
import org.apache.commons.io.IOUtils;
|
||||
|
||||
import ro.isdc.wro.model.resource.Resource;
|
||||
import ro.isdc.wro.model.resource.ResourceType;
|
||||
import ro.isdc.wro.model.resource.SupportedResourceType;
|
||||
import ro.isdc.wro.model.resource.processor.ResourcePreProcessor;
|
||||
|
||||
@SupportedResourceType(ResourceType.JS)
|
||||
public class TimestampProcessor implements ResourcePreProcessor {
|
||||
|
||||
private static final String NOW = ""
|
||||
+ Calendar.getInstance().getTimeInMillis();
|
||||
|
||||
@Override
|
||||
public void process(Resource resource, Reader reader, Writer writer)
|
||||
throws IOException {
|
||||
String content = IOUtils.toString(reader);
|
||||
content = content.replace("${timestamp}", NOW);
|
||||
writer.write(content);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -12,13 +12,14 @@ import com.google.api.client.util.Maps;
|
||||
* Build-time solution
|
||||
*
|
||||
*/
|
||||
public class WroSassProvider implements ProcessorProvider {
|
||||
public class WroAdditionalProvider implements ProcessorProvider {
|
||||
|
||||
@Override
|
||||
public Map<String, ResourcePreProcessor> providePreProcessors() {
|
||||
Map<String, ResourcePreProcessor> map = Maps.newHashMap();
|
||||
map.put("sassOnlyProcessor", new SassOnlyProcessor());
|
||||
map.put("sassImport", new SassImportProcessor());
|
||||
map.put("timestamp", new TimestampProcessor());
|
||||
return map;
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ public class WroManagerFactory extends ConfigurableWroManagerFactory {
|
||||
protected void contributePreProcessors(Map<String, ResourcePreProcessor> map) {
|
||||
map.put("sassOnlyProcessor", new SassOnlyProcessor());
|
||||
map.put("sassImport", new SassImportProcessor());
|
||||
map.put("timestamp", new TimestampProcessor());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user