Package org.simpleframework.xml.core
Class InstanceFactory.ClassInstance
java.lang.Object
org.simpleframework.xml.core.InstanceFactory.ClassInstance
- All Implemented Interfaces:
Instance
- Enclosing class:
InstanceFactory
The
ClassInstance object is used to create an object
by using a Class to determine the type. If the given
class can not be instantiated then this throws an exception when
the instance is requested. For performance an instantiator is
given as it contains a reflection cache for constructors.-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionThis method is used to acquire an instance of the type that is defined by this object.getType()This is the type of the object instance that will be created by thegetInstancemethod.booleanThis is used to determine if the type is a reference type.setInstance(Object value) This method is used acquire the value from the type and if possible replace the value for the type.
-
Field Details
-
value
This represents the value of the instance if it is set. -
type
This is the type of the instance that is to be created.
-
-
Constructor Details
-
ClassInstance
Constructor for theClassInstanceobject. This is used to create an instance of the specified type. If the given type can not be instantiated then an exception is thrown.- Parameters:
type- this is the type that is to be instantiated
-
-
Method Details
-
getInstance
This method is used to acquire an instance of the type that is defined by this object. If for some reason the type can not be instantiated an exception is thrown from this.- Specified by:
getInstancein interfaceInstance- Returns:
- an instance of the type this object represents
- Throws:
Exception
-
setInstance
This method is used acquire the value from the type and if possible replace the value for the type. If the value can not be replaced then an exception should be thrown. This is used to allow primitives to be inserted into a graph.- Specified by:
setInstancein interfaceInstance- Parameters:
value- this is the value to insert as the type- Returns:
- an instance of the type this object represents
- Throws:
Exception
-
getType
This is the type of the object instance that will be created by thegetInstancemethod. This allows the deserialization process to perform checks against the field. -
isReference
public boolean isReference()This is used to determine if the type is a reference type. A reference type is a type that does not require any XML deserialization based on its annotations. Values that are references could be substitutes objects or existing ones.- Specified by:
isReferencein interfaceInstance- Returns:
- this returns true if the object is a reference
-