Author: jeremy
Date: Sat Nov 6 05:38:12 2004
New Revision: 56763
Modified:
cocoon/branches/BRANCH_2_1_X/src/blocks/cron/java/org/apache/cocoon/components/cron/CocoonPipelineCronJob.java
Log:
Adding implementation of ConfigurableCronJob so that this can be parameterised
on the fly from FlowScript.
Modified:
cocoon/branches/BRANCH_2_1_X/src/blocks/cron/java/org/apache/cocoon/components/cron/CocoonPipelineCronJob.java
==============================================================================
---
cocoon/branches/BRANCH_2_1_X/src/blocks/cron/java/org/apache/cocoon/components/cron/CocoonPipelineCronJob.java
(original)
+++
cocoon/branches/BRANCH_2_1_X/src/blocks/cron/java/org/apache/cocoon/components/cron/CocoonPipelineCronJob.java
Sat Nov 6 05:38:12 2004
@@ -19,12 +19,14 @@
import org.apache.avalon.framework.configuration.Configurable;
import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.configuration.ConfigurationException;
+import org.apache.avalon.framework.parameters.Parameters;
import org.apache.excalibur.source.Source;
import org.apache.excalibur.source.SourceResolver;
import java.io.InputStream;
import java.io.InputStreamReader;
+import java.util.Map;
/**
* A simple CronJob which calls an internal cocoon:// pipeline.
@@ -41,9 +43,9 @@
* @since 2.1.5
*/
public class CocoonPipelineCronJob extends ServiceableCronJob
- implements Configurable {
+ implements Configurable,
ConfigurableCronJob {
- private static final String CONFIG_FILE_PARAM = "pipeline";
+ public static final String PIPELINE_PARAM = "pipeline";
private String pipeline;
@@ -84,9 +86,15 @@
}
public void configure(final Configuration config) throws
ConfigurationException {
- this.pipeline =
config.getChild(CONFIG_FILE_PARAM).getValue(null);
- if (this.pipeline == null) {
- throw new ConfigurationException("CocoonPipelineCronJob
has no pipeline configured.");
+ this.pipeline =
config.getChild(PIPELINE_PARAM).getValue("samples/hello-world/hello.xhtml");
+ }
+
+ /* (non-Javadoc)
+ * @see
org.apache.cocoon.components.cron.ConfigurableCronJob#setup(org.apache.avalon.framework.parameters.Parameters,
java.util.Map)
+ */
+ public void setup(Parameters params, Map objects) {
+ if (null != params) {
+ pipeline = params.getParameter(PIPELINE_PARAM,
pipeline);
}
}
}