public class WritableContext extends AbstractFederatedContext
| Modifier and Type | Class and Description |
|---|---|
class |
WritableContext.NestedWritableContext
Nested context which shares the absolute index map in MapContext.
|
| Modifier and Type | Field and Description |
|---|---|
private boolean |
assumeDereferenceBound |
private java.util.concurrent.atomic.AtomicReference<java.util.Map<java.lang.String,java.lang.Object>> |
bindingsRef |
private boolean |
cacheReferences |
private boolean |
checkDereferenceDifferent |
private java.util.concurrent.atomic.AtomicReference<java.util.Map<java.lang.String,java.lang.Object>> |
indexRef |
private boolean |
supportReferenceable |
private java.util.concurrent.locks.Lock |
writeLock |
| Constructor and Description |
|---|
WritableContext() |
WritableContext(java.lang.String nameInNamespace) |
WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings) |
WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings,
boolean cacheReferences) |
WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings,
ContextAccess contextAccess) |
WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings,
ContextAccess contextAccess,
boolean cacheReferences) |
WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings,
ContextAccess contextAccess,
boolean cacheReferences,
boolean supportReferenceable,
boolean checkDereferenceDifferent,
boolean assumeDereferenceBound) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addBinding(java.util.concurrent.atomic.AtomicReference<java.util.Map<java.lang.String,java.lang.Object>> bindingsRef,
java.lang.String name,
java.lang.String nameInNamespace,
java.lang.Object value,
boolean rebind) |
protected boolean |
addBinding(java.lang.String name,
java.lang.Object value,
boolean rebind) |
private void |
addToIndex(java.lang.String name,
java.lang.Object value) |
private static java.util.Map<java.lang.String,java.lang.Object> |
buildIndex(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings) |
javax.naming.Context |
createNestedSubcontext(java.lang.String path,
java.util.Map<java.lang.String,java.lang.Object> bindings)
Creates a nested subcontext instance.
|
protected java.lang.Object |
getDeepBinding(java.lang.String name)
Gets the object bound to the name.
|
protected java.util.Map<java.lang.String,java.lang.Object> |
getWrapperBindings() |
private boolean |
removeBinding(java.util.concurrent.atomic.AtomicReference<java.util.Map<java.lang.String,java.lang.Object>> bindingsRef,
java.lang.String name,
java.lang.String nameInNamespace,
boolean removeNotEmptyContext) |
protected boolean |
removeBinding(java.lang.String name,
boolean removeNotEmptyContext)
Removes the binding from the context.
|
private java.util.Map<java.lang.String,java.lang.Object> |
removeFromIndex(java.lang.String name) |
addFederatedContext, faultLookup, getBinding, getBindings, getBindings, getMasterContext, isNestedSubcontext, removeFederatedContextaddBinding, addDeepBinding, addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, createSubcontextTree, destroySubcontext, destroySubcontext, 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, removeDeepBinding, removeFromEnvironment, rename, rename, unbind, unbindprivate final java.util.concurrent.locks.Lock writeLock
private final java.util.concurrent.atomic.AtomicReference<java.util.Map<java.lang.String,java.lang.Object>> bindingsRef
private final java.util.concurrent.atomic.AtomicReference<java.util.Map<java.lang.String,java.lang.Object>> indexRef
private final boolean cacheReferences
private final boolean supportReferenceable
private final boolean checkDereferenceDifferent
private final boolean assumeDereferenceBound
public WritableContext()
throws javax.naming.NamingException
javax.naming.NamingExceptionpublic WritableContext(java.lang.String nameInNamespace)
throws javax.naming.NamingException
javax.naming.NamingExceptionpublic WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings)
throws javax.naming.NamingException
javax.naming.NamingExceptionpublic WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings,
boolean cacheReferences)
throws javax.naming.NamingException
javax.naming.NamingExceptionpublic WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings,
ContextAccess contextAccess)
throws javax.naming.NamingException
javax.naming.NamingExceptionpublic WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings,
ContextAccess contextAccess,
boolean cacheReferences)
throws javax.naming.NamingException
javax.naming.NamingExceptionpublic WritableContext(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings,
ContextAccess contextAccess,
boolean cacheReferences,
boolean supportReferenceable,
boolean checkDereferenceDifferent,
boolean assumeDereferenceBound)
throws javax.naming.NamingException
javax.naming.NamingExceptionprotected boolean addBinding(java.lang.String name,
java.lang.Object value,
boolean rebind)
throws javax.naming.NamingException
addBinding in class AbstractFederatedContextjavax.naming.NamingExceptionprotected void addBinding(java.util.concurrent.atomic.AtomicReference<java.util.Map<java.lang.String,java.lang.Object>> bindingsRef,
java.lang.String name,
java.lang.String nameInNamespace,
java.lang.Object value,
boolean rebind)
throws javax.naming.NamingException
javax.naming.NamingExceptionprivate void addToIndex(java.lang.String name,
java.lang.Object value)
protected boolean removeBinding(java.lang.String name,
boolean removeNotEmptyContext)
throws javax.naming.NamingException
AbstractContextremoveBinding in class AbstractFederatedContextname - name under which the value should be boundremoveNotEmptyContext - ??? TODO figure this outjavax.naming.NamingException - if a problem occurs during the bind such as a value already being boundprivate boolean removeBinding(java.util.concurrent.atomic.AtomicReference<java.util.Map<java.lang.String,java.lang.Object>> bindingsRef,
java.lang.String name,
java.lang.String nameInNamespace,
boolean removeNotEmptyContext)
throws javax.naming.NamingException
javax.naming.NamingExceptionprivate java.util.Map<java.lang.String,java.lang.Object> removeFromIndex(java.lang.String name)
public javax.naming.Context createNestedSubcontext(java.lang.String path,
java.util.Map<java.lang.String,java.lang.Object> bindings)
throws javax.naming.NamingException
NestedContextFactorypath - the path to the new nested contextbindings - the initial bindings for the contextjavax.naming.NamingException - on errorprivate static java.util.Map<java.lang.String,java.lang.Object> buildIndex(java.lang.String nameInNamespace,
java.util.Map<java.lang.String,java.lang.Object> bindings)
protected java.lang.Object getDeepBinding(java.lang.String name)
AbstractContextgetDeepBinding in class AbstractFederatedContextname - the nameprotected java.util.Map<java.lang.String,java.lang.Object> getWrapperBindings()
throws javax.naming.NamingException
getWrapperBindings in class AbstractFederatedContextjavax.naming.NamingException