The NamingShell Application
The rest of the examples in this
chapter are going to be based on the NamingShell
code shown in Example 7-2.
NamingShell
is an extensible JNDI shell that
enables us to perform naming operations in any JNDI-accessible naming
system. The shell provides methods for getting and setting the
current object and other shell-related details, and it also keeps
track of the name of the current object, something a
Context
can’t do for itself.
Example 7-2. The NamingShell Class
import java.io.*; import java.util.*; import javax.naming.*; class NamingShell { // Private variables private static Hashtable COMMAND_TABLE = new Hashtable( ); private static String JNDIPROPS_FILENAME = ".jndienv"; private static String PROMPT = "[no initial context]"; private static String VERSION = "1.0"; private static Context CURRENT_CONTEXT, INITIAL_CONTEXT; private static String CURRENT_NAME, INITIAL_NAME; private static boolean RUNNING = true; // Shell operations private static void exit(int status) { System.exit(status); } // Accessor methods public static Hashtable getCommands( ) { return COMMAND_TABLE; } public static Context getCurrentContext( ) { return CURRENT_CONTEXT; } public static String getCurrentName( ) { return CURRENT_NAME; } public static String getDefaultPropsFilename( ) { return JNDIPROPS_FILENAME; } public static Context getInitialContext( ) { return INITIAL_CONTEXT; } public static String getInitialName( ) { return INITIAL_NAME; } public static String getPrompt( ...
Get Java Enterprise in a Nutshell, Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.