Package org.codehaus.jackson.node

Examples of org.codehaus.jackson.node.ArrayNode


 
  /**
   * 初始化任务分配中的资源类型
   */
  private void initGroupInfo(JsonNode rootNode){
    ArrayNode baseNodeArray = (ArrayNode)rootNode.get("propertyPackages");
        JsonNode taskAssignBase = JsonConverterUtil.getChildElementByProperty("taskassignbase", "name", baseNodeArray);
        taskAssignBase = taskAssignBase.get("properties");
        JsonNode potentialownerNode = JsonConverterUtil.getChildElementByProperty("potentialowner", "id", (ArrayNode)taskAssignBase);
       
        JsonNode complexItemsNode = potentialownerNode.get("complexItems");
        JsonNode resourceType = JsonConverterUtil.getChildElementByProperty("resourcetype", "id", (ArrayNode)complexItemsNode);
       
        ArrayNode arrayNode = objectMapper.createArrayNode();
        ObjectNode typeNode = objectMapper.createObjectNode();
    typeNode.put("id","user");
        typeNode.put("title", "用户");
        typeNode.put("value", "user");
        arrayNode.add(typeNode);
       
        List<GroupDefinition> groupDefinitions = ProcessEngineManagement.getDefaultProcessEngine().getProcessEngineConfiguration().getGroupDefinitions();
        for(GroupDefinition groupDefinition :groupDefinitions){
          ObjectNode objectNode = objectMapper.createObjectNode();
          objectNode.put("id",groupDefinition.getId());
          objectNode.put("title", groupDefinition.getName());
          objectNode.put("value", groupDefinition.getId());
            arrayNode.add(objectNode);
        }
        ((ObjectNode)resourceType).put("items", arrayNode);
  }
View Full Code Here


   * @param rootNode
   */
  private void initDataVaribaleType(JsonNode rootNode){
    DataVariableConfig dataVariableConfig = ProcessEngineManagement.getDefaultProcessEngine().getProcessEngineConfiguration().getDataVariableConfig();
   
    ArrayNode baseNodeArray = (ArrayNode)rootNode.get("propertyPackages");
        JsonNode flowBase = JsonConverterUtil.getChildElementByProperty("flowbase", "name", baseNodeArray);
        flowBase = flowBase.get("properties");
        JsonNode dataVariableNode = JsonConverterUtil.getChildElementByProperty("process_datavariable", "id", (ArrayNode)flowBase);
        JsonNode complexItemsNode = dataVariableNode.get("complexItems");
       
        //加载数据类型
        JsonNode dataTypeNode = JsonConverterUtil.getChildElementByProperty("datatype", "id",(ArrayNode)complexItemsNode);
        DataVariableDataType dataVariableDataType = dataVariableConfig.getDataVariableDataType();
    List<DataTypeDef> dataTypeDefs = dataVariableDataType.getDataTypeDef();
    ArrayNode dataTypeArrayNode = objectMapper.createArrayNode();
    for(DataTypeDef dataTypeDef :dataTypeDefs){
      ObjectNode objectNode = objectMapper.createObjectNode();
          objectNode.put("id",dataTypeDef.getId());
          objectNode.put("title", dataTypeDef.getName());
          objectNode.put("value", dataTypeDef.getId());
          dataTypeArrayNode.add(objectNode);
    }
    ((ObjectNode)dataTypeNode).put("items", dataTypeArrayNode);
       
    //加载业务类型
        JsonNode bizTypeNode = JsonConverterUtil.getChildElementByProperty("biztype", "id", (ArrayNode)complexItemsNode);
        DataVariableBizTypeConfig dataVariableBizTypeConfig = dataVariableConfig.getDataVariableBizTypeConfig();
        List<DataVariableBizType> bizTypes = dataVariableBizTypeConfig.getDataVariableBizType();
        ArrayNode bizTypeArrayNode = objectMapper.createArrayNode();
        for(DataVariableBizType dataVariableBizType : bizTypes){
          ObjectNode objectNode = objectMapper.createObjectNode();
          objectNode.put("id",dataVariableBizType.getTypeId());
          objectNode.put("title", dataVariableBizType.getTypeName());
          objectNode.put("value", dataVariableBizType.getTypeId());
          bizTypeArrayNode.add(objectNode);
        }
        ((ObjectNode)bizTypeNode).put("items", bizTypeArrayNode);
  }
View Full Code Here

    ObjectNode stencilsetNode = objectMapper.createObjectNode();
    stencilsetNode.put("namespace", "http://b3mn.org/stencilset/bpmn2.0#");
    stencilsetNode.put("url", "../editor/stencilsets/bpmn2.0/bpmn2.0.json");
    modelNode.put("stencilset", stencilsetNode);
   
    ArrayNode shapesArrayNode = objectMapper.createArrayNode();
   
    ProcessDefinitionBehavior mainProcess = null;
    mainProcess=(ProcessDefinitionBehavior)BpmnModelUtil.getProcess(model);
    EMFExtensionUtil.getDataVariables(mainProcess);

    ObjectNode propertiesNode = objectMapper.createObjectNode();
    if (StringUtils.isNotEmpty(mainProcess.getId())) {
      propertiesNode.put(PROPERTY_OVERRIDE_ID, mainProcess.getId());
    }
    if (StringUtils.isNotEmpty(mainProcess.getName())) {
      propertiesNode.put(PROPERTY_NAME, mainProcess.getName());
    }
   
    //fixflow扩展流程属性
    String category = mainProcess.getCategory();
  if(category != null){
    propertiesNode.put(PROPERTY_PROCESS_CATEGORY, mainProcess.getCategory());
  }
    TaskSubjectBehavior taskSubject =  mainProcess.getTaskSubject();
    if(taskSubject!= null){
      propertiesNode.put(PROPERTY_PROCESS_SUBJECT, mainProcess.getTaskSubject().getExpressionValue());
    }
  
    FormUri formObj = mainProcess.getFormUriObj();
    if(formObj != null){
       propertiesNode.put(PROPERTY_PROCESS_DEFAULT_FORMURI,formObj.getExpression().getValue());
    }
    boolean isVerify = mainProcess.isVerification();
    propertiesNode.put(PROPERTY_PROCESS_IS_VERIFY,isVerify);
    //由于获取流程模型的时候没有loadvariable,所以此处先用emf原始加载的方式加载数据变量,后期可能需要改掉
    List<DataVariable> dataVariables = EMFExtensionUtil.getDataVariables(mainProcess);
    if(dataVariables != null){
      ObjectNode datavariableNode = objectMapper.createObjectNode();
      ArrayNode itemsNode = objectMapper.createArrayNode();
      for(DataVariable dataVariable :dataVariables){
        ObjectNode datavariableItemNode = objectMapper.createObjectNode();
        datavariableItemNode.put(PROPERTY_DATAVARIABLE_ID,dataVariable.getId());
        datavariableItemNode.put(PROPERTY_DATAVARIABLE_TYPE,dataVariable.getDataType());
        datavariableItemNode.put(PROPERTY_DATAVARIABLE_BIZTYPE,dataVariable.getBizType());
        datavariableItemNode.put(PROPERTY_DATAVARIABLE_IS_PERSISTENCE,dataVariable.isIsPersistence());
          Expression expression = dataVariable.getExpression();
          if(expression != null){
            datavariableItemNode.put(PROPERTY_DATAVARIABLE_DEFAULT_VALUE,expression.getValue());
          }
          itemsNode.add(datavariableItemNode);
        }
      datavariableNode.put("totalCount", itemsNode.size());
      datavariableNode.put(EDITOR_PROPERTIES_GENERAL_ITEMS, itemsNode);
        propertiesNode.put(PROPERTY_PROCESS_DATAVARIABLE, datavariableNode);
    }
   
    ConnectorInstanceElm cie = new ConnectorInstanceElm();
View Full Code Here

      lanePropertiesNode.put("bordercolor", "#000000");
      lanePropertiesNode.put(PROPERTY_OVERRIDE_ID, lane.getId());
      lanePropertiesNode.put(PROPERTY_NAME, lane.getName());
     
      laneNode.put(EDITOR_SHAPE_PROPERTIES, lanePropertiesNode);
      ArrayNode dockArrayNode = objectMapper.createArrayNode();
      laneNode.put("dockers", dockArrayNode);
      laneNode.put("outgoing", dockArrayNode);
      shapesArrayNode.add(laneNode);
      ArrayNode elementShapesArrayNode = objectMapper.createArrayNode();
      laneNode.put(EDITOR_CHILD_SHAPES, elementShapesArrayNode);
     
      for (FlowElement flowElement : mainProcess.getFlowElements()) {
        if (lane.getFlowNodeRefs().contains(flowElement)) {
          Class<? extends BaseBpmnJsonConverter> converter = convertersToJsonMap.get(flowElement.getClass());
View Full Code Here

    Map<String, JsonNode> sourceRefMap = new HashMap<String, JsonNode>();
    Map<String, JsonNode> edgeMap = new HashMap<String, JsonNode>();
    Map<String, List<JsonNode>> sourceAndTargetMap = new HashMap<String, List<JsonNode>>();
    readShapeDI(modelNode, 0, 0, shapeMap, sourceRefMap, bpmnModel);
    filterAllEdges(modelNode, edgeMap, sourceAndTargetMap, shapeMap, sourceRefMap);
    ArrayNode shapesArrayNode = (ArrayNode) modelNode.get(EDITOR_CHILD_SHAPES);
    //做pool的时候用
    boolean nonEmptyPoolFound = false;

    if (nonEmptyPoolFound == false) {
        JsonNode processIdNode = JsonConverterUtil.getProperty(PROPERTY_OVERRIDE_ID, modelNode);
View Full Code Here

          //bpmnShape.setBpmnElement(BpmnModelUtil.getBaseElement(bpmnModel, BpmnJsonConverterUtil.getElementId(jsonChildNode)));
          //这里注释掉的以后需要实现 bpmnModel.addGraphicInfo(BpmnJsonConverterUtil.getElementId(jsonChildNode), graphicInfo);
          bpmnModel.getDiagrams().get(0).getPlane().getPlaneElement().add(bpmnShape);
          shapeMap.put(childShapeId, jsonChildNode);
         
          ArrayNode outgoingNode = (ArrayNode) jsonChildNode.get("outgoing");
          if (outgoingNode != null && outgoingNode.size() > 0) {
            for (JsonNode outgoingChildNode : outgoingNode) {
              JsonNode resourceNode = outgoingChildNode.get(EDITOR_SHAPE_ID);
              if (resourceNode != null) {
                sourceRefMap.put(resourceNode.asText(), jsonChildNode);
              }
View Full Code Here

  public void convertToJson(FlowElement flowElement, ActivityProcessor processor,
      Definitions model, ArrayNode shapesArrayNode, double subProcessX, double subProcessY) {
   
    SequenceFlowBehavior sequenceFlow = (SequenceFlowBehavior) flowElement;
    ObjectNode flowNode = BpmnJsonConverterUtil.createChildShape(sequenceFlow.getId(), STENCIL_SEQUENCE_FLOW, 172, 212, 128, 212);
    ArrayNode dockersArrayNode = objectMapper.createArrayNode();
    ObjectNode dockNode = objectMapper.createObjectNode();
    dockNode.put(EDITOR_BOUNDS_X, BpmnModelUtil.getBpmnShape(model, sequenceFlow.getSourceRef().getId()).getBounds().getWidth() / 2.0);
    dockNode.put(EDITOR_BOUNDS_Y, BpmnModelUtil.getBpmnShape(model,sequenceFlow.getSourceRef().getId()).getBounds().getHeight() / 2.0);
    dockersArrayNode.add(dockNode);
   
    BPMNEdge bpmnEdge=BpmnModelUtil.getBpmnEdge(model, sequenceFlow.getId());
   
    if (bpmnEdge.getWaypoint().size() > 2) {
      for (int i = 1; i < bpmnEdge.getWaypoint().size() - 1; i++) {
        Point graphicInfo =  (bpmnEdge.getWaypoint().get(i));
        dockNode = objectMapper.createObjectNode();
        dockNode.put(EDITOR_BOUNDS_X, graphicInfo.getX());
        dockNode.put(EDITOR_BOUNDS_Y, graphicInfo.getY());
        dockersArrayNode.add(dockNode);
      }
    }
   
    dockNode = objectMapper.createObjectNode();
    dockNode.put(EDITOR_BOUNDS_X, BpmnModelUtil.getBpmnShape(model, sequenceFlow.getTargetRef().getId()).getBounds().getWidth() / 2.0);
    dockNode.put(EDITOR_BOUNDS_Y, BpmnModelUtil.getBpmnShape(model, sequenceFlow.getTargetRef().getId()).getBounds().getHeight() / 2.0);
    dockersArrayNode.add(dockNode);
    flowNode.put("dockers", dockersArrayNode);
    ArrayNode outgoingArrayNode = objectMapper.createArrayNode();
    outgoingArrayNode.add(BpmnJsonConverterUtil.createResourceNode(sequenceFlow.getTargetRef().getId()));
    flowNode.put("outgoing", outgoingArrayNode);
    flowNode.put("target", BpmnJsonConverterUtil.createResourceNode(sequenceFlow.getTargetRef().getId()));
   
    ObjectNode propertiesNode = objectMapper.createObjectNode();
    propertiesNode.put(PROPERTY_OVERRIDE_ID, flowElement.getId());
View Full Code Here

 
  private String lookForSourceRef(String flowId, JsonNode childShapesNode) {
    String sourceRef = null;
    if (childShapesNode != null) {
      for (JsonNode childNode : childShapesNode) {
        ArrayNode outgoingNode = (ArrayNode) childNode.get("outgoing");
        if (outgoingNode != null && outgoingNode.size() > 0) {
          for (JsonNode outgoingChildNode : outgoingNode) {
            JsonNode resourceNode = outgoingChildNode.get(EDITOR_SHAPE_ID);
            if (resourceNode != null&& flowId.equals(resourceNode.asText())) {
              sourceRef = BpmnJsonConverterUtil.getElementId(childNode);
              break;
View Full Code Here

  protected void convertElementToJson(ObjectNode propertiesNode, FlowElement flowElement) {
    SubProcess subProcess = (SubProcess) flowElement;
    propertiesNode.put("activitytype", "Sub-Process");
    propertiesNode.put("subprocesstype", "Embedded");
    ArrayNode subProcessShapesArrayNode = objectMapper.createArrayNode();
  
    Bounds graphicInfo =  BpmnModelUtil.getBpmnShape(model, flowElement.getId()).getBounds();
    processor.processFlowElements(subProcess.getFlowElements(), model, subProcessShapesArrayNode,
        graphicInfo.getX(), graphicInfo.getY(),null);
    flowElementNode.put("childShapes", subProcessShapesArrayNode);
View Full Code Here

 
  public ObjectNode convertElementToJson(BaseElementImpl baseElm){
      List<ConnectorInstance> connectorInstances = baseElm.getConnectorInstances();
        if(connectorInstances != null){
          ObjectNode connectorInstanceNode = objectMapper.createObjectNode();
          ArrayNode itemsNode = objectMapper.createArrayNode();
          for(ConnectorInstance connectorInstance: connectorInstances){
            ObjectNode connectorInstanceItemNode = objectMapper.createObjectNode();
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_CONNECTORID, connectorInstance.getConnectorId());
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_PACKAGENAME, connectorInstance.getPackageName());
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_CLASSNAME, connectorInstance.getClassName());
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_CONNECTORINSTANCEID, connectorInstance.getConnectorInstanceId());
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_CONNECTORINSTANCENAME, connectorInstance.getConnectorInstanceName());
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_EVENTTYPE, connectorInstance.getEventType());
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_ERRORHANDLING, connectorInstance.getErrorHandling());
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_ERRORCODE, connectorInstance.getErrorCode());
            connectorInstanceItemNode.put(PROPERTY_CONNECTORINSTANCE_ISTIMEEXECUTE, connectorInstance.isIsTimeExecute());
           
            Documentation documentation = connectorInstance.getDocumentation();
            if(documentation != null){
              ObjectNode documentationItemNode = objectMapper.createObjectNode();
              documentationItemNode.put(PROPERTY_DOCUMENTATION_ID, documentation.getId());
              documentationItemNode.put(PROPERTY_DOCUMENTATION_NAME, documentation.getName());
              documentationItemNode.put(PROPERTY_DOCUMENTATION_VALUE, documentation.getValue());
             
              connectorInstanceItemNode.put(PROPERTY_DOCUMENTATION, documentationItemNode);
            }
           
            List<ConnectorParameterInputs> connectorParameterInputs = connectorInstance.getConnectorParameterInputs();
            if(connectorParameterInputs != null){
                ArrayNode parameterItemsNode = objectMapper.createArrayNode();
                for(ConnectorParameterInputs connectorParameterInput: connectorParameterInputs){
                  ObjectNode connectorParameterInputItemNode = objectMapper.createObjectNode();
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETERINPUTS_ID, connectorParameterInput.getId());
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETERINPUTS_NAME, connectorParameterInput.getName());
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETERINPUTS_DATATYPE, connectorParameterInput.getDataType());
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETERINPUTS_EXPRESSION_ID, connectorParameterInput.getExpression().getId());
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETERINPUTS_EXPRESSION_NAME, connectorParameterInput.getExpression().getName());
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETERINPUTS_EXPRESSION_VALUE, connectorParameterInput.getExpression().getValue());
                 
                  parameterItemsNode.add(connectorParameterInputItemNode);
                }
                connectorInstanceItemNode.put(PROPERTY_CONNECTORPARAMETERINPUTS, parameterItemsNode);
            }
           
            List<ConnectorParameterOutputs> connectorParameterOutputs = connectorInstance.getConnectorParameterOutputs();
            if(connectorParameterOutputs != null){
                ArrayNode parameterItemsNode = objectMapper.createArrayNode();
                for(ConnectorParameterOutputs connectorParameterOutput: connectorParameterOutputs){
                  ObjectNode connectorParameterInputItemNode = objectMapper.createObjectNode();
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTS_VARIABLETARGET, connectorParameterOutput.getVariableTarget());
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTS_EXPRESSION_ID, connectorParameterOutput.getExpression().getId());
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTS_EXPRESSION_NAME, connectorParameterOutput.getExpression().getName());
                  connectorParameterInputItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTS_EXPRESSION_VALUE, connectorParameterOutput.getExpression().getValue());
                 
                  parameterItemsNode.add(connectorParameterInputItemNode);
                }
                connectorInstanceItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTS, parameterItemsNode);
            }
           
            List<ConnectorParameterOutputsDef> connectorParameterOutputsDef = connectorInstance.getConnectorParameterOutputsDef();
            if(connectorParameterOutputsDef != null){
                ArrayNode parameterItemsNode = objectMapper.createArrayNode();
                for(ConnectorParameterOutputsDef cpod: connectorParameterOutputsDef){
                  ObjectNode cpodItemNode = objectMapper.createObjectNode();
                  cpodItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTSDEF_ID, cpod.getId());
                  cpodItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTSDEF_NAME, cpod.getName());
                  cpodItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTSDEF_DATATYPE, cpod.getDataType());
                 
                  parameterItemsNode.add(cpodItemNode);
                }
                connectorInstanceItemNode.put(PROPERTY_CONNECTORPARAMETEROUTPUTSDEF, parameterItemsNode);
            }
           
            SkipComment skipComment = connectorInstance.getSkipComment();
View Full Code Here

TOP

Related Classes of org.codehaus.jackson.node.ArrayNode

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.