| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="de"> |
| <head> |
| <!-- Generated by javadoc (1.8.0_201) on Wed Apr 24 20:07:02 CEST 2019 --> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>PCEnhancer (OpenJPA Parent POM 3.1.0 API)</title> |
| <meta name="date" content="2019-04-24"> |
| <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> |
| <script type="text/javascript" src="../../../../script.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="PCEnhancer (OpenJPA Parent POM 3.1.0 API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":9,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":9,"i15":9,"i16":10,"i17":10,"i18":9,"i19":9,"i20":9,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":9}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a name="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/PCEnhancer.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../../../../org/apache/openjpa/enhance/PCDataGenerator.DynamicPCData.html" title="interface in org.apache.openjpa.enhance"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.AuxiliaryEnhancer.html" title="interface in org.apache.openjpa.enhance"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../index.html?org/apache/openjpa/enhance/PCEnhancer.html" target="_top">Frames</a></li> |
| <li><a href="PCEnhancer.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle">org.apache.openjpa.enhance</div> |
| <h2 title="Class PCEnhancer" class="title">Class PCEnhancer</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.apache.openjpa.enhance.PCEnhancer</li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <hr> |
| <br> |
| <pre>public class <span class="typeNameLabel">PCEnhancer</span> |
| extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre> |
| <div class="block">Bytecode enhancer used to enhance persistent classes from metadata. The |
| enhancer must be invoked on all persistence-capable and persistence aware |
| classes.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Author:</span></dt> |
| <dd>Abe White</dd> |
| </dl> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="nested.class.summary"> |
| <!-- --> |
| </a> |
| <h3>Nested Class Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation"> |
| <caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Class and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static interface </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.AuxiliaryEnhancer.html" title="interface in org.apache.openjpa.enhance">PCEnhancer.AuxiliaryEnhancer</a></span></code> |
| <div class="block">Plugin interface for additional enhancement.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static class </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.Flags.html" title="class in org.apache.openjpa.enhance">PCEnhancer.Flags</a></span></code> |
| <div class="block">Run flags.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="field.summary"> |
| <!-- --> |
| </a> |
| <h3>Field Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation"> |
| <caption><span>Fields</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Field and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#ENHANCE_AWARE">ENHANCE_AWARE</a></span></code> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#ENHANCE_INTERFACE">ENHANCE_INTERFACE</a></span></code> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#ENHANCE_NONE">ENHANCE_NONE</a></span></code> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#ENHANCE_PC">ENHANCE_PC</a></span></code> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#ENHANCER_VERSION">ENHANCER_VERSION</a></span></code> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#ISDETACHEDSTATEDEFINITIVE">ISDETACHEDSTATEDEFINITIVE</a></span></code> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PRE">PRE</a></span></code> </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colOne" scope="col">Constructor and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PCEnhancer-org.apache.openjpa.meta.MetaDataRepository-serp.bytecode.BCClass-org.apache.openjpa.meta.ClassMetaData-">PCEnhancer</a></span>(<a href="../../../../org/apache/openjpa/meta/MetaDataRepository.html" title="class in org.apache.openjpa.meta">MetaDataRepository</a> repos, |
| serp.bytecode.BCClass type, |
| <a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> meta)</code> |
| <div class="block">Constructor.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-serp.bytecode.BCClass-org.apache.openjpa.meta.ClassMetaData-">PCEnhancer</a></span>(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| serp.bytecode.BCClass type, |
| <a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> meta)</code> |
| <div class="block">Constructor.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-serp.bytecode.BCClass-org.apache.openjpa.meta.MetaDataRepository-">PCEnhancer</a></span>(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| serp.bytecode.BCClass type, |
| <a href="../../../../org/apache/openjpa/meta/MetaDataRepository.html" title="class in org.apache.openjpa.meta">MetaDataRepository</a> repos)</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="block"><span class="deprecationComment">use <a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-serp.bytecode.BCClass-org.apache.openjpa.meta.MetaDataRepository-java.lang.ClassLoader-"><code>PCEnhancer(OpenJPAConfiguration, BCClass, |
| MetaDataRepository, ClassLoader)</code></a> instead.</span></div> |
| </div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-serp.bytecode.BCClass-org.apache.openjpa.meta.MetaDataRepository-java.lang.ClassLoader-">PCEnhancer</a></span>(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| serp.bytecode.BCClass type, |
| <a href="../../../../org/apache/openjpa/meta/MetaDataRepository.html" title="class in org.apache.openjpa.meta">MetaDataRepository</a> repos, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a> loader)</code> |
| <div class="block">Constructor.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-java.lang.Class-">PCEnhancer</a></span>(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a> type)</code> |
| <div class="block">Constructor.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-org.apache.openjpa.meta.ClassMetaData-">PCEnhancer</a></span>(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| <a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> meta)</code> |
| <div class="block">Constructor.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Method and Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>static boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#checkEnhancementLevel-java.lang.Class-org.apache.openjpa.lib.log.Log-">checkEnhancementLevel</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><?> cls, |
| <a href="../../../../org/apache/openjpa/lib/log/Log.html" title="interface in org.apache.openjpa.lib.log">Log</a> log)</code> |
| <div class="block">This static public worker method detects and logs any Entities that may have been enhanced at build time by |
| a version of the enhancer that is older than the current version.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getAddDefaultConstructor--">getAddDefaultConstructor</a></span>()</code> |
| <div class="block">A boolean indicating whether the enhancer should add a no-args |
| constructor if one is not already present in the class.</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.AuxiliaryEnhancer.html" title="interface in org.apache.openjpa.enhance">PCEnhancer.AuxiliaryEnhancer</a>[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getAuxiliaryEnhancers--">getAuxiliaryEnhancers</a></span>()</code> |
| <div class="block">Gets the auxiliary enhancers registered as <a href="../../../../org/apache/openjpa/lib/util/Services.html" title="class in org.apache.openjpa.lib.util"><code>services</code></a>.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util">BytecodeWriter</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getBytecodeWriter--">getBytecodeWriter</a></span>()</code> |
| <div class="block">Return the current <a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util"><code>BytecodeWriter</code></a> to write to or null if none.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getCreateSubclass--">getCreateSubclass</a></span>()</code> |
| <div class="block">Whether the enhancer should make its arguments persistence-capable, |
| or generate a persistence-capable subclass.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getDirectory--">getDirectory</a></span>()</code> |
| <div class="block">The base build directory to generate code to.</div> |
| </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getEnforcePropertyRestrictions--">getEnforcePropertyRestrictions</a></span>()</code> |
| <div class="block">Whether to fail if the persistent type uses property access and |
| bytecode analysis shows that it may be violating OpenJPA's property |
| access restrictions.</div> |
| </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>serp.bytecode.BCClass</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getManagedTypeBytecode--">getManagedTypeBytecode</a></span>()</code> |
| <div class="block">Return the bytecode representation of the managed class being |
| manipulated.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getMetaData--">getMetaData</a></span>()</code> |
| <div class="block">Return the metadata for the class being manipulated, or null if not |
| a persistent type.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code>serp.bytecode.BCClass</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getPCBytecode--">getPCBytecode</a></span>()</code> |
| <div class="block">Return the bytecode representation of the persistence-capable class |
| being manipulated.</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getRedefine--">getRedefine</a></span>()</code> |
| <div class="block">Whether the enhancer should mutate its arguments, or just run validation |
| and optional subclassing logic on them.</div> |
| </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getType-org.apache.openjpa.meta.ClassMetaData-">getType</a></span>(<a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> meta)</code> |
| <div class="block">Return the concrete type for the given class, i.e. impl for managed |
| interfaces</div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#isAlreadyRedefined--">isAlreadyRedefined</a></span>()</code> |
| <div class="block">Whether the type that this instance is enhancing has already been |
| redefined.</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#isAlreadySubclassed--">isAlreadySubclassed</a></span>()</code> |
| <div class="block">Whether the type that this instance is enhancing has already been |
| subclassed in this instance's environment classloader.</div> |
| </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>static boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#isPCSubclassName-java.lang.String-">isPCSubclassName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> className)</code> |
| <div class="block">Whether or not <code>className</code> is the name for a |
| dynamically-created persistence-capable subclass.</div> |
| </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#main-java.lang.String:A-">main</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args)</code> |
| <div class="block">Usage: java org.apache.openjpa.enhance.PCEnhancer [option]* |
| <class name | .java file | .class file | .jdo file>+ |
| Where the following options are recognized.</div> |
| </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#record--">record</a></span>()</code> |
| <div class="block">Write the generated bytecode.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#run--">run</a></span>()</code> |
| <div class="block">Perform bytecode enhancements.</div> |
| </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code>static boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#run-org.apache.openjpa.conf.OpenJPAConfiguration-java.lang.String:A-org.apache.openjpa.lib.util.Options-">run</a></span>(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args, |
| <a href="../../../../org/apache/openjpa/lib/util/Options.html" title="class in org.apache.openjpa.lib.util">Options</a> opts)</code> |
| <div class="block">Run the tool.</div> |
| </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>static boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#run-org.apache.openjpa.conf.OpenJPAConfiguration-java.lang.String:A-org.apache.openjpa.enhance.PCEnhancer.Flags-org.apache.openjpa.meta.MetaDataRepository-org.apache.openjpa.lib.util.BytecodeWriter-java.lang.ClassLoader-">run</a></span>(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args, |
| <a href="../../../../org/apache/openjpa/enhance/PCEnhancer.Flags.html" title="class in org.apache.openjpa.enhance">PCEnhancer.Flags</a> flags, |
| <a href="../../../../org/apache/openjpa/meta/MetaDataRepository.html" title="class in org.apache.openjpa.meta">MetaDataRepository</a> repos, |
| <a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util">BytecodeWriter</a> writer, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a> loader)</code> |
| <div class="block">Enhance the given classes.</div> |
| </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code>static boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#run-java.lang.String:A-org.apache.openjpa.lib.util.Options-">run</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args, |
| <a href="../../../../org/apache/openjpa/lib/util/Options.html" title="class in org.apache.openjpa.lib.util">Options</a> opts)</code> |
| <div class="block">Run the tool.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#setAddDefaultConstructor-boolean-">setAddDefaultConstructor</a></span>(boolean addDefaultConstructor)</code> |
| <div class="block">A boolean indicating whether the enhancer should add a no-args |
| constructor if one is not already present in the class.</div> |
| </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#setBytecodeWriter-org.apache.openjpa.lib.util.BytecodeWriter-">setBytecodeWriter</a></span>(<a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util">BytecodeWriter</a> writer)</code> |
| <div class="block">Set the <a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util"><code>BytecodeWriter</code></a> to write the bytecode to or null if none.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#setCreateSubclass-boolean-">setCreateSubclass</a></span>(boolean subclass)</code> |
| <div class="block">Whether the enhancer should make its arguments persistence-capable, |
| or generate a persistence-capable subclass.</div> |
| </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#setDirectory-java.io.File-">setDirectory</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a> dir)</code> |
| <div class="block">The base build directory to generate code to.</div> |
| </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#setEnforcePropertyRestrictions-boolean-">setEnforcePropertyRestrictions</a></span>(boolean fail)</code> |
| <div class="block">Whether to fail if the persistent type uses property access and |
| bytecode analysis shows that it may be violating OpenJPA's property |
| access restrictions.</div> |
| </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#setRedefine-boolean-">setRedefine</a></span>(boolean redefine)</code> |
| <div class="block">Whether the enhancer should mutate its arguments, or just run validation |
| and optional subclassing logic on them.</div> |
| </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#toManagedTypeName-java.lang.String-">toManagedTypeName</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> className)</code> |
| <div class="block">If <code>className</code> is a dynamically-created persistence-capable |
| subclass name, returns the name of the class that it subclasses.</div> |
| </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3> |
| <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ FIELD DETAIL =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="field.detail"> |
| <!-- --> |
| </a> |
| <h3>Field Detail</h3> |
| <a name="ENHANCER_VERSION"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>ENHANCER_VERSION</h4> |
| <pre>public static final int ENHANCER_VERSION</pre> |
| </li> |
| </ul> |
| <a name="ENHANCE_NONE"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>ENHANCE_NONE</h4> |
| <pre>public static final int ENHANCE_NONE</pre> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../constant-values.html#org.apache.openjpa.enhance.PCEnhancer.ENHANCE_NONE">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="ENHANCE_AWARE"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>ENHANCE_AWARE</h4> |
| <pre>public static final int ENHANCE_AWARE</pre> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../constant-values.html#org.apache.openjpa.enhance.PCEnhancer.ENHANCE_AWARE">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="ENHANCE_INTERFACE"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>ENHANCE_INTERFACE</h4> |
| <pre>public static final int ENHANCE_INTERFACE</pre> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../constant-values.html#org.apache.openjpa.enhance.PCEnhancer.ENHANCE_INTERFACE">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="ENHANCE_PC"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>ENHANCE_PC</h4> |
| <pre>public static final int ENHANCE_PC</pre> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../constant-values.html#org.apache.openjpa.enhance.PCEnhancer.ENHANCE_PC">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="PRE"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>PRE</h4> |
| <pre>public static final <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PRE</pre> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../constant-values.html#org.apache.openjpa.enhance.PCEnhancer.PRE">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="ISDETACHEDSTATEDEFINITIVE"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>ISDETACHEDSTATEDEFINITIVE</h4> |
| <pre>public static final <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> ISDETACHEDSTATEDEFINITIVE</pre> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../constant-values.html#org.apache.openjpa.enhance.PCEnhancer.ISDETACHEDSTATEDEFINITIVE">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a name="PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-java.lang.Class-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>PCEnhancer</h4> |
| <pre>public PCEnhancer(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a> type)</pre> |
| <div class="block">Constructor. Supply configuration and type to enhance. This will look |
| up the metadata for <code>type</code> from <code>conf</code>'s |
| repository.</div> |
| </li> |
| </ul> |
| <a name="PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-org.apache.openjpa.meta.ClassMetaData-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>PCEnhancer</h4> |
| <pre>public PCEnhancer(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| <a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> meta)</pre> |
| <div class="block">Constructor. Supply configuration and type to enhance. This will look |
| up the metadata for <code>meta</code> by converting back to a class |
| and then loading from <code>conf</code>'s repository.</div> |
| </li> |
| </ul> |
| <a name="PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-serp.bytecode.BCClass-org.apache.openjpa.meta.MetaDataRepository-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>PCEnhancer</h4> |
| <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a> |
| public PCEnhancer(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| serp.bytecode.BCClass type, |
| <a href="../../../../org/apache/openjpa/meta/MetaDataRepository.html" title="class in org.apache.openjpa.meta">MetaDataRepository</a> repos)</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> <span class="deprecationComment">use <a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-serp.bytecode.BCClass-org.apache.openjpa.meta.MetaDataRepository-java.lang.ClassLoader-"><code>PCEnhancer(OpenJPAConfiguration, BCClass, |
| MetaDataRepository, ClassLoader)</code></a> instead.</span></div> |
| <div class="block">Constructor. Supply configuration.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>type</code> - the bytecode representation fo the type to |
| enhance; this can be created from any stream or file</dd> |
| <dd><code>repos</code> - a metadata repository to use for metadata access, |
| or null to create a new reporitory; the repository |
| from the given configuration isn't used by default |
| because the configuration might be an |
| implementation-specific subclass whose metadata |
| required more than just base metadata files</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-serp.bytecode.BCClass-org.apache.openjpa.meta.MetaDataRepository-java.lang.ClassLoader-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>PCEnhancer</h4> |
| <pre>public PCEnhancer(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| serp.bytecode.BCClass type, |
| <a href="../../../../org/apache/openjpa/meta/MetaDataRepository.html" title="class in org.apache.openjpa.meta">MetaDataRepository</a> repos, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a> loader)</pre> |
| <div class="block">Constructor. Supply configuration.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>type</code> - the bytecode representation fo the type to |
| enhance; this can be created from any stream or file</dd> |
| <dd><code>repos</code> - a metadata repository to use for metadata access, |
| or null to create a new reporitory; the repository |
| from the given configuration isn't used by default |
| because the configuration might be an |
| implementation-specific subclass whose metadata |
| required more than just base metadata files</dd> |
| <dd><code>loader</code> - the environment classloader to use for loading |
| classes and resources.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="PCEnhancer-org.apache.openjpa.meta.MetaDataRepository-serp.bytecode.BCClass-org.apache.openjpa.meta.ClassMetaData-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>PCEnhancer</h4> |
| <pre>public PCEnhancer(<a href="../../../../org/apache/openjpa/meta/MetaDataRepository.html" title="class in org.apache.openjpa.meta">MetaDataRepository</a> repos, |
| serp.bytecode.BCClass type, |
| <a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> meta)</pre> |
| <div class="block">Constructor. Supply repository. The repository's configuration will |
| be used, and the metadata passed in will be used as-is without doing |
| any additional lookups. This is useful when running the enhancer |
| during metadata load.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>repos</code> - a metadata repository to use for metadata access, |
| or null to create a new reporitory; the repository |
| from the given configuration isn't used by default |
| because the configuration might be an |
| implementation-specific subclass whose metadata |
| required more than just base metadata files</dd> |
| <dd><code>type</code> - the bytecode representation fo the type to |
| enhance; this can be created from any stream or file</dd> |
| <dd><code>meta</code> - the metadata to use for processing this type.</dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.1.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="PCEnhancer-org.apache.openjpa.conf.OpenJPAConfiguration-serp.bytecode.BCClass-org.apache.openjpa.meta.ClassMetaData-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>PCEnhancer</h4> |
| <pre>public PCEnhancer(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| serp.bytecode.BCClass type, |
| <a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> meta)</pre> |
| <div class="block">Constructor. Supply configuration, type, and metadata.</div> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ============ METHOD DETAIL ========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a name="isPCSubclassName-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isPCSubclassName</h4> |
| <pre>public static boolean isPCSubclassName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> className)</pre> |
| <div class="block">Whether or not <code>className</code> is the name for a |
| dynamically-created persistence-capable subclass.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.1.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toManagedTypeName-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toManagedTypeName</h4> |
| <pre>public static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> toManagedTypeName(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> className)</pre> |
| <div class="block">If <code>className</code> is a dynamically-created persistence-capable |
| subclass name, returns the name of the class that it subclasses. |
| Otherwise, returns <code>className</code>.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.1.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getPCBytecode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getPCBytecode</h4> |
| <pre>public serp.bytecode.BCClass getPCBytecode()</pre> |
| <div class="block">Return the bytecode representation of the persistence-capable class |
| being manipulated.</div> |
| </li> |
| </ul> |
| <a name="getManagedTypeBytecode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getManagedTypeBytecode</h4> |
| <pre>public serp.bytecode.BCClass getManagedTypeBytecode()</pre> |
| <div class="block">Return the bytecode representation of the managed class being |
| manipulated. This is usually the same as <a href="../../../../org/apache/openjpa/enhance/PCEnhancer.html#getPCBytecode--"><code>getPCBytecode()</code></a>, |
| except when running the enhancer to redefine and subclass |
| existing persistent types.</div> |
| </li> |
| </ul> |
| <a name="getMetaData--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getMetaData</h4> |
| <pre>public <a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> getMetaData()</pre> |
| <div class="block">Return the metadata for the class being manipulated, or null if not |
| a persistent type.</div> |
| </li> |
| </ul> |
| <a name="getAddDefaultConstructor--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getAddDefaultConstructor</h4> |
| <pre>public boolean getAddDefaultConstructor()</pre> |
| <div class="block">A boolean indicating whether the enhancer should add a no-args |
| constructor if one is not already present in the class. OpenJPA |
| requires that a no-arg constructor (whether created by the compiler |
| or by the user) be present in a PC.</div> |
| </li> |
| </ul> |
| <a name="setAddDefaultConstructor-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setAddDefaultConstructor</h4> |
| <pre>public void setAddDefaultConstructor(boolean addDefaultConstructor)</pre> |
| <div class="block">A boolean indicating whether the enhancer should add a no-args |
| constructor if one is not already present in the class. OpenJPA |
| requires that a no-arg constructor (whether created by the compiler |
| or by the user) be present in a PC.</div> |
| </li> |
| </ul> |
| <a name="getRedefine--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getRedefine</h4> |
| <pre>public boolean getRedefine()</pre> |
| <div class="block">Whether the enhancer should mutate its arguments, or just run validation |
| and optional subclassing logic on them. Usually used in conjunction with |
| <code>setCreateSubclass(true)</code>.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.0.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setRedefine-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setRedefine</h4> |
| <pre>public void setRedefine(boolean redefine)</pre> |
| <div class="block">Whether the enhancer should mutate its arguments, or just run validation |
| and optional subclassing logic on them. Usually used in conjunction with |
| <code>setCreateSubclass(true)</code>.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.0.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isAlreadyRedefined--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isAlreadyRedefined</h4> |
| <pre>public boolean isAlreadyRedefined()</pre> |
| <div class="block">Whether the type that this instance is enhancing has already been |
| redefined.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.0.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isAlreadySubclassed--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isAlreadySubclassed</h4> |
| <pre>public boolean isAlreadySubclassed()</pre> |
| <div class="block">Whether the type that this instance is enhancing has already been |
| subclassed in this instance's environment classloader.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.0.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getCreateSubclass--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCreateSubclass</h4> |
| <pre>public boolean getCreateSubclass()</pre> |
| <div class="block">Whether the enhancer should make its arguments persistence-capable, |
| or generate a persistence-capable subclass.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.0.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setCreateSubclass-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setCreateSubclass</h4> |
| <pre>public void setCreateSubclass(boolean subclass)</pre> |
| <div class="block">Whether the enhancer should make its arguments persistence-capable, |
| or generate a persistence-capable subclass.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>1.0.0</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getEnforcePropertyRestrictions--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getEnforcePropertyRestrictions</h4> |
| <pre>public boolean getEnforcePropertyRestrictions()</pre> |
| <div class="block">Whether to fail if the persistent type uses property access and |
| bytecode analysis shows that it may be violating OpenJPA's property |
| access restrictions.</div> |
| </li> |
| </ul> |
| <a name="setEnforcePropertyRestrictions-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setEnforcePropertyRestrictions</h4> |
| <pre>public void setEnforcePropertyRestrictions(boolean fail)</pre> |
| <div class="block">Whether to fail if the persistent type uses property access and |
| bytecode analysis shows that it may be violating OpenJPA's property |
| access restrictions.</div> |
| </li> |
| </ul> |
| <a name="getDirectory--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDirectory</h4> |
| <pre>public <a href="https://docs.oracle.com/javase/8/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a> getDirectory()</pre> |
| <div class="block">The base build directory to generate code to. The proper package |
| structure will be created beneath this directory. Defaults to |
| overwriting the existing class file if null.</div> |
| </li> |
| </ul> |
| <a name="setDirectory-java.io.File-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setDirectory</h4> |
| <pre>public void setDirectory(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a> dir)</pre> |
| <div class="block">The base build directory to generate code to. The proper package |
| structure will be creaed beneath this directory. Defaults to |
| overwriting the existing class file if null.</div> |
| </li> |
| </ul> |
| <a name="getBytecodeWriter--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getBytecodeWriter</h4> |
| <pre>public <a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util">BytecodeWriter</a> getBytecodeWriter()</pre> |
| <div class="block">Return the current <a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util"><code>BytecodeWriter</code></a> to write to or null if none.</div> |
| </li> |
| </ul> |
| <a name="setBytecodeWriter-org.apache.openjpa.lib.util.BytecodeWriter-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setBytecodeWriter</h4> |
| <pre>public void setBytecodeWriter(<a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util">BytecodeWriter</a> writer)</pre> |
| <div class="block">Set the <a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util"><code>BytecodeWriter</code></a> to write the bytecode to or null if none.</div> |
| </li> |
| </ul> |
| <a name="run--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>run</h4> |
| <pre>public int run()</pre> |
| <div class="block">Perform bytecode enhancements.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd><code>ENHANCE_*</code> constant</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="record--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>record</h4> |
| <pre>public void record() |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Write the generated bytecode.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getAuxiliaryEnhancers--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getAuxiliaryEnhancers</h4> |
| <pre>public <a href="../../../../org/apache/openjpa/enhance/PCEnhancer.AuxiliaryEnhancer.html" title="interface in org.apache.openjpa.enhance">PCEnhancer.AuxiliaryEnhancer</a>[] getAuxiliaryEnhancers()</pre> |
| <div class="block">Gets the auxiliary enhancers registered as <a href="../../../../org/apache/openjpa/lib/util/Services.html" title="class in org.apache.openjpa.lib.util"><code>services</code></a>.</div> |
| </li> |
| </ul> |
| <a name="getType-org.apache.openjpa.meta.ClassMetaData-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getType</h4> |
| <pre>public <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a> getType(<a href="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</a> meta)</pre> |
| <div class="block">Return the concrete type for the given class, i.e. impl for managed |
| interfaces</div> |
| </li> |
| </ul> |
| <a name="main-java.lang.String:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>main</h4> |
| <pre>public static void main(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args)</pre> |
| <div class="block">Usage: java org.apache.openjpa.enhance.PCEnhancer [option]* |
| <class name | .java file | .class file | .jdo file>+ |
| Where the following options are recognized. |
| <ul> |
| <li><i>-properties/-p <properties file></i>: The path to a OpenJPA |
| properties file containing information as outlined in |
| <code>Configuration</code>; optional.</li> |
| <li><i>-<property name> <property value></i>: All bean |
| properties of the standard OpenJPA <a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf"><code>OpenJPAConfiguration</code></a> can be |
| set by using their names and supplying a value; for example: |
| <li><i>-directory/-d <build directory></i>: The path to the base |
| directory where enhanced classes are stored. By default, the |
| enhancer overwrites the original .class file with the enhanced |
| version. Use this option to store the generated .class file in |
| another directory. The package structure will be created beneath |
| the given directory.</li> |
| <li><i>-addDefaultConstructor/-adc [true/t | false/f]</i>: Whether to |
| add a default constructor to persistent classes missing one, as |
| opposed to throwing an exception. Defaults to true.</li> |
| <li><i>-tmpClassLoader/-tcl [true/t | false/f]</i>: Whether to |
| load the pre-enhanced classes using a temporary class loader. |
| Defaults to true. Set this to false when attempting to debug |
| class loading errors.</li> |
| <li><i>-enforcePropertyRestrictions/-epr [true/t | false/f]</i>: |
| Whether to throw an exception if a PROPERTY access entity appears |
| to be violating standard property restrictions. Defaults to false.</li> |
| </ul> |
| Each additional argument can be either the full class name of the |
| type to enhance, the path to the .java file for the type, the path to |
| the .class file for the type, or the path to a .jdo file listing one |
| or more types to enhance. |
| If the type being enhanced has metadata, it will be enhanced as a |
| persistence capable class. If not, it will be considered a persistence |
| aware class, and all access to fields of persistence capable classes |
| will be replaced by the appropriate get/set method. If the type |
| explicitly declares the persistence-capable interface, it will |
| not be enhanced. Thus, it is safe to invoke the enhancer on classes |
| that are already enhanced.</div> |
| </li> |
| </ul> |
| <a name="run-java.lang.String:A-org.apache.openjpa.lib.util.Options-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>run</h4> |
| <pre>public static boolean run(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args, |
| <a href="../../../../org/apache/openjpa/lib/util/Options.html" title="class in org.apache.openjpa.lib.util">Options</a> opts)</pre> |
| <div class="block">Run the tool. Returns false if invalid options given. Runs against all |
| the persistence units defined in the resource to parse.</div> |
| </li> |
| </ul> |
| <a name="run-org.apache.openjpa.conf.OpenJPAConfiguration-java.lang.String:A-org.apache.openjpa.lib.util.Options-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>run</h4> |
| <pre>public static boolean run(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args, |
| <a href="../../../../org/apache/openjpa/lib/util/Options.html" title="class in org.apache.openjpa.lib.util">Options</a> opts) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Run the tool. Returns false if invalid options given.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="run-org.apache.openjpa.conf.OpenJPAConfiguration-java.lang.String:A-org.apache.openjpa.enhance.PCEnhancer.Flags-org.apache.openjpa.meta.MetaDataRepository-org.apache.openjpa.lib.util.BytecodeWriter-java.lang.ClassLoader-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>run</h4> |
| <pre>public static boolean run(<a href="../../../../org/apache/openjpa/conf/OpenJPAConfiguration.html" title="interface in org.apache.openjpa.conf">OpenJPAConfiguration</a> conf, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[] args, |
| <a href="../../../../org/apache/openjpa/enhance/PCEnhancer.Flags.html" title="class in org.apache.openjpa.enhance">PCEnhancer.Flags</a> flags, |
| <a href="../../../../org/apache/openjpa/meta/MetaDataRepository.html" title="class in org.apache.openjpa.meta">MetaDataRepository</a> repos, |
| <a href="../../../../org/apache/openjpa/lib/util/BytecodeWriter.html" title="interface in org.apache.openjpa.lib.util">BytecodeWriter</a> writer, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a> loader) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Enhance the given classes.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="checkEnhancementLevel-java.lang.Class-org.apache.openjpa.lib.log.Log-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>checkEnhancementLevel</h4> |
| <pre>public static boolean checkEnhancementLevel(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><?> cls, |
| <a href="../../../../org/apache/openjpa/lib/log/Log.html" title="interface in org.apache.openjpa.lib.log">Log</a> log)</pre> |
| <div class="block">This static public worker method detects and logs any Entities that may have been enhanced at build time by |
| a version of the enhancer that is older than the current version.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>cls</code> - - A non-null Class implementing org.apache.openjpa.enhance.PersistenceCapable.</dd> |
| <dd><code>log</code> - - A non-null org.apache.openjpa.lib.log.Log.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if the provided Class is down level from the current PCEnhancer.ENHANCER_VERSION. False |
| otherwise.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>-</code> - IllegalStateException if cls doesn't implement org.apache.openjpa.enhance.PersistenceCapable.</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a name="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/PCEnhancer.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../../../../org/apache/openjpa/enhance/PCDataGenerator.DynamicPCData.html" title="interface in org.apache.openjpa.enhance"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../org/apache/openjpa/enhance/PCEnhancer.AuxiliaryEnhancer.html" title="interface in org.apache.openjpa.enhance"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../index.html?org/apache/openjpa/enhance/PCEnhancer.html" target="_top">Frames</a></li> |
| <li><a href="PCEnhancer.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| <p class="legalCopy"><small>Copyright © 2006–2019 <a href="http://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p> |
| </body> |
| </html> |