下面列出了怎么用javax.naming.spi.NamingManager的API类实例代码及写法,或者点击链接到github查看源代码。
public NameParser getNameParser(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
NameParser answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_getNameParser(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_getNameParser(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.getNameParser(e.getRemainingName());
}
return answer;
}
/**
* Encodes an object prior to binding it in the registry. First,
* NamingManager.getStateToBind() is invoked. If the resulting
* object is Remote, it is returned. If it is a Reference or
* Referenceable, the reference is wrapped in a Remote object.
* Otherwise, an exception is thrown.
*
* @param name The object's name relative to this context.
*/
private Remote encodeObject(Object obj, Name name)
throws NamingException, RemoteException
{
obj = NamingManager.getStateToBind(obj, name, this, environment);
if (obj instanceof Remote) {
return (Remote)obj;
}
if (obj instanceof Reference) {
return (new ReferenceWrapper((Reference)obj));
}
if (obj instanceof Referenceable) {
return (new ReferenceWrapper(((Referenceable)obj).getReference()));
}
throw (new IllegalArgumentException(
"RegistryContext: " +
"object to bind must be Remote, Reference, or Referenceable"));
}
public void destroySubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
ctx.p_destroySubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_destroySubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
cctx.destroySubcontext(e.getRemainingName());
}
}
static private javax.naming.Context
getContinuationContext(CannotProceedException cpe)
throws NamingException {
try {
return NamingManager.getContinuationContext(cpe);
} catch (CannotProceedException e) {
java.lang.Object resObj = e.getResolvedObj();
if (resObj instanceof Reference) {
Reference ref = (Reference)resObj;
RefAddr addr = ref.get("nns");
if (addr.getContent() instanceof javax.naming.Context) {
NamingException ne = new NameNotFoundException(
"No object reference bound for specified name");
ne.setRootCause(cpe.getRootCause());
ne.setRemainingName(cpe.getRemainingName());
throw ne;
}
}
throw e;
}
}
static private javax.naming.Context
getContinuationContext(CannotProceedException cpe)
throws NamingException {
try {
return NamingManager.getContinuationContext(cpe);
} catch (CannotProceedException e) {
java.lang.Object resObj = e.getResolvedObj();
if (resObj instanceof Reference) {
Reference ref = (Reference)resObj;
RefAddr addr = ref.get("nns");
if (addr.getContent() instanceof javax.naming.Context) {
NamingException ne = new NameNotFoundException(
"No object reference bound for specified name");
ne.setRootCause(cpe.getRootCause());
ne.setRemainingName(cpe.getRemainingName());
throw ne;
}
}
throw e;
}
}
public void destroySubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
ctx.p_destroySubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_destroySubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
cctx.destroySubcontext(e.getRemainingName());
}
}
public void rename(Name oldName, Name newName)
throws NamingException
{
PartialCompositeContext ctx = this;
Name nm = oldName;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(oldName, env);
try {
ctx.p_rename(nm, newName, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_rename(nm, newName, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
if (e.getRemainingNewName() != null) {
// %%% e.getRemainingNewName() should never be null
newName = e.getRemainingNewName();
}
cctx.rename(e.getRemainingName(), newName);
}
}
public NamingEnumeration<NameClassPair> list(Name name)
throws NamingException
{
PartialCompositeContext ctx = this;
Name nm = name;
NamingEnumeration<NameClassPair> answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_list(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_list(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.list(e.getRemainingName());
}
return answer;
}
public void destroySubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
ctx.p_destroySubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_destroySubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
cctx.destroySubcontext(e.getRemainingName());
}
}
public void unbind(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
ctx.p_unbind(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_unbind(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
cctx.unbind(e.getRemainingName());
}
}
public void rename(Name oldName, Name newName)
throws NamingException
{
PartialCompositeContext ctx = this;
Name nm = oldName;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(oldName, env);
try {
ctx.p_rename(nm, newName, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_rename(nm, newName, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
if (e.getRemainingNewName() != null) {
// %%% e.getRemainingNewName() should never be null
newName = e.getRemainingNewName();
}
cctx.rename(e.getRemainingName(), newName);
}
}
/**
* Encodes an object prior to binding it in the registry. First,
* NamingManager.getStateToBind() is invoked. If the resulting
* object is Remote, it is returned. If it is a Reference or
* Referenceable, the reference is wrapped in a Remote object.
* Otherwise, an exception is thrown.
*
* @param name The object's name relative to this context.
*/
private Remote encodeObject(Object obj, Name name)
throws NamingException, RemoteException
{
obj = NamingManager.getStateToBind(obj, name, this, environment);
if (obj instanceof Remote) {
return (Remote)obj;
}
if (obj instanceof Reference) {
return (new ReferenceWrapper((Reference)obj));
}
if (obj instanceof Referenceable) {
return (new ReferenceWrapper(((Referenceable)obj).getReference()));
}
throw (new IllegalArgumentException(
"RegistryContext: " +
"object to bind must be Remote, Reference, or Referenceable"));
}
/**
* Encodes an object prior to binding it in the registry. First,
* NamingManager.getStateToBind() is invoked. If the resulting
* object is Remote, it is returned. If it is a Reference or
* Referenceable, the reference is wrapped in a Remote object.
* Otherwise, an exception is thrown.
*
* @param name The object's name relative to this context.
*/
private Remote encodeObject(Object obj, Name name)
throws NamingException, RemoteException
{
obj = NamingManager.getStateToBind(obj, name, this, environment);
if (obj instanceof Remote) {
return (Remote)obj;
}
if (obj instanceof Reference) {
return (new ReferenceWrapper((Reference)obj));
}
if (obj instanceof Referenceable) {
return (new ReferenceWrapper(((Referenceable)obj).getReference()));
}
throw (new IllegalArgumentException(
"RegistryContext: " +
"object to bind must be Remote, Reference, or Referenceable"));
}
public void destroySubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
ctx.p_destroySubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_destroySubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
cctx.destroySubcontext(e.getRemainingName());
}
}
public Context createSubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Context answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_createSubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_createSubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.createSubcontext(e.getRemainingName());
}
return answer;
}
public Object lookupLink(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
Object answer;
Name nm = name;
try {
answer = ctx.p_lookupLink(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_lookupLink(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.lookupLink(e.getRemainingName());
}
return answer;
}
static private javax.naming.Context
getContinuationContext(CannotProceedException cpe)
throws NamingException {
try {
return NamingManager.getContinuationContext(cpe);
} catch (CannotProceedException e) {
java.lang.Object resObj = e.getResolvedObj();
if (resObj instanceof Reference) {
Reference ref = (Reference)resObj;
RefAddr addr = ref.get("nns");
if (addr.getContent() instanceof javax.naming.Context) {
NamingException ne = new NameNotFoundException(
"No object reference bound for specified name");
ne.setRootCause(cpe.getRootCause());
ne.setRemainingName(cpe.getRemainingName());
throw ne;
}
}
throw e;
}
}
/**
* Encodes an object prior to binding it in the registry. First,
* NamingManager.getStateToBind() is invoked. If the resulting
* object is Remote, it is returned. If it is a Reference or
* Referenceable, the reference is wrapped in a Remote object.
* Otherwise, an exception is thrown.
*
* @param name The object's name relative to this context.
*/
private Remote encodeObject(Object obj, Name name)
throws NamingException, RemoteException
{
obj = NamingManager.getStateToBind(obj, name, this, environment);
if (obj instanceof Remote) {
return (Remote)obj;
}
if (obj instanceof Reference) {
return (new ReferenceWrapper((Reference)obj));
}
if (obj instanceof Referenceable) {
return (new ReferenceWrapper(((Referenceable)obj).getReference()));
}
throw (new IllegalArgumentException(
"RegistryContext: " +
"object to bind must be Remote, Reference, or Referenceable"));
}
public void bind(Name name, Object newObj) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
ctx.p_bind(nm, newObj, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_bind(nm, newObj, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
cctx.bind(e.getRemainingName(), newObj);
}
}
public NamingEnumeration<NameClassPair> list(Name name)
throws NamingException
{
PartialCompositeContext ctx = this;
Name nm = name;
NamingEnumeration<NameClassPair> answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_list(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_list(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.list(e.getRemainingName());
}
return answer;
}
public void destroySubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
ctx.p_destroySubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
ctx.p_destroySubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
cctx.destroySubcontext(e.getRemainingName());
}
}
public Context createSubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Context answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_createSubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_createSubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.createSubcontext(e.getRemainingName());
}
return answer;
}
public NamingEnumeration<NameClassPair> list(Name name)
throws NamingException
{
PartialCompositeContext ctx = this;
Name nm = name;
NamingEnumeration<NameClassPair> answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_list(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_list(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.list(e.getRemainingName());
}
return answer;
}
public Context createSubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Context answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_createSubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_createSubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.createSubcontext(e.getRemainingName());
}
return answer;
}
public NamingEnumeration<Binding> listBindings(Name name)
throws NamingException
{
PartialCompositeContext ctx = this;
Name nm = name;
NamingEnumeration<Binding> answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_listBindings(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_listBindings(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.listBindings(e.getRemainingName());
}
return answer;
}
public Context createSubcontext(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
Context answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_createSubcontext(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_createSubcontext(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.createSubcontext(e.getRemainingName());
}
return answer;
}
static private javax.naming.Context
getContinuationContext(CannotProceedException cpe)
throws NamingException {
try {
return NamingManager.getContinuationContext(cpe);
} catch (CannotProceedException e) {
java.lang.Object resObj = e.getResolvedObj();
if (resObj instanceof Reference) {
Reference ref = (Reference)resObj;
RefAddr addr = ref.get("nns");
if (addr.getContent() instanceof javax.naming.Context) {
NamingException ne = new NameNotFoundException(
"No object reference bound for specified name");
ne.setRootCause(cpe.getRootCause());
ne.setRemainingName(cpe.getRemainingName());
throw ne;
}
}
throw e;
}
}
/**
* Encodes an object prior to binding it in the registry. First,
* NamingManager.getStateToBind() is invoked. If the resulting
* object is Remote, it is returned. If it is a Reference or
* Referenceable, the reference is wrapped in a Remote object.
* Otherwise, an exception is thrown.
*
* @param name The object's name relative to this context.
*/
private Remote encodeObject(Object obj, Name name)
throws NamingException, RemoteException
{
obj = NamingManager.getStateToBind(obj, name, this, environment);
if (obj instanceof Remote) {
return (Remote)obj;
}
if (obj instanceof Reference) {
return (new ReferenceWrapper((Reference)obj));
}
if (obj instanceof Referenceable) {
return (new ReferenceWrapper(((Referenceable)obj).getReference()));
}
throw (new IllegalArgumentException(
"RegistryContext: " +
"object to bind must be Remote, Reference, or Referenceable"));
}
public NameParser getNameParser(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Name nm = name;
NameParser answer;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
try {
answer = ctx.p_getNameParser(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_getNameParser(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.getNameParser(e.getRemainingName());
}
return answer;
}
public Object lookup(Name name) throws NamingException {
PartialCompositeContext ctx = this;
Hashtable<?,?> env = p_getEnvironment();
Continuation cont = new Continuation(name, env);
Object answer;
Name nm = name;
try {
answer = ctx.p_lookup(nm, cont);
while (cont.isContinue()) {
nm = cont.getRemainingName();
ctx = getPCContext(cont);
answer = ctx.p_lookup(nm, cont);
}
} catch (CannotProceedException e) {
Context cctx = NamingManager.getContinuationContext(e);
answer = cctx.lookup(e.getRemainingName());
}
return answer;
}