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 Bridge
bridge
private PipelineClassCopierFactory
factory
private static java.security.Permission
getBridgePermission
-
Constructor Summary
Constructors Constructor Description CodegenCopierBase(PipelineClassCopierFactory factory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
copyBoolean(long offset, java.lang.Object src, java.lang.Object dest)
protected void
copyByte(long offset, java.lang.Object src, java.lang.Object dest)
protected void
copyChar(long offset, java.lang.Object src, java.lang.Object dest)
protected void
copyDouble(long offset, java.lang.Object src, java.lang.Object dest)
protected void
copyFloat(long offset, java.lang.Object src, java.lang.Object dest)
protected void
copyInt(long offset, java.lang.Object src, java.lang.Object dest)
protected void
copyLong(long offset, java.lang.Object src, java.lang.Object dest)
protected void
copyObject(java.util.Map<java.lang.Object,java.lang.Object> oldToNew, long offset, java.lang.Object src, java.lang.Object dest)
protected void
copyShort(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)
-
-