站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > JBoss 4.0.1 sp1 server API Documentation 英文版文档

NonSerializableFactory (JBoss Server API) - JBoss 4.0.1 sp1 server API Documentation 英文版文档


org.jboss.naming
Class NonSerializableFactory

java.lang.Object
  extended byorg.jboss.naming.NonSerializableFactory
All Implemented Interfaces:
ObjectFactory

public class NonSerializableFactory
extends Object
implements ObjectFactory

A utility class that allows one to bind a non-serializable object into a local JNDI context. The binding will only be valid for the lifetime of the VM in which the JNDI InitialContext lives. An example usage code snippet is: // The non-Serializable object to bind Object nonserializable = ...; // An arbitrary key to use in the StringRefAddr. The best key is the jndi // name that the object will be bound under. String key = ...; // This places nonserializable into the NonSerializableFactory hashmap under key NonSerializableFactory.rebind(key, nonserializable); Context ctx = new InitialContext(); // Bind a reference to nonserializable using NonSerializableFactory as the ObjectFactory String className = nonserializable.getClass().getName(); String factory = NonSerializableFactory.class.getName(); StringRefAddr addr = new StringRefAddr("nns", key); Reference memoryRef = new Reference(className, addr, factory, null); ctx.rebind(key, memoryRef); Or you can use the rebind(Context, String, Object) convience method to simplify the number of steps to: Context ctx = new InitialContext(); // The non-Serializable object to bind Object nonserializable = ...; // The jndiName that the object will be bound into ctx with String jndiName = ...; // This places nonserializable into the NonSerializableFactory hashmap under key NonSerializableFactory.rebind(ctx, jndiName, nonserializable); To unbind the object, use the following code snippet: new InitialContext().unbind(key); NonSerializableFactory.unbind(key);

Version:
$Revision: 1.11 $
Author:
Scott Stark.
See Also:
ObjectFactory, rebind(Context, String, Object)

Constructor Summary
NonSerializableFactory()
           
 
Method Summary
static void bind(String key, Object target)
          Place an object into the NonSerializableFactory namespace for subsequent access by getObject.
 Object getObjectInstance(Object obj, Name name, Context nameCtx, Hashtable env)
          Transform the obj Reference bound into the JNDI namespace into the actual non-Serializable object.
static Object lookup(Name name)
          Lookup a value from the NonSerializableFactory map.
static Object lookup(String key)
          Lookup a value from the NonSerializableFactory map.
static void rebind(Context ctx, String key, Object target)
          A convience method that simplifies the process of rebinding a non-zerializable object into a JNDI context.
static void rebind(Name name, Object target)
          A convience method that simplifies the process of rebinding a non-zerializable object into a JNDI context.
static void rebind(Name name, Object target, boolean createSubcontexts)
          A convience method that simplifies the process of rebinding a non-zerializable object into a JNDI context.
static void rebind(String key, Object target)
          Place or replace an object in the NonSerializableFactory namespce for subsequent access by getObject.
static void unbind(Name name)
          Remove a binding from the NonSerializableFactory map.
static void unbind(String key)
          Remove a binding from the NonSerializableFactory map.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NonSerializableFactory

public NonSerializableFactory()
Method Detail

bind

public static void bind(String key,
                        Object target)
                 throws NameAlreadyBoundException
Place an object into the NonSerializableFactory namespace for subsequent access by getObject. There cannot be an already existing binding for key.

Throws:
NameAlreadyBoundException, - thrown if key already exists in the NonSerializableFactory map
NameAlreadyBoundException

rebind

public static void rebind(String key,
                          Object target)
Place or replace an object in the NonSerializableFactory namespce for subsequent access by getObject. Any existing binding for key will be replaced by target.


unbind

public static void unbind(String key)
                   throws NameNotFoundException
Remove a binding from the NonSerializableFactory map.

Throws:
NameNotFoundException, - thrown if key does not exist in the NonSerializableFactory map
NameNotFoundException

unbind

public static void unbind(Name name)
                   throws NameNotFoundException
Remove a binding from the NonSerializableFactory map.

Throws:
NameNotFoundException, - thrown if key does not exist in the NonSerializableFactory map
NameNotFoundException

lookup

public static Object lookup(String key)
Lookup a value from the NonSerializableFactory map.

Returns:
the object bound to key is one exists, null otherwise.

lookup

public static Object lookup(Name name)
Lookup a value from the NonSerializableFactory map.

Returns:
the object bound to key is one exists, null otherwise.

rebind

public static void rebind(Context ctx,
                          String key,
                          Object target)
                   throws NamingException
A convience method that simplifies the process of rebinding a non-zerializable object into a JNDI context.

Throws:
NamingException, - thrown on failure to rebind key into ctx.
NamingException

rebind

public static void rebind(Name name,
                          Object target)
                   throws NamingException
A convience method that simplifies the process of rebinding a non-zerializable object into a JNDI context. This version binds the target object into the default IntitialContext using name path.

Throws:
NamingException, - thrown on failure to rebind key into ctx.
NamingException

rebind

public static void rebind(Name name,
                          Object target,
                          boolean createSubcontexts)
                   throws NamingException
A convience method that simplifies the process of rebinding a non-zerializable object into a JNDI context. This version binds the target object into the default IntitialContext using name path.

Throws:
NamingException, - thrown on failure to rebind key into ctx.
NamingException

getObjectInstance

public Object getObjectInstance(Object obj,
                                Name name,
                                Context nameCtx,
                                Hashtable env)
                         throws Exception
Transform the obj Reference bound into the JNDI namespace into the actual non-Serializable object.

Specified by:
getObjectInstance in interface ObjectFactory
Returns:
the non-Serializable object associated with the obj Reference if one exists, null if one does not.
Throws:
Exception


Copyright © 2002 JBoss Group, LLC. All Rights Reserved.