Package org.jgroups.conf
Class ClassConfigurator
- java.lang.Object
-
- org.jgroups.conf.ClassConfigurator
-
public class ClassConfigurator extends java.lang.Object
This class will be replaced with the class that read info from the magic number configurator that reads info from the xml file. The name and the relative path of the magic number map file can be specified as value of the propertyorg.jgroups.conf.magicNumberFile
. It must be relative to one of the classpath elements, to allow the classloader to locate the file. If a value is not specified,MagicNumberReader.MAGIC_NUMBER_FILE
is used, which defaults to "jg-magic-map.xml".- Author:
- Filip Hanik, Bela Ban
- See Also:
MagicNumberReader
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.commons.logging.Log
log
-
Constructor Summary
Constructors Constructor Description ClassConfigurator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(short magic, java.lang.Class clazz)
Method to register a user-defined header with jg-magic-map at runtimejava.lang.Class
get(short magic)
Returns a class for a magic number.java.lang.Class
get(java.lang.String clazzname)
Loads and returns the class from the class namestatic ClassConfigurator
getInstance()
static ClassConfigurator
getInstance(boolean init)
short
getMagicNumber(java.lang.Class clazz)
Returns the magic number for the class.short
getMagicNumberFromObjectStreamClass(java.io.ObjectStreamClass objStream)
java.io.ObjectStreamClass
getObjectStreamClassFromMagicNumber(short magic_number)
void
init()
static void
main(java.lang.String[] args)
java.lang.String
printClassMap()
java.lang.String
printMagicMap()
java.lang.String
toString()
-
-
-
Method Detail
-
init
public void init() throws ChannelException
- Throws:
ChannelException
-
getInstance
public static ClassConfigurator getInstance(boolean init) throws ChannelException
- Throws:
ChannelException
-
getInstance
public static ClassConfigurator getInstance() throws ChannelException
- Throws:
ChannelException
-
add
public void add(short magic, java.lang.Class clazz) throws java.lang.IllegalArgumentException
Method to register a user-defined header with jg-magic-map at runtime- Parameters:
magic
- The magic number. Needs to be > 1024clazz
- The class. Usually a subclass of Header- Throws:
java.lang.IllegalArgumentException
- If the magic number is already taken, or the magic number is <= 1024
-
get
public java.lang.Class get(short magic)
Returns a class for a magic number. Returns null if no class is found- Parameters:
magic
- the magic number that maps to the class- Returns:
- a Class object that represents a class that implements java.io.Externalizable
-
get
public java.lang.Class get(java.lang.String clazzname)
Loads and returns the class from the class name- Parameters:
clazzname
- a fully classified class name to be loaded- Returns:
- a Class object that represents a class that implements java.io.Externalizable
-
getMagicNumber
public short getMagicNumber(java.lang.Class clazz)
Returns the magic number for the class.- Parameters:
clazz
- a class object that we want the magic number for- Returns:
- the magic number for a class, -1 if no mapping is available
-
getMagicNumberFromObjectStreamClass
public short getMagicNumberFromObjectStreamClass(java.io.ObjectStreamClass objStream)
-
getObjectStreamClassFromMagicNumber
public java.io.ObjectStreamClass getObjectStreamClassFromMagicNumber(short magic_number)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
printMagicMap
public java.lang.String printMagicMap()
-
printClassMap
public java.lang.String printClassMap()
-
main
public static void main(java.lang.String[] args) throws java.lang.Exception
- Throws:
java.lang.Exception
-
-