Package org.jbpm.wire.operation

Examples of org.jbpm.wire.operation.SubscribeOperation


*
*/
public class SubscribeBinding implements Binding {

  public Object parse(Element element, Parse parse, Parser parser) {
    SubscribeOperation subscribeOperation = new SubscribeOperation();

    // these are the different ways of specifying observables:
    // <subscribe [context='contextName'] [event(s)='...']... /> will use the context as the observable
    // <subscribe [context='contextName'] object(s)='objectName' [event(s)='...'] ... /> will use the object(s) with the given name in the specified context
    // <subscribe [context='contextName'] to='wire-events' event(s)='...' [object(s)='...'] ... /> will listen to wire events of a specific object in the specified context

    // context
    String contextName = XmlUtil.attribute(element, "context");
    subscribeOperation.setContextName(contextName);

    // to
    String to = XmlUtil.attribute(element, "to");
    if ("wire-events".equalsIgnoreCase(to)) {
      subscribeOperation.setWireEvents(true);
    }

    // events
    List<String> eventNames = XmlUtil.parseList(element, "event");
    subscribeOperation.setEventNames(eventNames);

    // objects
    List<String> objectNames = XmlUtil.parseList(element, "object");
    subscribeOperation.setObjectNames(objectNames);

    // method & args
    String methodName = XmlUtil.attribute(element, "method");
    subscribeOperation.setMethodName(methodName);
    List<Element> argElements = XmlUtil.elements(element, "arg");
    WireParser wireParser = (WireParser) parser;
    List<ArgDescriptor> argDescriptors = wireParser.parseArgs(argElements, parse);
    subscribeOperation.setArgDescriptors(argDescriptors);

   return subscribeOperation;
  }
View Full Code Here


      ReferenceDescriptor connectionDescriptor = new ReferenceDescriptor();
      connectionDescriptor.setValue(connectionName);
      argDescriptor.setDescriptor(connectionDescriptor);
    }

    SubscribeOperation subscribeOperation = new SubscribeOperation();
    subscribeOperation.setWireEvents(false);
    persistenceSessionDescriptor.addOperation(subscribeOperation);
   
    return persistenceSessionDescriptor;
  }
View Full Code Here

TOP

Related Classes of org.jbpm.wire.operation.SubscribeOperation

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.