Package org.jbpm.pvm.internal.model

Examples of org.jbpm.pvm.internal.model.ActivityImpl


    RepositorySession repositorySession = environment.get(RepositorySession.class);
    ProcessDefinitionImpl processDefinition = (ProcessDefinitionImpl) repositorySession.findProcessDefinitionById(processDefinitionId);
    if (processDefinition==null) {
      throw new JbpmException("process definition "+processDefinitionId+" doesn't exist");
    }
    ActivityImpl activity = processDefinition.findActivity(activityName);
    if (activity==null) {
      throw new JbpmException("activity '"+activityName+"' doesn't exist in process definition "+processDefinitionId);
    }
    return activity.getCoordinates();
  }
View Full Code Here


    }
   
    String initialStateName = null;
    if (element.hasAttribute("initial")) {
      initialStateName = element.getAttribute("initial");
      ActivityImpl initial = (ActivityImpl) lifeCycleProcess.getActivity(initialStateName);
      if (initial!=null) {
        lifeCycleProcess.setInitial(initial);
      } else {
        parse.addProblem("initial "+initialStateName+" doesn't exist", element);
      }
View Full Code Here

    if (! element.hasAttribute("name")) {
      parse.addProblem("state doesn't have a name: "+XmlUtil.toString(element), element);
      return;
    }
    String stateName = element.getAttribute("name");
    ActivityImpl state = (ActivityImpl) lifeCycleProcess.getActivity(stateName);
   
    List<Element> transitionElements = XmlUtil.elements(element, "transition");
    for (Element transitionElement: transitionElements) {
      parseTransition(transitionElement, state, parse);
    }
View Full Code Here

    if (! element.hasAttribute("to")) {
      parse.addProblem("transition "+transitionName+" doesn't have a to attribute indicating the destination state: "+XmlUtil.toString(element), element);
      return;
    }
    String destinationName = element.getAttribute("to");
    ActivityImpl destination = (ActivityImpl) state.getProcessDefinition().getActivity(destinationName);
    if (destination!=null) {
      TransitionImpl transition = state.createOutgoingTransition();
      transition.setDestination(destination);
      transition.setName(transitionName);
    } else {
View Full Code Here

    if (! element.hasAttribute("name")) {
      parse.addProblem("state doesn't have an id: "+XmlUtil.toString(element), element);
      return;
    }
    String stateName = element.getAttribute("name");
    ActivityImpl state = lifeCycleProcess.createActivity(stateName);
    state.setActivityBehaviour(new LifeCycleState());
  }
View Full Code Here

      if (activityBinding == null) {
        log.debug("unrecognized activity: " + tagName);
        continue;
      }

      ActivityImpl activity = compositeElement.createActivity();
      parse.contextStackPush(activity);
      try {
        activity.setType(activityBinding.getTagName());
        activityBinding.parseName(nestedElement, activity, parse);
        parseTransitions(nestedElement, activity, parse);

        Element descriptionElement = XmlUtil.element(documentElement, "description");
        if (descriptionElement!=null) {
          String description = XmlUtil.getContentText(descriptionElement);
          activity.setDescription(description);
        }

        String continuationText = XmlUtil.attribute(nestedElement, "continue");
        if (continuationText!=null) {
          if ("async".equals(continuationText)) {
            activity.setContinuation(Continuation.ASYNCHRONOUS);
          } else if ("exclusive".equals(continuationText)) {
            activity.setContinuation(Continuation.EXCLUSIVE);
          }
        }

        Object parseResult = activityBinding.parse(nestedElement, parse, this);
        if (parseResult instanceof ActivityBehaviour) {
          ActivityBehaviour activityBehaviour = (ActivityBehaviour) parseResult;
          activity.setActivityBehaviour(activityBehaviour);
        } else {
          Descriptor activityBehaviourDescriptor = (Descriptor) parseResult;
          activity.setActivityBehaviourDescriptor(activityBehaviourDescriptor);
        }

        parseOnEvents(nestedElement, parse, activity);

        String g = XmlUtil.attribute(nestedElement, "g");
        if (g == null) continue;

        StringTokenizer stringTokenizer = new StringTokenizer(g, ",");
        ActivityCoordinatesImpl coordinates = null;
        if (stringTokenizer.countTokens() == 4) {
          try {
            int x = Integer.parseInt(stringTokenizer.nextToken());
            int y = Integer.parseInt(stringTokenizer.nextToken());
            int width = Integer.parseInt(stringTokenizer.nextToken());
            int height = Integer.parseInt(stringTokenizer.nextToken());
            coordinates = new ActivityCoordinatesImpl(x, y, width, height);
          } catch (NumberFormatException e) {
            coordinates = null;
          }
        }
        if (coordinates != null) {
          activity.setCoordinates(coordinates);
        } else {
          parse.addProblem("invalid coordinates g=\"" + g + "\" in " + activity, nestedElement);
        }
      } finally {
        parse.contextStackPop();
View Full Code Here

  }

  public Object parseJpdl(Element element, Parse parse, JpdlParser parser) {
    GroupActivity groupActivity = new GroupActivity();
   
    ActivityImpl activity = parse.contextStackFind(ActivityImpl.class);

    parser.parseActivities(element, parse, activity);

    return groupActivity;
  }
View Full Code Here

      return decisionHandlerActivity;
    }
   
    boolean hasConditions = false;
    List<Element> transitionElements = XmlUtil.elements(element, "transition");
    ActivityImpl activity = parse.contextStackFind(ActivityImpl.class);
    List<TransitionImpl> transitions = (List) activity.getOutgoingTransitions();
   
    for (int i=0; i<transitionElements.size(); i++) {
      TransitionImpl transition = transitions.get(i);
      Element transitionElement = transitionElements.get(i);
View Full Code Here

  public StartBinding() {
    super("start");
  }

  public Object parseJpdl(Element element, Parse parse, JpdlParser parser) {
    ActivityImpl startActivity = parse.contextStackFind(ActivityImpl.class);
    JpdlProcessDefinition processDefinition = parse.contextStackFind(JpdlProcessDefinition.class);
   
    if (processDefinition.getInitial()==null) {
      processDefinition.setInitial(startActivity);
     
    } else if (startActivity.getParentActivity()==null) {
      parse.addProblem("multiple start events not yet supported", element);
    }
   
    StartActivity startActivityBehaviour = new StartActivity();
   
View Full Code Here

TOP

Related Classes of org.jbpm.pvm.internal.model.ActivityImpl

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.