dflorey 2004/05/15 02:37:20
Modified: proposals/projector/src/java/org/apache/slide/projector/engine
SystemContext.java ProcessorManager.java
proposals/projector/src/java/org/apache/slide/projector/processor/form
FormGenerator.java FormHandler.java
proposals/projector/src/java/org/apache/slide/projector
Constants.java
Log:
Form handling didn't work on IE (because of image button bug in ie)
Revision Changes Path
1.3 +0 -3
jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/engine/SystemContext.java
Index: SystemContext.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/engine/SystemContext.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- SystemContext.java 5 May 2004 15:32:44 -0000 1.2
+++ SystemContext.java 15 May 2004 09:37:20 -0000 1.3
@@ -1,15 +1,12 @@
package org.apache.slide.projector.engine;
import java.io.IOException;
-import java.util.HashMap;
-import java.util.Map;
import org.apache.commons.httpclient.Credentials;
import org.apache.slide.projector.Constants;
import org.apache.slide.projector.Store;
import org.apache.slide.projector.AbstractContext;
import org.apache.slide.projector.URI;
-import org.apache.slide.projector.resource.MapResource;
public class SystemContext extends AbstractContext {
private final static String BOOKMARK = "_bookmark_";
1.7 +2 -2
jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/engine/ProcessorManager.java
Index: ProcessorManager.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/engine/ProcessorManager.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ProcessorManager.java 13 May 2004 16:34:15 -0000 1.6
+++ ProcessorManager.java 15 May 2004 09:37:20 -0000 1.7
@@ -311,7 +311,7 @@
}
}
if ( processor instanceof ConfigurableProcessor && configURI
!= null ) {
- URI configurationUri = new URIResource(configURI);
+ URI configurationUri = new
URIResource(Constants.REPOSITORY_DOMAIN+configURI);
if ( processorDescriptor.getConfiguration() == null ||
!processorDescriptor.getConfiguration().equals(configurationUri) ) {
logger.log(Level.INFO, "Configuring processor
with config-URI=" + configURI);
processorDescriptor.setConfiguration(configurationUri);
@@ -319,7 +319,7 @@
((ConfigurableProcessor)processor).configure(config);
// listen for configuration changes
Subscriber subscriber = new
ConfigurationListener();
-
ConnectorFactory.getConnector().subscribe("Update", new
URIResource(Constants.REPOSITORY_DOMAIN+configURI), 0,
Constants.SUBSCRIPTION_LIFETIME, Constants.NOTIFICATION_DELAY, subscriber,
Constants.CREDENTIALS);
+
ConnectorFactory.getConnector().subscribe("Update", configurationUri, 0,
Constants.SUBSCRIPTION_LIFETIME, Constants.NOTIFICATION_DELAY, subscriber,
Constants.CREDENTIALS);
configurationListeners.put(configurationUri,
subscriber);
configuredProcessors.put(configurationUri,
processor);
modified = true;
1.6 +4 -3
jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/form/FormGenerator.java
Index: FormGenerator.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/form/FormGenerator.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- FormGenerator.java 10 May 2004 16:54:24 -0000 1.5
+++ FormGenerator.java 15 May 2004 09:37:20 -0000 1.6
@@ -42,7 +42,8 @@
protected final static String STYLE = "style";
protected final static String ORANGE_STYLE = "/orangeStyle";
-
+ protected final static String LAUNCH_PROCESSOR = "trigger:launch";
+
private ParameterDescriptor[] parameterDescriptors;
public FormGenerator() {
@@ -76,7 +77,7 @@
triggerDescriptor.getMap().put(Trigger.INVOLVED_PARAMETERS, NullResource.NULL);
triggerDescriptor.getMap().put(Process.STEP, parameter.get(TARGET_STEP));
triggerDescriptor.getMap().put(TRIGGER, TRIGGER_URI);
- triggerDescriptor.getMap().put(TRIGGER_NAME, TRIGGER_URI);
+ triggerDescriptor.getMap().put(TRIGGER_NAME, LAUNCH_PROCESSOR);
triggerDescriptor.getMap().put(TRIGGER_IMAGE,
ProcessorManager.getInstance().process(ProcessorManager.BINARY, DEFAULT_TRIGGER_IMAGE,
"url", context));
triggerDescriptor.getMap().put(TRIGGER_CONTAINER, DEFAULT_TRIGGER_CONTAINER);
parameter.put(TRIGGER_DESCRIPTIONS, new ArrayResource(new Resource[] {
triggerDescriptor }));
1.9 +23 -6
jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/form/FormHandler.java
Index: FormHandler.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/processor/form/FormHandler.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- FormHandler.java 11 May 2004 10:07:33 -0000 1.8
+++ FormHandler.java 15 May 2004 09:37:20 -0000 1.9
@@ -4,6 +4,7 @@
import org.apache.slide.projector.descriptor.*;
import org.apache.slide.projector.engine.ContentType;
import org.apache.slide.projector.engine.ProcessorManager;
+import org.apache.slide.projector.i18n.ErrorMessage;
import org.apache.slide.projector.i18n.ParameterMessage;
import org.apache.slide.projector.processor.SimpleProcessor;
import org.apache.slide.projector.resource.BooleanResource;
@@ -15,6 +16,7 @@
import java.util.ArrayList;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
@@ -25,9 +27,9 @@
*/
public class FormHandler implements Processor {
- private final static ParameterDescriptor[] parameterDescriptors = new
ParameterDescriptor[] {
- new ParameterDescriptor(Trigger.INSTRUCTION, new
ParameterMessage("formHandler/instruction"), new StringValueDescriptor())
- };
+ private final static String INSTRUCTION_IDENTIFIER = "instruction:";
+
+ private final static ParameterDescriptor[] parameterDescriptors = new
ParameterDescriptor[0];
private final static ResultDescriptor resultDescriptor = new ResultDescriptor(
new StateDescriptor[] { StateDescriptor.OK_DESCRIPTOR },
@@ -36,8 +38,23 @@
});
public Result process(Map parameter, Context context) throws Exception {
- // Decode instruction
- StringTokenizer tokenizer = new
StringTokenizer(parameter.get(Trigger.INSTRUCTION).toString(), ";");
+ // Lookup valid instruction
+ String trigger = null;
+ for ( Iterator i = parameter.entrySet().iterator(); i.hasNext(); ) {
+ Map.Entry entry = (Map.Entry)i.next();
+ String key = (String)entry.getKey();
+ if ( key.startsWith(Form.TRIGGER_IDENTIFIER) ) {
+ if ( key.indexOf('.') > 0 ) {
+ trigger = key.substring(0, key.indexOf('.'));
+ break;
+ }
+ }
+ }
+ if ( trigger == null ) {
+ throw new ValidationException(new
ErrorMessage("trigger/triggerParameterMissing"));
+ }
+ // Decode instruction
+ StringTokenizer tokenizer = new
StringTokenizer(StringValueDescriptor.toString(parameter.get(INSTRUCTION_IDENTIFIER+trigger)),
";");
URI actionURI = new URIResource(tokenizer.nextToken());
boolean validate =
Boolean.valueOf(tokenizer.nextToken()).booleanValue();
String lastStep = tokenizer.nextToken();
1.6 +1 -1
jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/Constants.java
Index: Constants.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/proposals/projector/src/java/org/apache/slide/projector/Constants.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- Constants.java 11 May 2004 15:23:43 -0000 1.5
+++ Constants.java 15 May 2004 09:37:20 -0000 1.6
@@ -36,7 +36,7 @@
public final static int OFF = 2;
public final static int NOTIFICATION_METHOD = UDP;
- public final static String NOTIFICATION_HOST = "192.168.105.64";
+ public final static String NOTIFICATION_HOST = "127.0.0.1";
public final static int NOTIFICATION_PORT = 4444;
public final static int POLL_INTERVAL = 60000000; // milliseconds
public final static int SUBSCRIPTION_LIFETIME = 3600;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]