Package org.apache.slide.projector

Examples of org.apache.slide.projector.URI


          }
          if ( expand != NullValue.NULL ) {
            size.put(expand.toString(), EXPANDED);
          }
        }
        URI bookmark = (URI)context.getBookmark();
        if ( bookmark != null ) {
          return ProcessorManager.getInstance().process(bookmark, parameter, context);
        } else {
          return Result.OK;
        }
View Full Code Here


    public ResultDescriptor getResultDescriptor() {
        return resultDescriptor;
    }

    static ParameterDescriptor getParameterDescriptor(Map parameter, Context context) throws ProcessException {
        URI actionUri = (URIValue)parameter.get(ACTION);
        Processor action = ProcessorManager.getInstance().getProcessor(actionUri);
        String parameterName = parameter.get(PARAMETER).toString();
        ParameterDescriptor parameterDescriptor = ProcessorHelper.getParameterDescriptor(action, parameterName);
        if ( parameterDescriptor == null ) throw new ProcessException(new ErrorMessage("control/actionParameterNotFound", new Object[] { parameterName, actionUri }));
        return parameterDescriptor;
View Full Code Here

    public Result process(Map parameter, Context context) throws Exception {
      Value []involvedParameters = (Value[])((ArrayValue)parameter.get(INVOLVED_PARAMETERS)).getArray();
      String targetStep = parameter.get(Process.STEP).toString();
      BooleanValue validate = (BooleanValue)parameter.get(VALIDATE);
      BooleanValue wizard = (BooleanValue)parameter.get(WIZARD);
      URI actionUri = (URI)parameter.get(ACTION);
    StringBuffer buffer = new StringBuffer(128);
    buffer.append(actionUri).append(SEPARATOR).append(validate).append(SEPARATOR).append(wizard).append(SEPARATOR).append(context.getStep()).append(SEPARATOR).append(targetStep).append(SEPARATOR).append(context.getProcess());
      if ( validate.booleanValue() ) {
        for ( int i = 0; i < involvedParameters.length; i++ ) {
          buffer.append(SEPARATOR).append(involvedParameters[i]);
View Full Code Here

    public FormGenerator() {
      super();
    }

    public Result process(Map parameter, Context context) throws Exception {
        URI actionUri = (URIValue)parameter.get(Control.ACTION);
        Processor action = ProcessorManager.getInstance().getProcessor(actionUri);
        Locale locale = ((LocaleValue)parameter.get(LOCALE)).getLocale();
        ParameterDescriptor []actionParameterDescriptors = action.getParameterDescriptors();
        StringBuffer buffer = new StringBuffer();
        List controlDescriptors = new ArrayList();
View Full Code Here

    }

    public Result process(Map parameter, Context context) throws Exception {
      Value[] controlDescriptions = ((ArrayValue)parameter.get(CONTROL_DESCRIPTIONS)).getArray();
      Value[] triggerDescriptions = ((ArrayValue)parameter.get(TRIGGER_DESCRIPTIONS)).getArray();
      URI actionUri = (URIValue)parameter.get(ACTION);
      Value errorsProcessorUri = (Value)parameter.get(ERRORS_PROCESSOR);
      Locale locale = ((LocaleValue)parameter.get(LOCALE)).getLocale();
        String state = DEFAULT_STATE;
        List informations = context.getInformations();
    MapValue mapResource = (MapValue)((FormStore)context.getStore(Store.FORM)).getDomain();
    List generatedControls = new ArrayList();
    List involvedParameters = new ArrayList();
    for (int i = 0; i < controlDescriptions.length; i++ ) {
          Map controlParameters = ((MapValue)controlDescriptions[i]).getMap();
          String controlName = controlParameters.get(CONTROL_NAME).toString();
          URI controlUri = (URI)controlParameters.get(CONTROL);
          Control control = (Control)ProcessorManager.getInstance().getProcessor(controlUri);
          Value controlActionUri = (Value)controlParameters.get(Control.ACTION);
          if ( controlActionUri == NullValue.NULL ) controlActionUri = actionUri;
           controlParameters.put(Control.ACTION, controlActionUri);
          try {
            ProcessorManager.prepareValues(control.getParameterDescriptors(), controlParameters, context);
          } catch ( ValidationException exception ) {
            throw new ValidationException(new ErrorMessage("controlComposer/controlParameterInvalid", new Object[] { controlUri }), exception);
          }
            Value controlContainerUri = (Value)controlParameters.get(CONTROL_CONTAINER);
            ParameterDescriptor parameterDescriptor = Control.getParameterDescriptor(controlParameters, context);
            String parameterName = parameterDescriptor.getName();
            involvedParameters.add(new StringValue(parameterName));
            ParameterMessage description = (ParameterMessage)parameterDescriptor.getDescription();
            boolean required = parameterDescriptor.isRequired();
            String controlState = Control.OPTIONAL_CONTROL;
            if ( required ) {
              controlState = Control.REQUIRED_CONTROL;
            }
            Object controlValue = null;
            boolean validate = false;
            if ( mapResource != null ) {
              controlValue = mapResource.getMap().get(parameterName);
              validate = false;
              BooleanValue validateResource = ((BooleanValue)mapResource.getMap().get(VALIDATE));
              if ( validateResource != null ) validate = validateResource.booleanValue();
            }
            if ( validate ) {
              try {
                controlValue = ProcessorManager.prepareValue(parameterDescriptor, controlValue, context);
              } catch ( ValidationException exception ) {
                controlValue = StringValueDescriptor.ANY.valueOf(controlValue, context).toString();
                context.addInformation(new Information(Information.ERROR, exception.getErrorMessage(), new String[] { parameterName }));
              }
              controlParameters.put(Control.VALUE, controlValue);
              if ( hasErrors(informations, parameterName) ) {
                if ( required ) {
                  controlState = Control.REQUIRED_INVALID_CONTROL;
                } else {
                  controlState = Control.OPTIONAL_INVALID_CONTROL;
                }
                explodeInformations(controlParameters, informations, parameterName, locale);
              } else {
                if ( required ) {
                  controlState = Control.REQUIRED_VALID_CONTROL;
                } else {
                  controlState = Control.OPTIONAL_VALID_CONTROL;
                }
              }
            }
            controlParameters.put(Control.STATE, controlState);
            controlParameters.put(Control.VALUE, controlValue);
            Result controlResult = control.process(controlParameters, context);
            if ( controlContainerUri != NullValue.NULL ) {
              Processor controlContainer = ProcessorManager.getInstance().getProcessor((URI)controlContainerUri);
              Map controlContainerParameters = new HashMap();
              controlContainerParameters.putAll(parameter);
              if ( hasErrors(informations, parameterName) ) {
                explodeInformations(controlContainerParameters, informations, parameterName, locale);
              }
              controlContainerParameters.put(Control.STATE, controlState);
              controlContainerParameters.put(CONTROL, controlResult.getResultEntries().get(OUTPUT));
              controlContainerParameters.put(TITLE, description.getTitle(locale, parameterName ));
              try {
                controlContainerParameters.put(TEXT, description.getText(locale));
                controlContainerParameters.put(PROMPT, description.getPrompt(locale));
              } catch ( MessageNotFoundException exception ) {
                controlContainerParameters.put(TEXT, NO_PARAMETER_MESSAGE_AVAILABLE.getText(locale, "&nbsp;"));
                controlContainerParameters.put(PROMPT, NO_PARAMETER_MESSAGE_AVAILABLE.getPrompt(locale, "&nbsp;"));
              }
              try {
                ProcessorManager.prepareValues(controlContainer.getParameterDescriptors(), controlContainerParameters, context);
              } catch ( ValidationException exception ) {
                throw new ValidationException(new ErrorMessage("controlComposer/controlContainerParameterInvalid", new Object[] { controlContainerUri }), exception);
              }
              Result controlContainerResult = controlContainer.process(controlContainerParameters, context);
              generatedControls.add(new MapValue(controlName, (Value)controlContainerResult.getResultEntries().get(OUTPUT)));
            } else {
              generatedControls.add(new MapValue(controlName, (Value)controlResult.getResultEntries().get(OUTPUT)));
            }
            if ( controlState == Control.OPTIONAL_INVALID_CONTROL || controlState == Control.REQUIRED_INVALID_CONTROL  ) {
              state = INVALID_STATE;
            } else if ( state == DEFAULT_STATE && ( controlState == Control.OPTIONAL_VALID_CONTROL || controlState == Control.REQUIRED_VALID_CONTROL ) ) {
              state = VALID_STATE;
            }
        }
        Result composerResult = new Result(state, GENERATED_CONTROLS, new ArrayValue((Value [])generatedControls.toArray(new Value[generatedControls.size()])));
    List generatedTriggers = new ArrayList();
    for (int i = 0; i < triggerDescriptions.length; i++ ) {
          Map triggerParameters = ((MapValue)triggerDescriptions[i]).getMap();
          String triggerName = triggerParameters.get(TRIGGER_NAME).toString();
          Value involvedTriggerParameters = (Value)triggerParameters.get(Trigger.INVOLVED_PARAMETERS);
          if ( involvedTriggerParameters == NullValue.NULL ) {
            involvedTriggerParameters = new ArrayValue((StringValue[])involvedParameters.toArray(new StringValue[involvedParameters.size()]));
          }
          triggerParameters.put(Trigger.INVOLVED_PARAMETERS, involvedTriggerParameters);
          URI triggerUri = (URI)triggerParameters.get(TRIGGER);
          Trigger trigger = (Trigger)ProcessorManager.getInstance().getProcessor(triggerUri);
          Value triggerActionUri = (Value)triggerParameters.get(Trigger.ACTION);
          if ( triggerActionUri == NullValue.NULL ) triggerActionUri = actionUri;
           triggerParameters.put(Trigger.ACTION, triggerActionUri);
          try {
View Full Code Here

      Object formResult = context.getStore(Store.FORM).get(FormHandler.RESULT);
      if ( formResult instanceof Result ) {
        return (Result)formResult; 
      }
      Object a = parameter.get(ACTION);
      URI actionUri = (URI)a;
      Locale locale = ((LocaleValue)parameter.get(LOCALE)).getLocale();
        List informations = context.getInformations();
        parameter.put(HANDLER, ProcessorManager.getInstance().process(ProcessorManager.URL, parameter.get(HANDLER), context));
        List controlDescriptions = new ArrayList();
        List triggerDescriptions = new ArrayList();
View Full Code Here

      if ( trigger == null ) {
        throw new ValidationException(new ErrorMessage("trigger/triggerParameterMissing"));
      }
      // Decode instruction
    StringTokenizer tokenizer = new StringTokenizer(StringValueDescriptor.ANY.valueOf(parameter.get(INSTRUCTION_IDENTIFIER+trigger), context).toString(), ";");
    URI actionURI = new URIValue(tokenizer.nextToken());
    boolean validate = Boolean.valueOf(tokenizer.nextToken()).booleanValue();
    boolean wizard = Boolean.valueOf(tokenizer.nextToken()).booleanValue();
    String lastStep = tokenizer.nextToken();
    String targetStep = tokenizer.nextToken();
    String domain = tokenizer.nextToken();
View Full Code Here

    private final static ParameterDescriptor[] parameterDescriptors = new ParameterDescriptor[] {
      new ParameterDescriptor(PROCESSOR, new ParameterMessage("test/parameter/processor"), new URIValueDescriptor(), NullValue.NULL),
  };
 
  public Result process(Map parameter, Context context) throws Exception {
    URI processorUri = ProcessorManager.getInstance().getURI(this);
    context.setBookmark(processorUri);
    Value uri = (Value)parameter.get(PROCESSOR);
        if ( uri == null || uri == NullValue.NULL ) {
          uri = (URI)context.getStore(Store.SESSION).get(PROCESSOR);
        }
View Full Code Here

      throw new ConfigurationException(new ErrorMessage("process/configurationException"), exception);
    }
  }
 
  public Result process(Map parameter, Context context) throws Exception {
    URI processorUri = ProcessorManager.getInstance().getProcessorDescriptor(this).getUri();
    context.setProcess(processorUri);        // Remember current process in context
    String nextStep = getStep(firstStep, context);   // Lookup the first step of this process
    Store stepStore = new Cache();           // This store is used to allow stack-like result/parameter delivery between steps 
    Result result = new Result(OK);         // The result of this process processor
    Result stepResult = null;               // The result of the last executed step
View Full Code Here

        String result = element.getAttributeValue("result");
        String store = element.getAttributeValue("store");
    int storeId = StoreHelper.getStoreByName(store);
        String key = element.getAttributeValue("key");
        String domain = element.getAttributeValue("domain");
        URI processorUri = ( processor == null ? null : new URIValue(processor) );
        Iterator children = element.getChildren().iterator();
      Value input = null;
        if ( children.hasNext() ) {
          Element childElement = (Element)children.next();
          input = ValueFactoryManager.getInstance().loadValue(childElement);
View Full Code Here

TOP

Related Classes of org.apache.slide.projector.URI

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.