You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2003/10/15 16:12:45 UTC
cvs commit: cocoon-2.1/src/webapp/samples/flow/jxcalc sitemap.xmap
cziegeler 2003/10/15 07:12:45
Modified: src/java/org/apache/cocoon/generation
JXTemplateGenerator.java
src/webapp sitemap.xmap
src/webapp/samples/flow/jxcalc sitemap.xmap
Log:
Minor code cleanup
Adding JXTemplateGenerator to main sitemap
Revision Changes Path
1.12 +25 -36 cocoon-2.1/src/java/org/apache/cocoon/generation/JXTemplateGenerator.java
Index: JXTemplateGenerator.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/java/org/apache/cocoon/generation/JXTemplateGenerator.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- JXTemplateGenerator.java 11 Oct 2003 01:32:53 -0000 1.11
+++ JXTemplateGenerator.java 15 Oct 2003 14:12:45 -0000 1.12
@@ -1,4 +1,4 @@
-/* -*- Mode: java; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+/*
============================================================================
The Apache Software License, Version 1.1
@@ -412,7 +412,7 @@
result = ScriptRuntime.call(cx, result, thisObj,
newArgs, scope);
if (result == Undefined.instance ||
- result == ScriptableObject.NOT_FOUND) {
+ result == Scriptable.NOT_FOUND) {
result = null;
} else {
@@ -465,7 +465,7 @@
}
Object result = ScriptableObject.getProperty(thisObj, name);
if (result == Undefined.instance ||
- result == ScriptableObject.NOT_FOUND) {
+ result == Scriptable.NOT_FOUND) {
result = null;
}
if (result instanceof Wrapper) {
@@ -551,7 +551,7 @@
try {
Object result = arr.get(index++, arr);
if (result == Undefined.instance ||
- result == ScriptableObject.NOT_FOUND) {
+ result == Scriptable.NOT_FOUND) {
result = null;
} else {
if (!(result instanceof NativeJavaClass)) {
@@ -594,7 +594,7 @@
ScriptableObject.getProperty(scope,
ids[index++].toString());
if (result == Undefined.instance ||
- result == ScriptableObject.NOT_FOUND) {
+ result == Scriptable.NOT_FOUND) {
result = null;
} else {
if (!(result instanceof NativeJavaClass)) {
@@ -2483,7 +2483,7 @@
public void endDocument() throws SAXException {
super.endDocument();
- gen.execute(gen.getConsumer(),
+ gen.execute(gen.xmlConsumer,
gen.getJexlContext(),
gen.getJXPathContext(),
getStartEvent(), null);
@@ -2517,7 +2517,6 @@
}
}
- private XMLConsumer consumer;
private JXPathContext jxpathContext;
private MyJexlContext globalJexlContext;
private Variables variables;
@@ -2533,16 +2532,11 @@
return globalJexlContext;
}
- private XMLConsumer getConsumer() {
- return consumer;
- }
-
public void recycle() {
if ( this.resolver != null) {
this.resolver.release(this.inputSource);
}
this.inputSource = null;
- this.consumer = null;
this.jxpathContext = null;
this.globalJexlContext = null;
this.variables = null;
@@ -2579,12 +2573,9 @@
Object bean = FlowHelper.getContextObject(objectModel);
WebContinuation kont = FlowHelper.getWebContinuation(objectModel);
setContexts(bean, kont,
- ObjectModelHelper.getRequest(objectModel),
- ObjectModelHelper.getResponse(objectModel),
- ObjectModelHelper.getContext(objectModel),
parameters,
objectModel);
- definitions = new HashMap();
+ this.definitions = new HashMap();
}
private void fillContext(Object contextObject, Map map) {
@@ -2626,19 +2617,19 @@
private void setContexts(Object contextObject,
WebContinuation kont,
- Request request,
- Response response,
- org.apache.cocoon.environment.Context app,
Parameters parameters,
Map objectModel) {
- if (variables == null) {
- variables = new MyVariables(contextObject,
+ final Request request = ObjectModelHelper.getRequest(objectModel);
+ final Response response = ObjectModelHelper.getResponse(objectModel);
+ final org.apache.cocoon.environment.Context app =
+ ObjectModelHelper.getContext(objectModel);
+
+ this.variables = new MyVariables(contextObject,
kont,
request,
response,
app,
parameters);
- }
Map map;
if (contextObject instanceof Map) {
map = (Map)contextObject;
@@ -2646,11 +2637,13 @@
map = new HashMap();
fillContext(contextObject, map);
}
+
jxpathContext = jxpathContextFactory.newContext(null, contextObject);
jxpathContext.setVariables(variables);
globalJexlContext = new MyJexlContext();
globalJexlContext.setVars(map);
map = globalJexlContext.getVars();
+
if (contextObject != null) {
map.put("flowContext", contextObject);
// FIXME (VG): Is this required (what it's used for - examples)?
@@ -2668,33 +2661,31 @@
map.put("response", response);
map.put("context", app);
map.put("parameters", parameters);
- Object session = request.getSession(false);
+
+ final Object session = request.getSession(false);
if (session != null) {
map.put("session", session);
}
}
- public void setConsumer(XMLConsumer consumer) {
- this.consumer = consumer;
- }
-
public void generate()
throws IOException, SAXException, ProcessingException {
+ final String cacheKey = inputSource.getURI();
+
StartDocument startEvent;
synchronized (cache) {
- startEvent = (StartDocument)cache.get(inputSource.getURI());
+ startEvent = (StartDocument)cache.get(cacheKey);
}
if (startEvent == null) {
- SourceValidity validity = inputSource.getValidity();
Parser parser = new Parser();
SourceUtil.parse(this.manager, this.inputSource, parser);
startEvent = parser.getStartEvent();
- startEvent.compileTime = validity;
+ startEvent.compileTime = inputSource.getValidity();
synchronized (cache) {
- cache.put(inputSource.getURI(), startEvent);
+ cache.put(cacheKey, startEvent);
}
}
- execute(consumer,
+ execute(this.xmlConsumer,
globalJexlContext, jxpathContext,
startEvent, null);
}
@@ -2757,8 +2748,7 @@
startElement.attributes);
} else if (ev instanceof EndElement) {
EndElement endElement = (EndElement)ev;
- StartElement startElement =
- (StartElement)endElement.startElement;
+ StartElement startElement = endElement.startElement;
consumer.endElement(startElement.namespaceURI,
startElement.localName,
startElement.raw);
@@ -2921,8 +2911,7 @@
consumer.endDocument();
} else if (ev instanceof EndElement) {
EndElement endElement = (EndElement)ev;
- StartElement startElement =
- (StartElement)endElement.startElement;
+ StartElement startElement = endElement.startElement;
consumer.endElement(startElement.namespaceURI,
startElement.localName,
startElement.raw);
1.32 +2 -1 cocoon-2.1/src/webapp/sitemap.xmap
Index: sitemap.xmap
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/webapp/sitemap.xmap,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- sitemap.xmap 3 Sep 2003 20:27:01 -0000 1.31
+++ sitemap.xmap 15 Oct 2003 14:12:45 -0000 1.32
@@ -60,6 +60,7 @@
<map:generator label="content" logger="sitemap.generator.request" name="request" pool-grow="2" pool-max="16" pool-min="2" src="org.apache.cocoon.generation.RequestGenerator"/>
<map:generator label="content" logger="sitemap.generator.stream" name="stream" pool-grow="2" pool-max="16" pool-min="1" src="org.apache.cocoon.generation.StreamGenerator"/>
<map:generator label="content" logger="sitemap.generator.status" name="status" pool-grow="2" pool-max="16" pool-min="2" src="org.apache.cocoon.generation.StatusGenerator"/>
+ <map:generator label="content" logger="sitemap.generator.jx" name="jx" pool-grow="2" pool-max="16" pool-min="2" src="org.apache.cocoon.generation.JXTemplateGenerator"/>
<!-- The notifying generator can only be used in a <handle-errors> section : it produces an XML
representation of the exception that caused the error handler to be executed -->
<map:generator name="notifying" src="org.apache.cocoon.sitemap.NotifyingGenerator"/>
1.2 +0 -7 cocoon-2.1/src/webapp/samples/flow/jxcalc/sitemap.xmap
Index: sitemap.xmap
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/webapp/samples/flow/jxcalc/sitemap.xmap,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sitemap.xmap 13 Oct 2003 13:32:17 -0000 1.1
+++ sitemap.xmap 15 Oct 2003 14:12:45 -0000 1.2
@@ -1,13 +1,6 @@
<?xml version="1.0"?>
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
- <map:components>
-
- <map:generators default="file">
- <map:generator name="jx" src="org.apache.cocoon.generation.JXTemplateGenerator" label="content" logger="sitemap.generator.jx"/>
- </map:generators>
-
-</map:components>
<!-- indicates what flowscript to attach to this sitemap -->
<map:flow language="javascript">