com.thoughtworks.xstream.converters.reflection
Class Sun14ReflectionProvider

java.lang.Object
  extended by com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider
      extended by com.thoughtworks.xstream.converters.reflection.Sun14ReflectionProvider
All Implemented Interfaces:
ReflectionProvider

public class Sun14ReflectionProvider
extends PureJavaReflectionProvider

Instantiates a new object on the Sun JVM by bypassing the constructor (meaning code in the constructor will never be executed and parameters do not have to be known). This is the same method used by the internals of standard Java serialization, but relies on internal Sun code that may not be present on all JVMs.

Author:
Joe Walnes, Brian Slesinsky

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.thoughtworks.xstream.converters.reflection.ReflectionProvider
ReflectionProvider.Visitor
 
Field Summary
 
Fields inherited from class com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider
fieldDictionary
 
Constructor Summary
Sun14ReflectionProvider()
           
Sun14ReflectionProvider(FieldDictionary dic)
           
 
Method Summary
 Object newInstance(Class type)
          Creates a new instance of the specified type.
protected  Object readResolve()
           
protected  void validateFieldAccess(Field field)
           
 void writeField(Object object, String fieldName, Object value, Class definedIn)
           
 
Methods inherited from class com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider
fieldDefinedInClass, fieldModifiersSupported, getField, getFieldType, setFieldDictionary, visitSerializableFields
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Sun14ReflectionProvider

public Sun14ReflectionProvider()

Sun14ReflectionProvider

public Sun14ReflectionProvider(FieldDictionary dic)
Method Detail

newInstance

public Object newInstance(Class type)
Description copied from interface: ReflectionProvider
Creates a new instance of the specified type. It is in the responsibility of the implementation how such an instance is created.

Specified by:
newInstance in interface ReflectionProvider
Overrides:
newInstance in class PureJavaReflectionProvider
Parameters:
type - the type to instantiate
Returns:
a new instance of this type

writeField

public void writeField(Object object,
                       String fieldName,
                       Object value,
                       Class definedIn)
Specified by:
writeField in interface ReflectionProvider
Overrides:
writeField in class PureJavaReflectionProvider

validateFieldAccess

protected void validateFieldAccess(Field field)
Overrides:
validateFieldAccess in class PureJavaReflectionProvider

readResolve

protected Object readResolve()
Overrides:
readResolve in class PureJavaReflectionProvider


Copyright © 2004-2014 XStream. All Rights Reserved.