Skip navigation links
org.eclipse.persistence.tools.weaving.jpa
Class StaticWeaveClassTransformer
java.lang.Object
org.eclipse.persistence.tools.weaving.jpa.StaticWeaveClassTransformer
-
public class StaticWeaveClassTransformer
- extends java.lang.Object
Description: This class provides the implementation of class transformer by leveraging on the following existing APIs,
- PersistenceUnitProcessor.processORMetadata() - get class descriptor.
- PersistenceUnitProcessor.buildEntityList() - get entity classes lsit.
- TransformerFactory.createTransformerAndModifyProject - get class transformer.
Responsibilities:
- Create the classtransformer for each persistence unit individually and store them into the list.
- Provide class transfom method to perform weaving function.
Field Summary |
private java.lang.ClassLoader |
aClassLoader
|
private java.util.ArrayList<javax.persistence.spi.ClassTransformer> |
classTransformers
|
(package private) org.eclipse.persistence.internal.jpa.StaticWeaveInfo |
info
|
Constructor Summary |
StaticWeaveClassTransformer(java.net.URL inputArchiveURL, java.lang.ClassLoader aclassloader)
Constructs an instance of StaticWeaveClassTransformer. |
StaticWeaveClassTransformer(java.net.URL inputArchiveURL, java.lang.String persistenceXMLLocation, java.lang.ClassLoader aclassloader, java.io.Writer logWriter, int loglevel)
Constructs an instance of StaticWeaveClassTransformer. |
Method Summary |
private void |
buildClassTransformers(java.net.URL inputArchiveURL, java.lang.String persistenceXMLLocation, java.lang.ClassLoader aclassloader)
The method creates classtransformer list corresponding to each persistence unit. |
byte[] |
transform(java.lang.String originalClassName, java.lang.Class originalClass, byte[] originalClassBytes)
The method performs weaving function on the given class. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
classTransformers
private java.util.ArrayList<javax.persistence.spi.ClassTransformer> classTransformers
info
org.eclipse.persistence.internal.jpa.StaticWeaveInfo info
aClassLoader
private java.lang.ClassLoader aClassLoader
StaticWeaveClassTransformer
public StaticWeaveClassTransformer(java.net.URL inputArchiveURL,
java.lang.ClassLoader aclassloader)
throws java.lang.Exception
- Constructs an instance of StaticWeaveClassTransformer.
- Throws:
java.lang.Exception
StaticWeaveClassTransformer
public StaticWeaveClassTransformer(java.net.URL inputArchiveURL,
java.lang.String persistenceXMLLocation,
java.lang.ClassLoader aclassloader,
java.io.Writer logWriter,
int loglevel)
throws java.net.URISyntaxException,
java.io.IOException
- Constructs an instance of StaticWeaveClassTransformer.
- Throws:
java.net.URISyntaxException
java.io.IOException
transform
public byte[] transform(java.lang.String originalClassName,
java.lang.Class originalClass,
byte[] originalClassBytes)
throws java.lang.instrument.IllegalClassFormatException
- The method performs weaving function on the given class.
-
- Returns:
- the converted(woven) class
- Throws:
java.lang.instrument.IllegalClassFormatException
buildClassTransformers
private void buildClassTransformers(java.net.URL inputArchiveURL,
java.lang.String persistenceXMLLocation,
java.lang.ClassLoader aclassloader)
throws java.net.URISyntaxException,
java.io.IOException
- The method creates classtransformer list corresponding to each persistence unit.
-
- Throws:
java.net.URISyntaxException
java.io.IOException
Skip navigation links