001 /** 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017 package org.apache.xbean.naming.context; 018 019 import javax.naming.Context; 020 import javax.naming.NamingException; 021 import javax.naming.Name; 022 import javax.naming.NamingEnumeration; 023 import javax.naming.NameParser; 024 import java.util.Hashtable; 025 026 /** 027 * @version $Rev$ $Date$ 028 */ 029 public abstract class ContextFlyweight implements Context { 030 protected abstract Context getContext() throws NamingException; 031 032 public void close() throws NamingException { 033 } 034 035 public String getNameInNamespace() throws NamingException { 036 return getContext().getNameInNamespace(); 037 } 038 039 public Object lookup(Name name) throws NamingException { 040 return getContext().lookup(name); 041 } 042 043 public Object lookup(String name) throws NamingException { 044 return getContext().lookup(name); 045 } 046 047 public void bind(Name name, Object obj) throws NamingException { 048 getContext().bind(name, obj); 049 } 050 051 public void bind(String name, Object obj) throws NamingException { 052 getContext().bind(name, obj); 053 } 054 055 public void rebind(Name name, Object obj) throws NamingException { 056 getContext().rebind(name, obj); 057 } 058 059 public void rebind(String name, Object obj) throws NamingException { 060 getContext().rebind(name, obj); 061 } 062 063 public void unbind(Name name) throws NamingException { 064 getContext().unbind(name); 065 } 066 067 public void unbind(String name) throws NamingException { 068 getContext().unbind(name); 069 } 070 071 public void rename(Name oldName, Name newName) throws NamingException { 072 getContext().rename(oldName, newName); 073 } 074 075 public void rename(String oldName, String newName) throws NamingException { 076 getContext().rename(oldName, newName); 077 } 078 079 public NamingEnumeration list(Name name) throws NamingException { 080 return getContext().list(name); 081 } 082 083 public NamingEnumeration list(String name) throws NamingException { 084 return getContext().list(name); 085 } 086 087 public NamingEnumeration listBindings(Name name) throws NamingException { 088 return getContext().listBindings(name); 089 } 090 091 public NamingEnumeration listBindings(String name) throws NamingException { 092 return getContext().listBindings(name); 093 } 094 095 public void destroySubcontext(Name name) throws NamingException { 096 getContext().destroySubcontext(name); 097 } 098 099 public void destroySubcontext(String name) throws NamingException { 100 getContext().destroySubcontext(name); 101 } 102 103 public Context createSubcontext(Name name) throws NamingException { 104 return getContext().createSubcontext(name); 105 } 106 107 public Context createSubcontext(String name) throws NamingException { 108 return getContext().createSubcontext(name); 109 } 110 111 public Object lookupLink(Name name) throws NamingException { 112 return getContext().lookupLink(name); 113 } 114 115 public Object lookupLink(String name) throws NamingException { 116 return getContext().lookupLink(name); 117 } 118 119 public NameParser getNameParser(Name name) throws NamingException { 120 return getContext().getNameParser(name); 121 } 122 123 public NameParser getNameParser(String name) throws NamingException { 124 return getContext().getNameParser(name); 125 } 126 127 public Name composeName(Name name, Name prefix) throws NamingException { 128 return getContext().composeName(name, prefix); 129 } 130 131 public String composeName(String name, String prefix) throws NamingException { 132 return getContext().composeName(name, prefix); 133 } 134 135 public Object addToEnvironment(String propName, Object propVal) throws NamingException { 136 return getContext().addToEnvironment(propName, propVal); 137 } 138 139 public Object removeFromEnvironment(String propName) throws NamingException { 140 return getContext().removeFromEnvironment(propName); 141 } 142 143 public Hashtable getEnvironment() throws NamingException { 144 return getContext().getEnvironment(); 145 } 146 }