import org.wamblee.system.core.Scope;
import org.wamblee.system.core.SystemAssemblyException;
import org.wamblee.system.graph.CompositeEdgeFilter;
-import org.wamblee.system.graph.EdgeFilter;
import org.wamblee.system.graph.component.ComponentGraph;
+import org.wamblee.system.graph.component.ConnectExternalProvidedProvidedFilter;
+import org.wamblee.system.graph.component.ConnectRequiredExternallyRequiredEdgeFilter;
import org.wamblee.system.graph.component.ConnectRequiredProvidedEdgeFilter;
-import org.wamblee.system.graph.component.RequiredProvidedEdgeFactory;
/**
* Container consisting of multiple components.
public void connectRequiredProvided(String aClientComponent, String aRequiredInterface,
String aServerComponent, String aProvidedInterface) {
checkSealed();
+ // TODO validate
_edgeFilter.add(new ConnectRequiredProvidedEdgeFilter(aClientComponent, aRequiredInterface, aServerComponent, aProvidedInterface));
}
+ /**
+ * Explicitly connects a externally required interface to an internally required interface.
+ * @param aComponent Component requiring the interface (must be non-null).
+ * @param aRequiredInterface Required interface of the component (must be non-null).
+ * @param aExternalRequiredInterface Externally required interface (must be non-null).
+ */
public void connectExternalRequired(String aComponent, String aRequiredInterface,
String aExternalRequiredInterface) {
checkSealed();
- // TODO implement.
- throw new RuntimeException("not implemented");
+ // TODO validate
+ _edgeFilter.add(new ConnectRequiredExternallyRequiredEdgeFilter(
+ aComponent, aRequiredInterface, aExternalRequiredInterface));
}
public void connectExternalProvided(String aExternalProvided, String aComponent, String aProvidedInterface) {
checkSealed();
- // TODO implement.
- throw new RuntimeException("not implemented");
+ // TODO validate
+ _edgeFilter.add(new ConnectExternalProvidedProvidedFilter(aExternalProvided, aComponent, aProvidedInterface));
}