(no commit message)
[utils] / system / general / src / main / java / org / wamblee / system / core / Component.java
index e70baa23d2f9b0a5b5da13bc1adeaed30bb35211..4ffeadf73b954bda01774b02839c87baea6a1c1c 100644 (file)
@@ -1,12 +1,12 @@
 /*
- * Copyright 2007 the original author or authors.
- *
+ * Copyright 2005-2010 the original author or authors.
+ * 
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- *
+ * 
  *      http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -17,100 +17,82 @@ package org.wamblee.system.core;
 
 import java.util.List;
 
-
 /**
- * A component represents a part of a system that requires a 
- * number of interfaces and provides a number of interfaces.
+ * A component represents a part of a system that requires a number of
+ * interfaces and provides a number of interfaces.
+ * 
+ * The component interface provides the meta-data for a component. After calling
+ * {@link #start(Scope)}, an actual runtime representation of the component can
+ * be created which is independent of this component. As a special case, the
+ * runtime representation may be identical to the component instance but in
+ * general it is not. This allows a component to be used as a factory for
+ * creating objects.
  * 
- * The component interface provides the meta-data for a component. 
- * After calling {@link #start(Scope)}, an actual runtime representation of the
- * component can be created which is independent of this component. 
- * As a special case, the runtime representation may be identical to the 
- * component instance but in general it is not. This allows a component to be 
- * used as a factory for creating objects. 
  * 
- *
  * @author Erik Brakkee
  */
 public interface Component<Type> {
     /**
      * Gets the name of the subsystem.
-     *
+     * 
      * @return Subsystem name.
      */
     String getName();
 
     /**
      * Prepends the context with a super context.
-     *
-     * @param aContext DOCUMENT ME!
+     * 
      */
     void addContext(String aContext);
 
     /**
      * Getst the context.
-     *
+     * 
      * @return Context or null if not set.
      */
     String getContext();
 
     /**
-     * Gets the fully qualified name of the component which includes
-     * the context of the component.   This method can only be used after the
-     * component has started.
-     *
+     * Gets the fully qualified name of the component which includes the context
+     * of the component. This method can only be used after the component has
+     * started.
+     * 
      * @return Qualified name.
      */
     String getQualifiedName();
 
     /**
-     * DOCUMENT ME!
-     *
-     * @return DOCUMENT ME!
+     * Gets a description of the provided interfaces.
+     * 
+     * @return Provided interfaces.
      */
-/**
-     * DOCUMENT ME!
-     *
-     * @return DOCUMENT ME!
-     */
-/**
-         * Gets a description of the provided interfaces. 
-         * @return Provided interfaces. 
-         */
     List<ProvidedInterface> getProvidedInterfaces();
 
     /**
-     * DOCUMENT ME!
-     *
-     * @return DOCUMENT ME!
+     * Gets a description of the required interfaces.
+     * 
+     * @return Required interfaces.
      */
-/**
-     * DOCUMENT ME!
-     *
-     * @return DOCUMENT ME!
-     */
-/**
-         * Gets a description of the required interfaces. 
-         * @return Required interfaces. 
-         */
     List<RequiredInterface> getRequiredInterfaces();
 
     /**
-     * Initialises the subsystem by starting all the services that it
-     * described as provided.
-     *
-     * @param aScope Scope with external interface implementations that are
-     *        available. The component  must publish its runtime and its
-     *        provided interfaces in this scope.
-     *
+     * Initialises the subsystem by starting all the services that it described
+     * as provided.
+     * 
+     * @param aScope
+     *            Scope with external interface implementations that are
+     *            available. The component must publish its runtime and its
+     *            provided interfaces in this scope.
+     * 
      * @return Gets an object representing the runtime of the component.
      */
     Type start(Scope aScope);
 
     /**
      * Stops a component.
-     *
-     * @param aRuntime THe runtime part of the component.
+     * 
+     * @param aRuntime
+     *            THe runtime part of the component.
      */
     void stop(Type aRuntime);
 }