code style improvements.
[utils] / test / enterprise / src / main / java / org / wamblee / support / jndi / StubInitialContext.java
index 4db8a1126f4a3358e3d3aacf20af7f59740d9d94..e0fd8079fb8919e5d82a0ab6ff511747260f9149 100644 (file)
@@ -12,7 +12,7 @@
  * 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.support.jndi;
 
 import java.util.HashMap;
@@ -20,9 +20,15 @@ import java.util.Map;
 
 import javax.naming.InitialContext;
 import javax.naming.Name;
+import javax.naming.NameNotFoundException;
 import javax.naming.NamingException;
 
-public class StubInitialContext extends InitialContext {
+/**
+ * Initial context implementation. 
+ * 
+ * @author Erik Brakkee
+ */
+class StubInitialContext extends InitialContext {
     private Map<String, Object> bindings = new HashMap<String, Object>();
 
     public StubInitialContext() throws NamingException {
@@ -33,14 +39,33 @@ public class StubInitialContext extends InitialContext {
     public void bind(String aName, Object aObj) throws NamingException {
         bindings.put(aName, aObj);
     }
+    
+    @Override
+    public void unbind(String aName) throws NamingException {
+        bindings.remove(aName);
+    }
 
     @Override
     public Object lookup(String aName) throws NamingException {
-        return bindings.get(aName);
+        Object value = bindings.get(aName);
+        if (value == null) {
+            throw new NameNotFoundException(aName);
+        }
+        return value;
+    }
+    
+    @Override
+    public void bind(Name aName, Object aObj) throws NamingException {
+        bind(aName.toString(), aObj);
+    }
+    
+    @Override
+    public void unbind(Name aName) throws NamingException {
+        unbind(aName.toString());
     }
 
     @Override
     public Object lookup(Name aName) throws NamingException {
-        return super.lookup(aName.toString());
+        return lookup(aName.toString());
     }
 }