package com.ibm.streamsx.topology.generator.spl;

import java.util.Set;

import com.google.gson.JsonObject;

/**
 * The GComposite interface contains methods for accessing and modifying
 * elements of a JsonObject graph, and encapsulate other objects 
 * with the graphs such as search indexes..
 *
 */
public interface GCompositeDef {
    /**
     * Return the top-level JsonObject graph containing all operators. 
     * @return The JsonObject graph.
     */
    JsonObject getGraph();
    
    /**
     * Returns all operators that have input ports connected to the output 
     * port of the supplied operator.
     * @param op
     * @return A list of downstream operators.
     */
    Set<JsonObject> getDownstream(JsonObject op);
    
    /**
     * Returns all operators that have output ports connected to the input 
     * port of the supplied operator.
     * @param op
     * @return A list of upstream operators.
     */
    Set<JsonObject> getUpstream(JsonObject op);
}

@@ -123,26 +123,72 @@
 omposite
- interface
+Def represents the definition of an SPL composite.%0A * It
  contain
@@ -224,19 +224,16 @@
 odifying
-%0A *
  element
@@ -239,16 +239,20 @@
 ts of a 
+%0A * 
 JsonObje
@@ -291,20 +291,16 @@
 objects 
-%0A * 
 with the
@@ -305,17 +305,19 @@
 he graph
-s
+%0A *
  such as
@@ -332,17 +332,16 @@
 indexes.
-.
 %0A *%0A */%0A

Update GCompositeDef doc.