source code formatting.
[utils] / system / general / src / main / java / org / wamblee / system / core / DefaultScope.java
index 3e15ea9c8f5a6eec5a9695545d12fdd1c172c6b4..7cfd2cab390266ae169a13da6efcb630e970e9cd 100644 (file)
@@ -1,12 +1,12 @@
 /*
  * Copyright 2008 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.
@@ -22,90 +22,194 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+
+/**
+ * DOCUMENT ME!
+ *
+ * @author $author$
+ * @version $Revision$
+ */
 public class DefaultScope implements Scope {
+    /**
+     * DOCUMENT ME!
+     */
+    private List<Scope> parents;
+
+    /**
+     * DOCUMENT ME!
+     */
+    private Map<String, Object> properties;
+
+    /**
+     * DOCUMENT ME!
+     */
+    private Map<String, Object> runtimes;
+
+    /**
+     * DOCUMENT ME!
+     */
+    private Map<ProvidedInterface, ProvidedInterfaceImplementation> provided;
+
+    /**
+     * DOCUMENT ME!
+     */
+    private List<ProvidedInterface> externallyProvided;
+
+/**
+     * Creates a new DefaultScope object.
+     *
+     * @param aExternallyProvided DOCUMENT ME!
+     */
+    public DefaultScope(List<ProvidedInterface> aExternallyProvided) {
+        this(aExternallyProvided.toArray(new ProvidedInterface[0]));
+    }
+
+/**
+     * Creates a new DefaultScope object.
+     *
+     * @param aExternallyProvided DOCUMENT ME!
+     */
+    public DefaultScope(ProvidedInterface[] aExternallyProvided) {
+        this(aExternallyProvided, new ArrayList<Scope>());
+    }
+
+/**
+     * Creates a new DefaultScope object.
+     *
+     * @param aExternallyProvided DOCUMENT ME!
+     * @param aParent DOCUMENT ME!
+     */
+    public DefaultScope(ProvidedInterface[] aExternallyProvided, Scope aParent) {
+        this(aExternallyProvided, Arrays.asList(new Scope[] { aParent }));
+    }
+
+/**
+     * Creates a new DefaultScope object.
+     *
+     * @param aExternallyProvided DOCUMENT ME!
+     * @param aParent DOCUMENT ME!
+     */
+    public DefaultScope(ProvidedInterface[] aExternallyProvided,
+        List<Scope> aParent) {
+        parents                = new ArrayList<Scope>(aParent);
+        properties             = new HashMap<String, Object>();
+        runtimes               = new HashMap<String, Object>();
+        provided               = new HashMap<ProvidedInterface, ProvidedInterfaceImplementation>();
+        externallyProvided     = new ArrayList<ProvidedInterface>();
+        externallyProvided.addAll(Arrays.asList(aExternallyProvided));
+    }
+
+    /**
+     * DOCUMENT ME!
+     *
+     * @return DOCUMENT ME!
+     */
+    @Override
+    public List<ProvidedInterface> getProvidedInterfaces() {
+        return Collections.unmodifiableList(externallyProvided);
+    }
+
+    /**
+     * DOCUMENT ME!
+     *
+     * @param aKey DOCUMENT ME!
+     *
+     * @return DOCUMENT ME!
+     */
+    @Override
+    public Object get(String aKey) {
+        return properties.get(aKey);
+    }
+
+    /**
+     * DOCUMENT ME!
+     *
+     * @param aKey DOCUMENT ME!
+     * @param aValue DOCUMENT ME!
+     */
+    @Override
+    public void put(String aKey, Object aValue) {
+        properties.put(aKey, aValue);
+    }
+
+    /**
+     * DOCUMENT ME!
+     *
+     * @param aComponent DOCUMENT ME!
+     * @param aRuntime DOCUMENT ME!
+     */
+    @Override
+    public void addRuntime(Component aComponent, Object aRuntime) {
+        runtimes.put(aComponent.getName(), aRuntime);
+    }
+
+    /**
+     * DOCUMENT ME!
+     *
+     * @param aComponent DOCUMENT ME!
+     *
+     * @return DOCUMENT ME!
+     */
+    @Override
+    public Object getRuntime(Component aComponent) {
+        return runtimes.get(aComponent.getName());
+    }
+
+    /**
+     * DOCUMENT ME!
+     *
+     * @param aName DOCUMENT ME!
+     *
+     * @return DOCUMENT ME!
+     */
+    @Override
+    public Object getRuntime(String aName) {
+        return runtimes.get(aName);
+    }
+
+    /**
+     * DOCUMENT ME!
+     *
+     * @param aInterface DOCUMENT ME!
+     * @param aImplementation DOCUMENT ME!
+     */
+    @Override
+    synchronized public void publishInterface(ProvidedInterface aInterface,
+        Object aImplementation) {
+        provided.put(aInterface,
+            new ProvidedInterfaceImplementation(aInterface, aImplementation));
+    }
+
+    /**
+     * DOCUMENT ME!
+     *
+     * @param <T> DOCUMENT ME!
+     * @param aInterface DOCUMENT ME!
+     * @param aType DOCUMENT ME!
+     *
+     * @return DOCUMENT ME!
+     */
+    @Override
+    public <T> T getInterfaceImplementation(ProvidedInterface aInterface,
+        Class<T> aType) {
+        if (aInterface == null) {
+            return null;
+        }
+
+        ProvidedInterfaceImplementation providedIntf = provided.get(aInterface);
+
+        if (providedIntf == null) {
+            for (Scope parent : parents) {
+                T impl = parent.getInterfaceImplementation(aInterface, aType);
+
+                if (impl != null) {
+                    return impl;
+                }
+            }
 
-       private List<Scope> parents;
-       private Map<String, Object> properties;
-       private Map<String, Object> runtimes;
-       private Map<ProvidedInterface, ProvidedInterfaceImplementation> provided;
-       private List<ProvidedInterface> externallyProvided;
-       
-       public DefaultScope(List<ProvidedInterface>aExternallyProvided) { 
-           this(aExternallyProvided.toArray(new ProvidedInterface[0]));
-       }
-
-       public DefaultScope(ProvidedInterface[] aExternallyProvided) {
-               this(aExternallyProvided, new ArrayList<Scope>());
-       }
-
-       public DefaultScope(ProvidedInterface[] aExternallyProvided, Scope aParent) {
-               this(aExternallyProvided, Arrays.asList(new Scope[] { aParent }));
-       }
-
-       public DefaultScope(ProvidedInterface[] aExternallyProvided,
-                       List<Scope> aParent) {
-               parents = new ArrayList<Scope>(aParent);
-               properties = new HashMap<String, Object>();
-               runtimes = new HashMap<String, Object>();
-               provided = new HashMap<ProvidedInterface, ProvidedInterfaceImplementation>();
-               externallyProvided = new ArrayList<ProvidedInterface>(); 
-               externallyProvided.addAll(Arrays.asList(aExternallyProvided));
-       }
-
-       @Override
-       public List<ProvidedInterface> getProvidedInterfaces() {
-               return Collections.unmodifiableList(externallyProvided);
-       }
-
-       @Override
-       public Object get(String aKey) {
-               return properties.get(aKey);
-       }
-
-       @Override
-       public void put(String aKey, Object aValue) {
-               properties.put(aKey, aValue);
-       }
-
-       @Override
-       public void addRuntime(Component aComponent, Object aRuntime) {
-               runtimes.put(aComponent.getName(), aRuntime);
-       }
-
-       @Override
-       public Object getRuntime(Component aComponent) {
-               return runtimes.get(aComponent.getName());
-       }
-       
-       @Override
-       public Object getRuntime(String aName) {
-           return runtimes.get(aName);
-       }
-
-       @Override
-       synchronized public void publishInterface(ProvidedInterface aInterface,
-                       Object aImplementation) {
-               provided.put(aInterface, new ProvidedInterfaceImplementation(aInterface,
-                               aImplementation));
-       }
-
-       @Override
-       public <T> T getInterfaceImplementation(ProvidedInterface aInterface,
-                       Class<T> aType) {
-               if ( aInterface == null ) { 
-                       return null; 
-               } 
-               ProvidedInterfaceImplementation providedIntf = provided.get(aInterface);
-               if (providedIntf == null) {
-                       for (Scope parent : parents) {
-                               T impl = parent.getInterfaceImplementation(aInterface, aType);
-                               if ( impl != null ) { 
-                                       return impl; 
-                               }
-                       }
-                       return null; 
-               } else {
-                       return providedIntf.getImplementation(aType);
-               }
-       }
+            return null;
+        } else {
+            return providedIntf.getImplementation(aType);
+        }
+    }
 }