From: Erik Brakkee <erik@brakkee.org>
Date: Fri, 16 May 2008 18:15:25 +0000 (+0000)
Subject: (no commit message)
X-Git-Tag: wamblee-utils-0.7~702
X-Git-Url: http://wamblee.org/gitweb/?a=commitdiff_plain;h=5ec164d27af4ca134b17380552038fb9ca6bc143;p=utils

---

diff --git a/system/general/src/main/java/org/wamblee/system/graph/component/package-info.java b/system/general/src/main/java/org/wamblee/system/graph/component/package-info.java
new file mode 100644
index 00000000..f886d788
--- /dev/null
+++ b/system/general/src/main/java/org/wamblee/system/graph/component/package-info.java
@@ -0,0 +1,31 @@
+/**
+ * <h1>Graph component package </h1>
+ * 
+ * The graph component package provides the representation of a number of 
+ * components {@link Component} 
+ * their required and provided interfaces ({@link RequiredInterface} and 
+ * {@link ProvidedInterface}), and how these are connected together.
+ * 
+ * This package provides the bridge between the component model and the 
+ * representation of the components and their connections in a graph. 
+ * The component package provides various algorithms, filters, and 
+ * validations that are required for the implementation of a container. 
+ * 
+ * The main abstractions are: 
+ * <ul>
+ *   <li> {@link ComponentGraph}: A graph of components. This provides the logic
+ *   for creating a graph based on components. </li>
+ *   <li> {@link ComponentNode}: A node representing a component. </li>
+ *   <li> {@link RequiredInterfaceNode}: A node representing a required interface of a component. </li>
+ *   <li> {@link ProvidedInterfaceNode}: A node repesenting a provided interface of a component. </li>
+ *   <li> {@link ExternalRequiredInterfaceNode}: A node representing a required interface of a container </li>
+ *   <li> {@link ExternalProvidedInterfaceNode}: A node representing a provided interface of a container </li>  
+ * </ul> 
+ *
+ */
+package org.wamblee.system.graph.component;
+
+import org.wamblee.system.core.Component;
+import org.wamblee.system.core.ProvidedInterface;
+import org.wamblee.system.core.RequiredInterface;
+
diff --git a/system/general/src/main/java/org/wamblee/system/graph/package-info.java b/system/general/src/main/java/org/wamblee/system/graph/package-info.java
new file mode 100644
index 00000000..6a2318ec
--- /dev/null
+++ b/system/general/src/main/java/org/wamblee/system/graph/package-info.java
@@ -0,0 +1,20 @@
+/**
+ * <h1>Graph package</h1>
+ * 
+ * The graph package provides a general very simple abstraction of a graph. 
+ * It was developed for the IOC container to represent dependences between 
+ * components through their required and provided interfaces.
+ * 
+ * The graph package supports a number of simple graph traversal operations, graph
+ * extension operations, and a visitor pattern. 
+ * 
+ * The main abstractions are: 
+ * <ul>
+ *    <li> {@link Graph}: The graph itself. </li> 
+ *    <li> {@link Node}: A node of a graph. </li>
+ *    <li> {@link Edge}: An edge of a graph> </li>
+ *    <li> {@link Visitor}: A visitor for implementing various operations on a graph. </li>
+ *    <li> {@link EdgeFactory}: For extending the graph with new edges </li>
+ * </ul>
+ */
+package org.wamblee.system.graph;
\ No newline at end of file