Class CodegenCopierBase
- java.lang.Object
-
- org.glassfish.pfl.dynamic.copyobject.impl.CodegenCopierBase
-
- All Implemented Interfaces:
ClassCopierOrdinaryImpl.ClassFieldCopier
public abstract class CodegenCopierBase extends java.lang.Object implements ClassCopierOrdinaryImpl.ClassFieldCopier
Base class for generated class copiers. Note that this class makes use of the unsafe copier through the Bridge class. Because of this, CodegenCopierBase could potentially be used to bypass security restrictions. Consequently, this class must be referenced inside a doPrivileged block, and a derived class must have the permissions needed for the Bridge class.
-
-
Field Summary
Fields Modifier and Type Field Description private static Bridgebridgeprivate PipelineClassCopierFactoryfactoryprivate static java.security.PermissiongetBridgePermission
-
Constructor Summary
Constructors Constructor Description CodegenCopierBase(PipelineClassCopierFactory factory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcopyBoolean(long offset, java.lang.Object src, java.lang.Object dest)protected voidcopyByte(long offset, java.lang.Object src, java.lang.Object dest)protected voidcopyChar(long offset, java.lang.Object src, java.lang.Object dest)protected voidcopyDouble(long offset, java.lang.Object src, java.lang.Object dest)protected voidcopyFloat(long offset, java.lang.Object src, java.lang.Object dest)protected voidcopyInt(long offset, java.lang.Object src, java.lang.Object dest)protected voidcopyLong(long offset, java.lang.Object src, java.lang.Object dest)protected voidcopyObject(java.util.Map<java.lang.Object,java.lang.Object> oldToNew, long offset, java.lang.Object src, java.lang.Object dest)protected voidcopyShort(long offset, java.lang.Object src, java.lang.Object dest)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.glassfish.pfl.dynamic.copyobject.impl.ClassCopierOrdinaryImpl.ClassFieldCopier
copy
-
-
-
-
Field Detail
-
bridge
private static final Bridge bridge
-
getBridgePermission
private static final java.security.Permission getBridgePermission
-
factory
private PipelineClassCopierFactory factory
-
-
Constructor Detail
-
CodegenCopierBase
public CodegenCopierBase(PipelineClassCopierFactory factory)
-
-
Method Detail
-
copyObject
protected final void copyObject(java.util.Map<java.lang.Object,java.lang.Object> oldToNew, long offset, java.lang.Object src, java.lang.Object dest) throws ReflectiveCopyException- Throws:
ReflectiveCopyException
-
copyByte
protected final void copyByte(long offset, java.lang.Object src, java.lang.Object dest)
-
copyChar
protected final void copyChar(long offset, java.lang.Object src, java.lang.Object dest)
-
copyShort
protected final void copyShort(long offset, java.lang.Object src, java.lang.Object dest)
-
copyInt
protected final void copyInt(long offset, java.lang.Object src, java.lang.Object dest)
-
copyLong
protected final void copyLong(long offset, java.lang.Object src, java.lang.Object dest)
-
copyFloat
protected final void copyFloat(long offset, java.lang.Object src, java.lang.Object dest)
-
copyDouble
protected final void copyDouble(long offset, java.lang.Object src, java.lang.Object dest)
-
copyBoolean
protected final void copyBoolean(long offset, java.lang.Object src, java.lang.Object dest)
-
-