Package org.apache.xbean.naming.context
Class ImmutableContext.NestedImmutableContext
- java.lang.Object
-
- org.apache.xbean.naming.context.AbstractContext
-
- org.apache.xbean.naming.context.ImmutableContext.NestedImmutableContext
-
- All Implemented Interfaces:
java.io.Serializable,javax.naming.Context,NestedContextFactory
- Enclosing class:
- ImmutableContext
public final class ImmutableContext.NestedImmutableContext extends AbstractContext
Nested context which shares the absolute index map in MapContext.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description NestedImmutableContext(java.lang.String path, java.util.Map<java.lang.String,java.lang.Object> bindings)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanaddBinding(java.lang.String name, java.lang.Object value, boolean rebind)protected voidaddDeepBinding(java.lang.String name, java.lang.Object value, boolean createIntermediateContexts)javax.naming.ContextcreateNestedSubcontext(java.lang.String path, java.util.Map<java.lang.String,java.lang.Object> bindings)Creates a nested subcontext instance.protected java.util.Map<java.lang.String,java.lang.Object>getBindings()Gets a map of the bindings for the current node (i.e., no names with slashes).protected java.lang.ObjectgetDeepBinding(java.lang.String name)Gets the object bound to the name.protected ImmutableContextgetImmutableContext()booleanisNestedSubcontext(java.lang.Object value)Is the specified value an instance of a nested contextprotected booleanremoveBinding(java.lang.String name, boolean removeNotEmptyContext)Removes the binding from the context.protected voidremoveDeepBinding(javax.naming.Name name, boolean pruneEmptyContexts)-
Methods inherited from class org.apache.xbean.naming.context.AbstractContext
addBinding, addDeepBinding, addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, createSubcontextTree, destroySubcontext, destroySubcontext, faultLookup, getBinding, getContextAccess, getEnvironment, getNameInNamespace, getNameInNamespace, getNameInNamespace, getNameParser, getNameParser, getNameParser, getParsedNameInNamespace, getSize, isEmpty, list, list, list, listBindings, listBindings, listBindings, lookup, lookup, lookup, lookupFinalContext, lookupLink, lookupLink, rebind, rebind, removeDeepBinding, removeFromEnvironment, rename, rename, unbind, unbind
-
-
-
-
Method Detail
-
getDeepBinding
protected java.lang.Object getDeepBinding(java.lang.String name)
Description copied from class:AbstractContextGets the object bound to the name. The name may contain slashes.- Overrides:
getDeepBindingin classAbstractContext- Parameters:
name- the name- Returns:
- the object bound to the name, or null if not found
-
getBindings
protected java.util.Map<java.lang.String,java.lang.Object> getBindings()
Description copied from class:AbstractContextGets a map of the bindings for the current node (i.e., no names with slashes). This method must not return null.- Specified by:
getBindingsin classAbstractContext- Returns:
- a Map from binding name to binding value
-
addDeepBinding
protected final void addDeepBinding(java.lang.String name, java.lang.Object value, boolean createIntermediateContexts) throws javax.naming.NamingException- Throws:
javax.naming.NamingException
-
addBinding
protected final boolean addBinding(java.lang.String name, java.lang.Object value, boolean rebind) throws javax.naming.NamingException- Specified by:
addBindingin classAbstractContext- Throws:
javax.naming.NamingException
-
removeDeepBinding
protected final void removeDeepBinding(javax.naming.Name name, boolean pruneEmptyContexts) throws javax.naming.NamingException- Overrides:
removeDeepBindingin classAbstractContext- Throws:
javax.naming.NamingException
-
removeBinding
protected final boolean removeBinding(java.lang.String name, boolean removeNotEmptyContext) throws javax.naming.NamingExceptionDescription copied from class:AbstractContextRemoves the binding from the context. The name will not contain a path and the value will not be a nested context although it may be a foreign context.- Specified by:
removeBindingin classAbstractContext- Parameters:
name- name under which the value should be boundremoveNotEmptyContext- ??? TODO figure this out- Returns:
- whether removal was successful
- Throws:
javax.naming.NamingException- if a problem occurs during the bind such as a value already being bound
-
isNestedSubcontext
public boolean isNestedSubcontext(java.lang.Object value)
Description copied from interface:NestedContextFactoryIs the specified value an instance of a nested context- Parameters:
value- the value to inspect- Returns:
- true if the specified value an instance of a nested context; false otherwise
-
createNestedSubcontext
public javax.naming.Context createNestedSubcontext(java.lang.String path, java.util.Map<java.lang.String,java.lang.Object> bindings)Description copied from interface:NestedContextFactoryCreates a nested subcontext instance. This does not cause the nested context to be bound.- Parameters:
path- the path to the new nested contextbindings- the initial bindings for the context- Returns:
- the new nested context
-
getImmutableContext
protected ImmutableContext getImmutableContext()
-
-