Class CopyobjectDefaults
- java.lang.Object
-
- org.glassfish.pfl.dynamic.copyobject.spi.CopyobjectDefaults
-
public abstract class CopyobjectDefaults extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private static ObjectCopier
javaStream
private static ObjectCopier
referenceObjectCopier
private static ObjectCopierFactory
referenceObjectCopierFactory
-
Constructor Summary
Constructors Modifier Constructor Description private
CopyobjectDefaults()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ObjectCopierFactory
getReferenceObjectCopierFactory()
Obtain the reference object "copier".static ObjectCopierFactory
makeFallbackObjectCopierFactory(ObjectCopierFactory f1, ObjectCopierFactory f2)
Create a fallback copier factory from the two ObjectCopierFactory arguments.static ObjectCopierFactory
makeJavaStreamObjectCopierFactory()
static ObjectCopierFactory
makeReflectObjectCopierFactory()
Obtain the new reflective copier factory.
-
-
-
Field Detail
-
javaStream
private static final ObjectCopier javaStream
-
referenceObjectCopier
private static final ObjectCopier referenceObjectCopier
-
referenceObjectCopierFactory
private static ObjectCopierFactory referenceObjectCopierFactory
-
-
Method Detail
-
makeJavaStreamObjectCopierFactory
public static ObjectCopierFactory makeJavaStreamObjectCopierFactory()
-
getReferenceObjectCopierFactory
public static ObjectCopierFactory getReferenceObjectCopierFactory()
Obtain the reference object "copier". This does no copies: it just returns whatever is passed to it.
-
makeFallbackObjectCopierFactory
public static ObjectCopierFactory makeFallbackObjectCopierFactory(ObjectCopierFactory f1, ObjectCopierFactory f2)
Create a fallback copier factory from the two ObjectCopierFactory arguments. This copier makes an ObjectCopierFactory that creates instances of a fallback copier that first tries an ObjectCopier created from f1, then tries one created from f2, if the first throws a ReflectiveCopyException.
-
makeReflectObjectCopierFactory
public static ObjectCopierFactory makeReflectObjectCopierFactory()
Obtain the new reflective copier factory. This is 3-4 times faster than the stream copier, and about 10% faster than the old reflective copier. It should normally be used with a fallback copier, as there are some classes that simply cannot be copied reflectively.
-
-