sylvain 2003/11/20 07:31:29
Modified:src/java/org/apache/cocoon/components/flow
AbstractInterpreter.java
src/java/org/apache/cocoon/components/flow/javascript/fom
FOM_Cocoon.java FOM_JavaScriptInterpreter.java
Log:
Adding cocoon.setup() to setup java objects using IOC style
Revision ChangesPath
1.11 +19 -3
cocoon-2.1/src/java/org/apache/cocoon/components/flow/AbstractInterpreter.java
Index: AbstractInterpreter.java
===
RCS file:
/home/cvs/cocoon-2.1/src/java/org/apache/cocoon/components/flow/AbstractInterpreter.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- AbstractInterpreter.java 15 Oct 2003 17:02:05 - 1.10
+++ AbstractInterpreter.java 20 Nov 2003 15:31:29 - 1.11
@@ -56,6 +56,9 @@
import org.apache.avalon.framework.context.ContextException;
import org.apache.avalon.framework.context.Contextualizable;
import org.apache.avalon.framework.logger.AbstractLogEnabled;
+import org.apache.avalon.framework.service.ServiceException;
+import org.apache.avalon.framework.service.ServiceManager;
+import org.apache.avalon.framework.service.Serviceable;
import org.apache.avalon.framework.thread.SingleThreaded;
import org.apache.cocoon.Constants;
import org.apache.cocoon.Processor;
@@ -82,9 +85,11 @@
* @version CVS $Id$
*/
public abstract class AbstractInterpreter extends AbstractLogEnabled
- implements Component, Composable, Contextualizable, Interpreter,
+ implements Component, Composable, Serviceable, Contextualizable,
Interpreter,
SingleThreaded, Configurable, Disposable
{
+protected org.apache.avalon.framework.context.Context avalonContext;
+
/**
* List of source locations that need to be resolved.
*/
@@ -92,6 +97,7 @@
protected org.apache.cocoon.environment.Context context;
protected ComponentManager manager;
+protected ServiceManager serviceManager;
protected ContinuationsManager continuationsMgr;
/**
@@ -116,11 +122,21 @@
*/
public void compose(ComponentManager manager) throws ComponentException {
this.manager = manager;
-this.continuationsMgr =
(ContinuationsManager)manager.lookup(ContinuationsManager.ROLE);
+//mpved below in service()
+//this.continuationsMgr =
(ContinuationsManager)manager.lookup(ContinuationsManager.ROLE);
+}
+
+/**
+ * Serviceable
+ */
+public void service(ServiceManager sm) throws ServiceException {
+this.serviceManager = sm;
+this.continuationsMgr =
(ContinuationsManager)sm.lookup(ContinuationsManager.ROLE);
}
public void contextualize(org.apache.avalon.framework.context.Context
context)
throws ContextException{
+this.avalonContext = context;
this.context =
(Context)context.get(Constants.CONTEXT_ENVIRONMENT_CONTEXT);
}
1.18 +42 -3
cocoon-2.1/src/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java
Index: FOM_Cocoon.java
===
RCS file:
/home/cvs/cocoon-2.1/src/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- FOM_Cocoon.java 14 Nov 2003 18:58:18 - 1.17
+++ FOM_Cocoon.java 20 Nov 2003 15:31:29 - 1.18
@@ -62,6 +62,8 @@
import org.apache.avalon.framework.component.Component;
import org.apache.avalon.framework.component.ComponentManager;
import org.apache.avalon.framework.logger.Logger;
+import org.apache.avalon.framework.service.ServiceManager;
+import org.apache.cocoon.components.LifecycleHelper;
import org.apache.cocoon.components.flow.ContinuationsManager;
import org.apache.cocoon.components.flow.WebContinuation;
import org.apache.cocoon.components.flow.Interpreter.Argument;
@@ -92,6 +94,10 @@
*/
public class FOM_Cocoon extends ScriptableObject {
+private org.apache.avalon.framework.context.Context avalonContext;
+
+private ServiceManager serviceManager;
+
private FOM_JavaScriptInterpreter interpreter;
private Environment environment;
@@ -126,10 +132,14 @@
void setup(FOM_JavaScriptInterpreter interp,
Environment env,
ComponentManager manager,
+ ServiceManager serviceManager,
+ org.apache.avalon.framework.context.Context avalonContext,
Logger logger) {
this.interpreter = interp;
this.environment = env;
this.componentManager = manager;
+this.serviceManager = serviceManager;
+this.avalonContext =