Package org.apache.slide.projector.value

Examples of org.apache.slide.projector.value.ArrayValue


    }

    protected int getMaxIndex(Map parameter) {
        int maxIndex = 0;
        for ( Iterator i = parameter.values().iterator(); i.hasNext(); ) {
            ArrayValue resurce = (ArrayValue)i.next();
            if ( resurce.getArray().length > maxIndex ) maxIndex = resurce.getArray().length;
        }
        return maxIndex;
    }
View Full Code Here


                                }
                            }
                            resultSetResources.add(new MapValue(rowMap));
                        }
                        Value[] resultEntries = new Value[resultSetResources.size()];
                        result.addResultEntry(RESULT, new ArrayValue((Value[] )resultSetResources.toArray(resultEntries)));
                    } else {
                        result.addResultEntry(ROW_COUNT, new NumberValue(new BigDecimal(preparedStatement.getUpdateCount())));
                    }
                    conn.close();
                }
View Full Code Here

        }
    }

    public Result process(Map parameter, Context context) throws Exception {
        StringBuffer buffer = new StringBuffer(1024);
        ArrayValue input = (ArrayValue)parameter.get(SimpleProcessor.INPUT);
        NumberValue offsetResource = (NumberValue)parameter.get(OFFSET);
        NumberValue itemsPerPageResource = (NumberValue)parameter.get(ITEMS_PER_PAGE);
        Value sortedByParameter = (Value)parameter.get(TableHandler.SORTED_BY);
        Value orderParameter = (Value)parameter.get(TableHandler.ORDER);
        String sortedBy = null, order = null;
        if ( sortedByParameter != NullValue.NULL ) sortedBy = sortedByParameter.toString();
        if ( orderParameter != NullValue.NULL ) order = orderParameter.toString();
        String id = parameter.get(TableHandler.ID).toString();
        Store store = context.getStore(StoreHelper.getStoreByName(parameter.get(TableHandler.STORE).toString()));
        MapValue idResource = (MapValue)store.get(id);
        Map tableMap;
        if ( idResource == null) {
            tableMap = new HashMap();
            MapValue tableState = new MapValue(tableMap);
            store.put(id, tableState);
        } else {
            tableMap = idResource.getMap();
            NumberValue offset = (NumberValue)idResource.getMap().get(TableHandler.CURRENT_POSITION);
            if ( offset != null ) offsetResource = offset;
            NumberValue itemsPerPage = (NumberValue)idResource.getMap().get(ITEMS_PER_PAGE);
            if ( itemsPerPage != null ) itemsPerPageResource = itemsPerPage;
            Value sortedByValue = (Value)idResource.getMap().get(TableHandler.SORTED_BY);
            if ( sortedByValue != null && sortedByValue != NullValue.NULL ) sortedBy = sortedByValue.toString();
            Value orderValue = (Value)idResource.getMap().get(TableHandler.ORDER);
            if ( orderValue != null  && orderValue != NullValue.NULL ) order = orderValue.toString();
        }
      // sort table
        if ( sortedBy != null && order != null ) {
          Comparator comparator = new RowComparator(sortedBy, order);
          Arrays.sort(input.getArray(), comparator);
        }
        tableMap.put(TableHandler.CURRENT_POSITION, offsetResource);
        tableMap.put(ITEMS_PER_PAGE, itemsPerPageResource);
        int offset = offsetResource.getNumber().intValue();
        int length = itemsPerPageResource.getNumber().intValue();
        parameter.remove(OFFSET);
        parameter.remove(ITEMS_PER_PAGE);
        int maxIndex = input.getArray().length;
        tableMap.put(LENGTH, new NumberValue(new Integer(maxIndex)));
        offset = Math.min(offset, maxIndex);
        if ( length > 0 ) {
            length = Math.min(length, maxIndex-offset);
        } else {
            length = maxIndex-offset;
        }
        if ( maxIndex == 0 ) {
          if ( emptyTemplate != null ) emptyTemplate.evaluate(buffer, parameter);
        } else {
            if ( headerTemplate != null ) headerTemplate.evaluate(buffer, parameter);
            for ( int i = 0; i < length; i++ ) {
              // Enable the use of input parameters to provide default values for optional row parameters
              Map rowParameter = new HashMap();
                rowParameter.putAll(parameter);
              Map repeatedParameter = ((MapValue)input.getArray()[i+offset]).getMap();
                for ( Iterator j = repeatedParameter.entrySet().iterator(); j.hasNext(); ) {
                  Map.Entry entry = (Map.Entry)j.next();
                  if ( !(entry.getValue() instanceof NullValue) ) {
                    rowParameter.put(entry.getKey(), entry.getValue());
                  }
View Full Code Here

          new ResultEntryDescriptor(ROLES, new DefaultMessage("listRoles/result/roles"), ArrayValue.CONTENT_TYPE, false)
        });

    public Result process(Map parameter, Context context) throws Exception {
        URI user = (URI)parameter.get(USER);
        ArrayValue roles = Projector.getRepository().listRoles(user, context.getCredentials());
        return new Result(StateDescriptor.OK, ROLES, roles);
    }
View Full Code Here

          controlDescriptor.getMap().put(CONTROL, getControlURI(actionParameterDescriptors[i].getValueDescriptor()));
          controlDescriptor.getMap().put(CONTROL_CONTAINER, DEFAULT_CONTROL_CONTAINER);
          controlDescriptor.getMap().put(CONTROL_NAME, parameterName);
          controlDescriptors.add(controlDescriptor);
        }
        parameter.put(CONTROL_DESCRIPTIONS, new ArrayValue((Value[])controlDescriptors.toArray(new Value[controlDescriptors.size()])));

        // Finally add testing trigger...
      MapValue triggerDescriptor = new MapValue();
      triggerDescriptor.getMap().put(Trigger.ACTION, actionUri);
      triggerDescriptor.getMap().put(Trigger.VALIDATE, BooleanValue.TRUE);
      triggerDescriptor.getMap().put(Trigger.INVOLVED_PARAMETERS, NullValue.NULL);
      triggerDescriptor.getMap().put(Process.STEP, parameter.get(TARGET_STEP));
      triggerDescriptor.getMap().put(TRIGGER, 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 ArrayValue(new Value[] { triggerDescriptor }));
        parameter.put(ERRORS_PROCESSOR, DEFAULT_ERROR_RENDERER);
       
        parameter.put(HANDLER, ProcessorManager.getInstance().process(ProcessorManager.URL, Constants.DEFAULT_FORM_HANDLER, context));
        parameter.put(METHOD, new StringValue(POST));
        Result controlComposerResult = super.process(parameter, context);
View Full Code Here

              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 {
            ProcessorManager.prepareValues(trigger.getParameterDescriptors(), triggerParameters, context);
          } catch ( ValidationException exception ) {
            throw new ValidationException(new ErrorMessage("controlComposer/triggerParameterInvalid", new Object[] { triggerUri }), exception);
          }
            Value triggerContainerUri = (Value)triggerParameters.get(TRIGGER_CONTAINER);
            Result triggerResult = trigger.process(triggerParameters, context);
            if ( triggerContainerUri != NullValue.NULL ) {
              Processor triggerContainer = ProcessorManager.getInstance().getProcessor((URI)triggerContainerUri);
              Map triggerContainerParameters = new HashMap();
              triggerContainerParameters.putAll(parameter);
              triggerContainerParameters.put(TRIGGER, triggerResult.getResultEntries().get(OUTPUT));
              try {
                ProcessorManager.prepareValues(triggerContainer.getParameterDescriptors(), triggerContainerParameters, context);
              } catch ( ValidationException exception ) {
                throw new ValidationException(new ErrorMessage("controlComposer/triggerContainerParameterInvalid", new Object[] { triggerContainerUri }), exception);
              }
              Result triggerContainerResult = triggerContainer.process(triggerContainerParameters, context);
              generatedTriggers.add(new MapValue(triggerName, (Value)triggerContainerResult.getResultEntries().get(OUTPUT)));
            } else {
              generatedTriggers.add(new MapValue(triggerName, (Value)triggerResult.getResultEntries().get(OUTPUT)));
            }
        }
        composerResult.addResultEntry(GENERATED_TRIGGERS, new ArrayValue((Value [])generatedTriggers.toArray(new Value[generatedTriggers.size()])));
        if ( errorsProcessorUri instanceof URI ) {
          Processor errorsTable = ProcessorManager.getInstance().getProcessor((URI)errorsProcessorUri);
          List errorList = new ArrayList();
          for ( Iterator i = context.getInformations().iterator(); i.hasNext(); ) {
            Information info = (Information)i.next();
            Map errors = new HashMap();
            explodeInformation(errors, info, locale );
            errorList.add(new MapValue(errors));
          }
          Map errorsParameter = new HashMap();
          MapValue[] errorsArray = new MapValue[errorList.size()];
          errorsParameter.put(SimpleProcessor.INPUT, new ArrayValue((MapValue[])errorList.toArray(errorsArray)));
          Result renderedErrors = ProcessorManager.process(errorsTable, errorsParameter, context);
          composerResult.addResultEntry(RENDERED_ERRORS, (Value)renderedErrors.getResultEntries().get(OUTPUT));
        }
        return composerResult;
    }
View Full Code Here

            } else if (parameterName.startsWith(TRIGGER_IDENTIFIER)) {
              ((MapValue)value).getMap().put(TRIGGER_NAME, parameterName);
              triggerDescriptions.add(value);
            }
        }
        parameter.put(ControlComposer.CONTROL_DESCRIPTIONS, new ArrayValue((Value[])controlDescriptions.toArray(new Value[controlDescriptions.size()])));
        parameter.put(ControlComposer.TRIGGER_DESCRIPTIONS, new ArrayValue((Value[])triggerDescriptions.toArray(new Value[triggerDescriptions.size()])));
        ProcessorManager.prepareValues(super.getParameterDescriptors(), parameter, context);
        Result controlComposerResult = super.process(parameter, context);
        Value[] generatedControls = ((ArrayValue)controlComposerResult.getResultEntries().get(GENERATED_CONTROLS)).getArray();
        for ( int i = 0; i < generatedControls.length; i++ ) {
          Iterator j = ((MapValue)generatedControls[i]).getMap().entrySet().iterator();
View Full Code Here

            importer.parse(new InputSource(configuration));
            Page rootPage = handler.getRootPage();
            List resources = new ArrayList();
            buildArray(resources, rootPage);
            Value[] array = new Value[resources.size()];
            ArrayValue arrayResource = new ArrayValue((Value [])resources.toArray(array));
            result.addResultEntry(SimpleProcessor.OUTPUT, arrayResource);
            resultDescriptors = new ResultDescriptor(
                    new StateDescriptor[] { StateDescriptor.OK_DESCRIPTOR },
                    new ResultEntryDescriptor[] {
                        new ResultEntryDescriptor(SimpleProcessor.OUTPUT, new DefaultMessage("sitemap/output"), ArrayValue.CONTENT_TYPE, false)
View Full Code Here

            }
            if ( child.getChildren().size() > 0 ) {
                List childrenResources = new ArrayList();
                buildArray(childrenResources, child);
                Value[] array = new Value[childrenResources.size()];
                ArrayValue arrayResource = new ArrayValue((Value [])childrenResources.toArray(array));
                resources.add(arrayResource);
            }
        }
    }
View Full Code Here

            // convert to string resource
            Value []elements = new Value[((String[])value).length];
            for ( int i = 0; i < ((String[])value).length; i++ ) {
                elements[i] = new StringValue(((String [])value)[i]);                               
            }
            return new ArrayValue(elements);
        } else {
          return new ObjectValue(value);
        }
    }
View Full Code Here

TOP

Related Classes of org.apache.slide.projector.value.ArrayValue

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.