/*
- * Copyright 2008 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.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
package org.wamblee.system.core;
import java.util.List;
-
/**
- * A scope represents a set of running services and the runtime information for the
- * started components and is (usually) the result of
- * starting a container.
+ * A scope represents a set of running services and the runtime information for
+ * the started components and is (usually) the result of starting a container.
*
* @author Erik Brakkee
*/
public interface Scope {
/**
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
+ * Gets the provided interfaces by this scope.
+ *
+ * @return Provided interfaces.
*/
-/**
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
-/**
- * Gets the provided interfaces by this scope.
- * @return Provided interfaces.
- */
List<ProvidedInterface> getProvidedInterfaces();
/**
* Adds a key value pair to the scope.
- *
- * @param aKey Key
- * @param aValue Value.
+ *
+ * @param aKey
+ * Key
+ * @param aValue
+ * Value.
*/
void put(String aKey, Object aValue);
/**
* Retrieves a value for the key.
- *
- * @param aKey Key.
- *
+ *
+ * @param aKey
+ * Key.
+ *
* @return Value.
*/
Object get(String aKey);
/**
* Adds the runtime of a started component.
- *
- * @param aComponent Component.
- * @param aRuntime Runtime.
+ *
+ * @param aComponent
+ * Component.
+ * @param aRuntime
+ * Runtime.
*/
void addRuntime(Component aComponent, Object aRuntime);
/**
* Publishes an implementation of a provided interface.
- *
- * @param aInterface Interface that is provided.
- * @param aImplementation Implementation of the interface.
+ *
+ * @param aInterface
+ * Interface that is provided.
+ * @param aImplementation
+ * Implementation of the interface.
*/
void publishInterface(ProvidedInterface aInterface, Object aImplementation);
- /**
- * DOCUMENT ME!
- *
- * @param <T> DOCUMENT ME!
- * @param aProvided DOCUMENT ME!
- * @param aType DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
<T> T getInterfaceImplementation(ProvidedInterface aProvided, Class<T> aType);
/**
* Gets the runtime for a component.
- *
- * @param aComponent Component for which we want to get the runtime.
- *
+ *
+ * @param aComponent
+ * Component for which we want to get the runtime.
+ *
* @return Runtime.
*/
Object getRuntime(Component aComponent);
/**
- * Gets the runtime for a component based on the name of the
- * component (excluding its context).
- *
- * @param aName Component name.
- *
+ * Gets the runtime for a component based on the name of the component
+ * (excluding its context).
+ *
+ * @param aName
+ * Component name.
+ *
* @return Component name.
*/
Object getRuntime(String aName);