Package edu.indiana.extreme.xbaya.graph

Examples of edu.indiana.extreme.xbaya.graph.Node


    GraphCanvas canvas = this.engine.getGUI().newGraphCanvas(true);

    // we can call with null because WSDL is already accessed at this point
    WSComponent workflowComponent = new StreamReceiveComponent(oldWorkflow
        .getOdeInvokableWSDL(null, null));
    Node workflowNode = canvas.addNode(workflowComponent, new Point(600,
        100));
    //
    this.engine.getWorkflow().getWSDLs().put(
        ((StreamReceiveNode) workflowNode).getWSDLID(),
        oldWorkflow.getOdeWorkflowWSDL(null, null));

    URLComponentRegistry serviceRegistry = new URLComponentRegistry(
        new URI(
            "https://pagodatree.cs.indiana.edu:17443/axis2/services/CEPService?wsdl"));

    new ComponentRegistryLoader(engine).load(serviceRegistry);
    ComponentTreeNode cepComponent = (ComponentTreeNode) serviceRegistry
        .getComponentTree().getChildAt(0);

    Node cepNode = canvas.addNode(cepComponent.getComponentReference()
        .getComponent(), new Point(300, 50));

    Graph graph = this.engine.getGUI().getGraphCanvas().getGraph();
    List<DataPort> cepOutPorts = cepNode.getOutputPorts();
    int count = 0;
    InputComponent inputComponent = new InputComponent();
    LinkedList<InputNode> inputNodes = getStaticInputNodes(oldWorkflow);
    List<DataPort> workflowInPorts = workflowNode.getInputPorts();

    for (InputNode inputNode : inputNodes) {

      List<Port> streamedInputOutPorts = inputNode.getOutputPort(0)
          .getToPorts();
      for (Port streamedInputOutPort : streamedInputOutPorts) {
        for (DataPort dataPort : workflowInPorts) {
          if (dataPort.getName().equals(
              ((DataPort) streamedInputOutPort).getName())) {
            InputNode newNode = (InputNode) canvas.addNode(
                inputComponent, new Point(250 + 5 * count,
                    200 + count * 50));
            graph.addEdge(newNode.getOutputPort(0), dataPort);
            newNode.setDefaultValue(inputNode.getDefaultValue());
            break;
          }
        }

      }
      ++count;
    }
    for (DataPort dataPort : workflowInPorts) {
      if (dataPort.getFromNode() == null) {
        graph.addEdge(cepOutPorts.get(0), dataPort);
      }
    }

    List<DataPort> inputs = cepNode.getInputPorts();
    count = 0;
    for (DataPort dataPort : inputs) {
      Node inputNode = canvas.addNode(inputComponent, new Point(
          5 + 5 * count, 5 + count * 50));
      graph.addEdge(inputNode.getOutputPort(0), dataPort);
      ++count;
    }
    OutputComponent outputComponent = new OutputComponent();
    List<DataPort> outputPorts = workflowNode.getOutputPorts();

    count = 0;
    for (DataPort dataPort : outputPorts) {
      Node outNode = canvas.addNode(outputComponent, new Point(
          900 + count * 5, 100 + count * 50));
      graph.addEdge(dataPort, outNode.getInputPort(0));
      ++count;
    }

  }
View Full Code Here


   * @param location
   *            The location to add the node.
   */
  public synchronized Node addNode(Component component, Point location) {
    if (component != null) {
      Node node = this.workflow.addNode(component);
      node.setPosition(location);
      selectNode(node);
      updateSize();
      this.panel.repaint();
      return node;
    }
View Full Code Here

     * or deselect node if it is already selected
     */
    Point point = event.getPoint();
    GraphPiece clicked = this.graph.getGUI().getGraphPieceAt(point);
    if ((clicked instanceof Node) && this.multipleSelectedNodes != null) {
      Node node = (Node) clicked;
      if (!this.crtlPressed) {
        selectNode(node);
      }
      return;
    }
View Full Code Here

    deselectNode();
    deselectEdge();

    if (selected instanceof Node) {
      Node node = (Node) selected;
      selectNode(node);
      if (!node.getGUI().isInConfig(point)) {
        this.draggedNode = node;
        node.getGUI().setDraggedFlag(true);
        this.panel.setCursor(SwingUtil.MOVE_CURSOR);
      }

    } else if (selected instanceof Port) {
      Port port = (Port) selected;
View Full Code Here

  private void mouseMoved(MouseEvent event) {
    Point point = event.getPoint();
    GraphPiece graphPiece = this.graph.getGUI().getGraphPieceAt(point);
    if (graphPiece instanceof Node) {
      Node node = (Node) graphPiece;
      if (node.getGUI().isInConfig(point)) {
        this.panel.setCursor(SwingUtil.HAND_CURSOR);
      } else {
        this.panel.setCursor(SwingUtil.DEFAULT_CURSOR);
      }
    } else if (graphPiece instanceof Port) {
View Full Code Here

    if (this.selectedNode != null) {

      ArrayList<Node> exploreNodes = new ArrayList<Node>();
      exploreNodes.add(this.selectedNode);
      while (exploreNodes.size() != 0) {
        Node node = exploreNodes.get(0);
        List<DataPort> outputPorts = node.getOutputPorts();
        for (DataPort dataPort : outputPorts) {
          exploreNodes.addAll(dataPort.getToNodes());
        }
        node.getGUI().setBodyColor(NodeGUI.DEFAULT_BODY_COLOR);

        exploreNodes.remove(0);
      }
      this.repaint();
    }
View Full Code Here

        createInputNodes(graph, originalFromPorts);

        // Set default values.
        for (WSPort originalFromPort : originalFromPorts) {
            // TODO handle the case that node is not WSNode.
            Node originalFromNode = originalFromPort.getNode();
            String fromNodeID = originalFromNode.getID();
            String output;
            if (originalFromNode instanceof InputNode) {
                // notification that includes the input of the workflow.
                output = getWorkflowInput(fromNodeID);
            } else if (originalFromNode instanceof WSNode) {
                // Retrieve input value from notification.
                WSComponent component = ((WSNode) originalFromNode)
                        .getComponent();
                String messageName = component.getOutputTypeName();
                String parameterName = originalFromPort.getComponentPort()
                        .getName();
                output = getOutput(fromNodeID, messageName, parameterName);
            } else {
                // This should not happen.
                throw new XBayaRuntimeException(originalFromNode.getClass()
                        .getName());
            }
            Port originalToPort = originalFromPort.getToPorts().get(0);
            PortImpl toPort = graph.getPort(originalToPort.getID());
            InputNode inputNode = (InputNode) toPort.getFromNode();
View Full Code Here

            if (NodeState.FINISHED.color.equals(color)) {
                finishedNodes.add(node);
            }
        }
        for (Node finishedNode : finishedNodes) {
            Node node = graph.getNode(finishedNode.getID());
            graph.removeNode(node);
        }
    }
View Full Code Here

TOP

Related Classes of edu.indiana.extreme.xbaya.graph.Node

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.