Update of /var/cvs/src/org/mmbase/framework/basic
In directory james.mmbase.org:/tmp/cvs-serv22430/basic
Modified Files:
BasicFramework.java MMBaseUrlConverter.java
Log Message:
some changes to make 'processing' of blocks work
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/framework/basic
Index: BasicFramework.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/basic/BasicFramework.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- BasicFramework.java 12 Apr 2008 08:11:25 -0000 1.14
+++ BasicFramework.java 12 Apr 2008 12:58:20 -0000 1.15
@@ -33,7 +33,7 @@
* configured with an XML 'framework.xml'.
*
* @author Michiel Meeuwissen
- * @version $Id: BasicFramework.java,v 1.14 2008/04/12 08:11:25 michiel Exp $
+ * @version $Id: BasicFramework.java,v 1.15 2008/04/12 12:58:20 michiel Exp $
* @since MMBase-1.9
*/
public class BasicFramework extends Framework {
@@ -49,6 +49,8 @@
}
+ public static final Parameter<String> ACTION = new
Parameter<String>("action", String.class);
+
protected final ChainedUrlConverter urlConverter = new
ChainedUrlConverter();
protected final LocalizedString description = new
LocalizedString("description");
@@ -72,6 +74,9 @@
public String getProcessUrl(String path, Map<String, Object> parameters,
Parameters frameworkParameters, boolean
escapeAmps) throws FrameworkException {
+ HttpServletRequest request =
BasicUrlConverter.getUserRequest(frameworkParameters.get(Parameter.REQUEST));
+ State state = State.getState(request);
+ frameworkParameters.set(ACTION, state.getId());
return urlConverter.getUrl(path, parameters, frameworkParameters,
escapeAmps);
}
@@ -187,7 +192,7 @@
/**
*/
public Parameter[] getParameterDefinition() {
- return urlConverter.getParameterDefinition();
+ return new Parameter[] { ACTION, new
Parameter.Wrapper(urlConverter.getParameterDefinition())};
}
public Parameters createParameters() {
@@ -223,6 +228,7 @@
public void render(Renderer renderer, Parameters blockParameters,
Parameters frameworkParameters, Writer w, Renderer.WindowState windowState)
throws FrameworkException {
ServletRequest request = frameworkParameters.get(Parameter.REQUEST);
State state = State.getState(request);
+
try {
request.setAttribute(COMPONENT_CLASS_KEY, "mm_fw_basic");
@@ -234,8 +240,9 @@
blockParameters = newBlockParameters;
}
-
+ state.setAction(request.getParameter(ACTION.getName()));
if (state.needsProcess()) {
+ log.service("Performing action on " +
actualRenderer.getBlock());
Processor processor = actualRenderer.getBlock().getProcessor();
state.process(processor);
log.service("Processing " + actualRenderer.getBlock() + " " +
processor);
Index: MMBaseUrlConverter.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/basic/MMBaseUrlConverter.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- MMBaseUrlConverter.java 25 Mar 2008 09:20:24 -0000 1.5
+++ MMBaseUrlConverter.java 12 Apr 2008 12:58:20 -0000 1.6
@@ -16,14 +16,15 @@
import org.mmbase.util.logging.Logging;
/**
- * The UrlConverter which deals in urls and filters links that start with
'/mmbase/'.
- *
+ * The UrlConverter which deals in urls and filters links that start with
'/mmbase/' (or whatever
+ * was configured for this prefix).
*
* @author Michiel Meeuwissen
- * @version $Id: MMBaseUrlConverter.java,v 1.5 2008/03/25 09:20:24 michiel Exp
$
+ * @version $Id: MMBaseUrlConverter.java,v 1.6 2008/04/12 12:58:20 michiel Exp
$
* @since MMBase-1.9
*/
public class MMBaseUrlConverter implements UrlConverter {
+
private static final Logger log =
Logging.getLoggerInstance(MMBaseUrlConverter.class);
/**
@@ -143,7 +144,7 @@
if (log.isDebugEnabled()) {
log.debug("Creating URL to component " + component + " generating
URL to " + block + " State " + state + " category " + category);
}
- boolean processUrl =
Boolean.TRUE.equals(frameworkParameters.get("process"));
+ boolean processUrl = frameworkParameters.get(BasicFramework.ACTION) !=
null;
if (processUrl) {
// get current components ids
if (state.isRendering()) {
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs