================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/ejb/cmp3/EntityManagerSetupImpl.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000001/AB0952363AC40CBFE034080020E8C54E.68 Report generated at Fri Jun 2 09:04:43 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/ejb/cmp3/EntityManagerSetupImpl.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000001/AB0952363AC40CBFE034080020E8C54E.68 Thu Jun 1 15:12:51 2006 *************** *** 522,528 **** // be returned if we we are mean to process these mappings ClassTransformer transformer = null; if (enableLazyForOneToOne){ ! transformer = TransformerFactory.createTransformerAndModifyProject(session, entities, privateClassLoader); } state = STATE_PREDEPLOYED; --- 522,528 ---- // be returned if we we are mean to process these mappings ClassTransformer transformer = null; if (enableLazyForOneToOne){ ! transformer = TransformerFactory.createTransformer(session, entities, privateClassLoader); } state = STATE_PREDEPLOYED; ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000002/AB0952363AC40CBFE034080020E8C54E.46 Report generated at Fri Jun 2 09:04:43 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000002/AB0952363AC40CBFE034080020E8C54E.46 Thu Jun 1 15:13:15 2006 *************** *** 1958,1964 **** */ protected void setAccessorMethods(DatabaseMapping mapping, MetadataAccessor accessor) { MetadataDescriptor md = accessor.getMetadataDescriptor(); ! if (md.usesPropertyAccess()) { mapping.setGetMethodName(accessor.getName()); mapping.setSetMethodName(accessor.getSetMethodName()); } --- 1958,1969 ---- */ protected void setAccessorMethods(DatabaseMapping mapping, MetadataAccessor accessor) { MetadataDescriptor md = accessor.getMetadataDescriptor(); ! // if static weaving is used, we will used the well-known format for the method names weaving produces ! if (mapping.isOneToOneMapping() && ((OneToOneMapping)mapping).usesIndirection() && ! (TopLinkWeaved.class.isAssignableFrom(accessor.getMetadataDescriptor().getJavaClass()))){ ! mapping.setGetMethodName("_toplink_get" + mapping.getAttributeName() + "_vh"); ! mapping.setSetMethodName("_toplink_set" + mapping.getAttributeName() + "_vh"); ! } else if (md.usesPropertyAccess()) { mapping.setGetMethodName(accessor.getName()); mapping.setSetMethodName(accessor.getSetMethodName()); } ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/TransformerFactory.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000003/AB0952363AC40CBFE034080020E8C54E.15 Report generated at Fri Jun 2 09:04:43 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/TransformerFactory.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000003/AB0952363AC40CBFE034080020E8C54E.15 Thu Jun 1 15:13:27 2006 *************** *** 71,77 **** public static final String WEAVER_PROCESSING_CLASS = "weaver_processing_class"; ! public static ClassTransformer createTransformerAndModifyProject(Session session, Collection entityClasses, ClassLoader classLoader) { if (session == null) { throw new IllegalArgumentException("Weaver session cannot be null"); --- 71,77 ---- public static final String WEAVER_PROCESSING_CLASS = "weaver_processing_class"; ! public static ClassTransformer createTransformer(Session session, Collection entityClasses, ClassLoader classLoader) { if (session == null) { throw new IllegalArgumentException("Weaver session cannot be null"); *************** *** 82,88 **** throw new IllegalArgumentException("Weaver session's project cannot be null"); } TransformerFactory tf = new TransformerFactory(session, entityClasses, classLoader); - tf.buildClassDetailsAndModifyProject(); return tf.buildTopLinkWeaver(); } --- 82,87 ---- *************** *** 98,103 **** --- 97,103 ---- this.classLoader = classLoader; embeddableClasses = new ArrayList(); classDetailsMap = new HashMap(); + buildClassDetails(); } /** *************** *** 144,150 **** * Build a list ClassDetails instance that contains a ClassDetails for each class * in our entities list. */ ! public void buildClassDetailsAndModifyProject() { if (entityClasses != null && entityClasses.size() > 0) { // scan thru list building details of persistent classes --- 144,150 ---- * Build a list ClassDetails instance that contains a ClassDetails for each class * in our entities list. */ ! protected void buildClassDetails() { if (entityClasses != null && entityClasses.size() > 0) { // scan thru list building details of persistent classes *************** *** 173,186 **** if (!unMappedAttributes.isEmpty()){ addClassDetailsForMappedSuperClasses(clz, descriptor, classDetails, classDetailsMap, unMappedAttributes); } - if (classDetails.getLazyOneToOneMappings() != null){ - Iterator iterator = classDetails.getLazyOneToOneMappings().iterator(); - while(iterator.hasNext()){ - OneToOneMapping mapping = (OneToOneMapping)iterator.next(); - mapping.setGetMethodName("_toplink_get" + mapping.getAttributeName() + "_vh"); - mapping.setSetMethodName("_toplink_set" + mapping.getAttributeName() + "_vh"); - } - } } } } --- 173,178 ---- *************** *** 249,255 **** Map attributesMap = new HashMap(); Map settersMap = new HashMap(); Map gettersMap = new HashMap(); - List lazyMappings = new Vector(); for (Iterator j = mappings.iterator(); j.hasNext();) { DatabaseMapping dm = (DatabaseMapping)j.next(); String attribute = dm.getAttributeName(); --- 241,246 ---- *************** *** 275,295 **** } else { attributeDetails.setIsMappedWithAttributeAccess(true); } - if (typeClz == null){ - typeClz = getAttributeTypeFromClass(clz, attribute, dm, true); - } - if (weaveValueHolders && otom.getIndirectionPolicy().usesIndirection() && - typeClz != null && !typeClz.isAssignableFrom(ValueHolderInterface.class)) { - lazyMappings.add(otom); - } - } attributesMap.put(attribute, attributeDetails); } classDetails.setAttributesMap(attributesMap); classDetails.setGetterMethodToAttributeDetails(gettersMap); classDetails.setSetterMethodToAttributeDetails(settersMap); - classDetails.setLazyOneToOneMappings(lazyMappings); return unMappedAttributes; } --- 266,277 ---- ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/ClassDetails.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000004/AB0952363AC40CBFE034080020E8C54E.6 Report generated at Fri Jun 2 09:04:43 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/ClassDetails.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000004/AB0952363AC40CBFE034080020E8C54E.6 Thu Jun 1 15:13:32 2006 *************** *** 18,24 **** * own identifying information: Portions Copyright [yyyy] * [name of copyright owner] */ ! // Copyright (c) 2005, 2006, Oracle. All rights reserved. package oracle.toplink.essentials.internal.weaving; // J2SE imports --- 18,24 ---- * own identifying information: Portions Copyright [yyyy] * [name of copyright owner] */ ! // Copyright (c) 2005, Oracle. All rights reserved. package oracle.toplink.essentials.internal.weaving; // J2SE imports *************** *** 49,56 **** protected Map setterMethodToAttributeDetails; - protected List lazyOneToOneMappings; - protected boolean isMappedSuperClass = false; // default constructor --- 49,54 ---- *************** *** 88,102 **** public Map getAttributesMap() { return attributesMap; } ! public Map getGetterMethodToAttributeDetails(){ return getterMethodToAttributeDetails; } - public List getLazyOneToOneMappings(){ - return lazyOneToOneMappings; - } - public Map getSetterMethodToAttributeDetails(){ return setterMethodToAttributeDetails; } --- 86,96 ---- public Map getAttributesMap() { return attributesMap; } ! public Map getGetterMethodToAttributeDetails(){ return getterMethodToAttributeDetails; } public Map getSetterMethodToAttributeDetails(){ return setterMethodToAttributeDetails; } *************** *** 109,118 **** getterMethodToAttributeDetails = map; } - public void setLazyOneToOneMappings(List lazyOneToOneMappings){ - this.lazyOneToOneMappings = lazyOneToOneMappings; - } - public boolean isMappedSuperClass(){ return isMappedSuperClass; } --- 103,108 ---- ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/TopLinkClassWeaver.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000005/AB0952363AC40CBFE034080020E8C54E.9 Report generated at Fri Jun 2 09:04:43 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/TopLinkClassWeaver.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000005/AB0952363AC40CBFE034080020E8C54E.9 Thu Jun 1 15:15:26 2006 *************** *** 136,142 **** cv_set.visitMethodInsn(INVOKEINTERFACE, TopLinkClassWeaver.VHI_SHORT_SIGNATURE, "setValue", "(Ljava/lang/Object;)V"); cv_set.visitVarInsn(ALOAD, 0); cv_set.visitVarInsn(ALOAD, 1); ! cv_set.visitFieldInsn(PUTFIELD, classDetails.getClassName(), attribute, "L" + attributeDetails.getReferenceClass().replace('.','/') + ";"); cv_set.visitInsn(RETURN); cv_set.visitMaxs(0 ,0); } --- 136,142 ---- cv_set.visitMethodInsn(INVOKEINTERFACE, TopLinkClassWeaver.VHI_SHORT_SIGNATURE, "setValue", "(Ljava/lang/Object;)V"); cv_set.visitVarInsn(ALOAD, 0); cv_set.visitVarInsn(ALOAD, 1); ! cv_set.visitFieldInsn(PUTFIELD, classDetails.getClassName(), attribute, "L" + attributeDetails.getReferenceClass().replace('.','/') + ";");//TopLinkClassWeaver.VHI_SIGNATURE); cv_set.visitInsn(RETURN); cv_set.visitMaxs(0 ,0); } *************** *** 259,265 **** addGetterMethodForFieldAccess(classDetails, attributeDetails); } } ! } } super.visitEnd(); --- 259,270 ---- addGetterMethodForFieldAccess(classDetails, attributeDetails); } } ! // attributes using indirection should use the weaved-in getter and setter methods for access. ! if (attributeDetails.getMapping().usesIndirection()){ ! ! attributeDetails.getMapping().setGetMethodName("_toplink_get" + attributeDetails.getAttributeName() + "_vh"); ! attributeDetails.getMapping().setSetMethodName("_toplink_set" + attributeDetails.getAttributeName() + "_vh"); ! } } } super.visitEnd(); ================================================================================ Merge Diffs: /ade/tware_toplink10i/tltest/source/essentials/oracle/toplink/essentials/testing/tests/weaving/SimpleWeaverTestSuite.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000008/AB0952363AC40CBFE034080020E8C54E.7 Report generated at Fri Jun 2 09:04:43 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tltest/source/essentials/oracle/toplink/essentials/testing/tests/weaving/SimpleWeaverTestSuite.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000008/AB0952363AC40CBFE034080020E8C54E.7 Thu Jun 1 15:36:14 2006 *************** *** 106,112 **** public void nullSessionTest() { boolean expectedFailure = false; try { ! TopLinkWeaver tw = (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(null, null, Thread.currentThread().getContextClassLoader()); } catch (IllegalArgumentException iae) { --- 106,112 ---- public void nullSessionTest() { boolean expectedFailure = false; try { ! TopLinkWeaver tw = (TopLinkWeaver)TransformerFactory.createTransformer(null, null, Thread.currentThread().getContextClassLoader()); } catch (IllegalArgumentException iae) { *************** *** 121,127 **** boolean expectedFailure = false; try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(session, null, Thread.currentThread().getContextClassLoader()); } catch (IllegalArgumentException iae) { expectedFailure = true; --- 121,127 ---- boolean expectedFailure = false; try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformer(session, null, Thread.currentThread().getContextClassLoader()); } catch (IllegalArgumentException iae) { expectedFailure = true; *************** *** 134,140 **** public void nullEntitiesTest(Session session) { try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(session, null, Thread.currentThread().getContextClassLoader()); } catch (Exception e) { --- 134,140 ---- public void nullEntitiesTest(Session session) { try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformer(session, null, Thread.currentThread().getContextClassLoader()); } catch (Exception e) { *************** *** 145,151 **** public void emptyEntitiesTest(Session session) { try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(session, new ArrayList(), Thread.currentThread().getContextClassLoader()); } catch (Exception e) { --- 145,151 ---- public void emptyEntitiesTest(Session session) { try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformer(session, new ArrayList(), Thread.currentThread().getContextClassLoader()); } catch (Exception e) { *************** *** 157,163 **** TopLinkWeaver tw = null; try { ! tw = (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(session, entities, Thread.currentThread().getContextClassLoader()); } catch (Exception e) { --- 157,163 ---- TopLinkWeaver tw = null; try { ! tw = (TopLinkWeaver)TransformerFactory.createTransformer(session, entities, Thread.currentThread().getContextClassLoader()); } catch (Exception e) { ================================================================================ Merge Diffs: /ade/tware_toplink10i/tltest/source/essentials/oracle/toplink/essentials/testing/tests/weaving/RelationshipWeaverTestSuite.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000009/AB0952363AC40CBFE034080020E8C54E.12 Report generated at Fri Jun 2 09:04:43 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tltest/source/essentials/oracle/toplink/essentials/testing/tests/weaving/RelationshipWeaverTestSuite.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000009/AB0952363AC40CBFE034080020E8C54E.12 Thu Jun 1 15:36:32 2006 *************** *** 86,92 **** (AbstractSession) session, setupClassLoader, entities, true); eap.processORAnnotations(); TopLinkWeaver tw = (TopLinkWeaver) ! TransformerFactory.createTransformerAndModifyProject(session, entities, Thread.currentThread().getContextClassLoader()); byte[] newOrderBytes = tw.transform(simpleClassLoader, Order.class.getName().replace('.','/'), null, null, originalOrderBytes); --- 86,92 ---- (AbstractSession) session, setupClassLoader, entities, true); eap.processORAnnotations(); TopLinkWeaver tw = (TopLinkWeaver) ! TransformerFactory.createTransformer(session, entities, Thread.currentThread().getContextClassLoader()); byte[] newOrderBytes = tw.transform(simpleClassLoader, Order.class.getName().replace('.','/'), null, null, originalOrderBytes); ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/ejb/cmp3/EntityManagerSetupImpl.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000001/AB0952363AC40CBFE034080020E8C54E.68 Report generated at Fri Jun 2 09:05:54 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/ejb/cmp3/EntityManagerSetupImpl.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000001/AB0952363AC40CBFE034080020E8C54E.68 Thu Jun 1 15:12:51 2006 *************** *** 522,528 **** // be returned if we we are mean to process these mappings ClassTransformer transformer = null; if (enableLazyForOneToOne){ ! transformer = TransformerFactory.createTransformerAndModifyProject(session, entities, privateClassLoader); } state = STATE_PREDEPLOYED; --- 522,528 ---- // be returned if we we are mean to process these mappings ClassTransformer transformer = null; if (enableLazyForOneToOne){ ! transformer = TransformerFactory.createTransformer(session, entities, privateClassLoader); } state = STATE_PREDEPLOYED; ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000002/AB0952363AC40CBFE034080020E8C54E.46 Report generated at Fri Jun 2 09:05:54 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000002/AB0952363AC40CBFE034080020E8C54E.46 Thu Jun 1 15:13:15 2006 *************** *** 1958,1964 **** */ protected void setAccessorMethods(DatabaseMapping mapping, MetadataAccessor accessor) { MetadataDescriptor md = accessor.getMetadataDescriptor(); ! if (md.usesPropertyAccess()) { mapping.setGetMethodName(accessor.getName()); mapping.setSetMethodName(accessor.getSetMethodName()); } --- 1958,1969 ---- */ protected void setAccessorMethods(DatabaseMapping mapping, MetadataAccessor accessor) { MetadataDescriptor md = accessor.getMetadataDescriptor(); ! // if static weaving is used, we will used the well-known format for the method names weaving produces ! if (mapping.isOneToOneMapping() && ((OneToOneMapping)mapping).usesIndirection() && ! (TopLinkWeaved.class.isAssignableFrom(accessor.getMetadataDescriptor().getJavaClass()))){ ! mapping.setGetMethodName("_toplink_get" + mapping.getAttributeName() + "_vh"); ! mapping.setSetMethodName("_toplink_set" + mapping.getAttributeName() + "_vh"); ! } else if (md.usesPropertyAccess()) { mapping.setGetMethodName(accessor.getName()); mapping.setSetMethodName(accessor.getSetMethodName()); } ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/TransformerFactory.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000003/AB0952363AC40CBFE034080020E8C54E.15 Report generated at Fri Jun 2 09:05:54 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/TransformerFactory.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000003/AB0952363AC40CBFE034080020E8C54E.15 Thu Jun 1 15:13:27 2006 *************** *** 71,77 **** public static final String WEAVER_PROCESSING_CLASS = "weaver_processing_class"; ! public static ClassTransformer createTransformerAndModifyProject(Session session, Collection entityClasses, ClassLoader classLoader) { if (session == null) { throw new IllegalArgumentException("Weaver session cannot be null"); --- 71,77 ---- public static final String WEAVER_PROCESSING_CLASS = "weaver_processing_class"; ! public static ClassTransformer createTransformer(Session session, Collection entityClasses, ClassLoader classLoader) { if (session == null) { throw new IllegalArgumentException("Weaver session cannot be null"); *************** *** 82,88 **** throw new IllegalArgumentException("Weaver session's project cannot be null"); } TransformerFactory tf = new TransformerFactory(session, entityClasses, classLoader); - tf.buildClassDetailsAndModifyProject(); return tf.buildTopLinkWeaver(); } --- 82,87 ---- *************** *** 98,103 **** --- 97,103 ---- this.classLoader = classLoader; embeddableClasses = new ArrayList(); classDetailsMap = new HashMap(); + buildClassDetails(); } /** *************** *** 144,150 **** * Build a list ClassDetails instance that contains a ClassDetails for each class * in our entities list. */ ! public void buildClassDetailsAndModifyProject() { if (entityClasses != null && entityClasses.size() > 0) { // scan thru list building details of persistent classes --- 144,150 ---- * Build a list ClassDetails instance that contains a ClassDetails for each class * in our entities list. */ ! protected void buildClassDetails() { if (entityClasses != null && entityClasses.size() > 0) { // scan thru list building details of persistent classes *************** *** 173,186 **** if (!unMappedAttributes.isEmpty()){ addClassDetailsForMappedSuperClasses(clz, descriptor, classDetails, classDetailsMap, unMappedAttributes); } - if (classDetails.getLazyOneToOneMappings() != null){ - Iterator iterator = classDetails.getLazyOneToOneMappings().iterator(); - while(iterator.hasNext()){ - OneToOneMapping mapping = (OneToOneMapping)iterator.next(); - mapping.setGetMethodName("_toplink_get" + mapping.getAttributeName() + "_vh"); - mapping.setSetMethodName("_toplink_set" + mapping.getAttributeName() + "_vh"); - } - } } } } --- 173,178 ---- *************** *** 249,255 **** Map attributesMap = new HashMap(); Map settersMap = new HashMap(); Map gettersMap = new HashMap(); - List lazyMappings = new Vector(); for (Iterator j = mappings.iterator(); j.hasNext();) { DatabaseMapping dm = (DatabaseMapping)j.next(); String attribute = dm.getAttributeName(); --- 241,246 ---- *************** *** 275,295 **** } else { attributeDetails.setIsMappedWithAttributeAccess(true); } - if (typeClz == null){ - typeClz = getAttributeTypeFromClass(clz, attribute, dm, true); - } - if (weaveValueHolders && otom.getIndirectionPolicy().usesIndirection() && - typeClz != null && !typeClz.isAssignableFrom(ValueHolderInterface.class)) { - lazyMappings.add(otom); - } - } attributesMap.put(attribute, attributeDetails); } classDetails.setAttributesMap(attributesMap); classDetails.setGetterMethodToAttributeDetails(gettersMap); classDetails.setSetterMethodToAttributeDetails(settersMap); - classDetails.setLazyOneToOneMappings(lazyMappings); return unMappedAttributes; } --- 266,277 ---- ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/ClassDetails.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000004/AB0952363AC40CBFE034080020E8C54E.6 Report generated at Fri Jun 2 09:05:54 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/ClassDetails.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000004/AB0952363AC40CBFE034080020E8C54E.6 Thu Jun 1 15:13:32 2006 *************** *** 18,24 **** * own identifying information: Portions Copyright [yyyy] * [name of copyright owner] */ ! // Copyright (c) 2005, 2006, Oracle. All rights reserved. package oracle.toplink.essentials.internal.weaving; // J2SE imports --- 18,24 ---- * own identifying information: Portions Copyright [yyyy] * [name of copyright owner] */ ! // Copyright (c) 2005, Oracle. All rights reserved. package oracle.toplink.essentials.internal.weaving; // J2SE imports *************** *** 49,56 **** protected Map setterMethodToAttributeDetails; - protected List lazyOneToOneMappings; - protected boolean isMappedSuperClass = false; // default constructor --- 49,54 ---- *************** *** 88,102 **** public Map getAttributesMap() { return attributesMap; } ! public Map getGetterMethodToAttributeDetails(){ return getterMethodToAttributeDetails; } - public List getLazyOneToOneMappings(){ - return lazyOneToOneMappings; - } - public Map getSetterMethodToAttributeDetails(){ return setterMethodToAttributeDetails; } --- 86,96 ---- public Map getAttributesMap() { return attributesMap; } ! public Map getGetterMethodToAttributeDetails(){ return getterMethodToAttributeDetails; } public Map getSetterMethodToAttributeDetails(){ return setterMethodToAttributeDetails; } *************** *** 109,118 **** getterMethodToAttributeDetails = map; } - public void setLazyOneToOneMappings(List lazyOneToOneMappings){ - this.lazyOneToOneMappings = lazyOneToOneMappings; - } - public boolean isMappedSuperClass(){ return isMappedSuperClass; } --- 103,108 ---- ================================================================================ Merge Diffs: /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/TopLinkClassWeaver.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000005/AB0952363AC40CBFE034080020E8C54E.9 Report generated at Fri Jun 2 09:05:54 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tldev/source/essentials/oracle/toplink/essentials/internal/weaving/TopLinkClassWeaver.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000005/AB0952363AC40CBFE034080020E8C54E.9 Thu Jun 1 15:15:26 2006 *************** *** 136,142 **** cv_set.visitMethodInsn(INVOKEINTERFACE, TopLinkClassWeaver.VHI_SHORT_SIGNATURE, "setValue", "(Ljava/lang/Object;)V"); cv_set.visitVarInsn(ALOAD, 0); cv_set.visitVarInsn(ALOAD, 1); ! cv_set.visitFieldInsn(PUTFIELD, classDetails.getClassName(), attribute, "L" + attributeDetails.getReferenceClass().replace('.','/') + ";"); cv_set.visitInsn(RETURN); cv_set.visitMaxs(0 ,0); } --- 136,142 ---- cv_set.visitMethodInsn(INVOKEINTERFACE, TopLinkClassWeaver.VHI_SHORT_SIGNATURE, "setValue", "(Ljava/lang/Object;)V"); cv_set.visitVarInsn(ALOAD, 0); cv_set.visitVarInsn(ALOAD, 1); ! cv_set.visitFieldInsn(PUTFIELD, classDetails.getClassName(), attribute, "L" + attributeDetails.getReferenceClass().replace('.','/') + ";");//TopLinkClassWeaver.VHI_SIGNATURE); cv_set.visitInsn(RETURN); cv_set.visitMaxs(0 ,0); } *************** *** 259,265 **** addGetterMethodForFieldAccess(classDetails, attributeDetails); } } ! } } super.visitEnd(); --- 259,270 ---- addGetterMethodForFieldAccess(classDetails, attributeDetails); } } ! // attributes using indirection should use the weaved-in getter and setter methods for access. ! if (attributeDetails.getMapping().usesIndirection()){ ! ! attributeDetails.getMapping().setGetMethodName("_toplink_get" + attributeDetails.getAttributeName() + "_vh"); ! attributeDetails.getMapping().setSetMethodName("_toplink_set" + attributeDetails.getAttributeName() + "_vh"); ! } } } super.visitEnd(); ================================================================================ Merge Diffs: /ade/tware_toplink10i/tltest/source/essentials/oracle/toplink/essentials/testing/tests/weaving/SimpleWeaverTestSuite.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000008/AB0952363AC40CBFE034080020E8C54E.7 Report generated at Fri Jun 2 09:05:54 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tltest/source/essentials/oracle/toplink/essentials/testing/tests/weaving/SimpleWeaverTestSuite.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000008/AB0952363AC40CBFE034080020E8C54E.7 Thu Jun 1 15:36:14 2006 *************** *** 106,112 **** public void nullSessionTest() { boolean expectedFailure = false; try { ! TopLinkWeaver tw = (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(null, null, Thread.currentThread().getContextClassLoader()); } catch (IllegalArgumentException iae) { --- 106,112 ---- public void nullSessionTest() { boolean expectedFailure = false; try { ! TopLinkWeaver tw = (TopLinkWeaver)TransformerFactory.createTransformer(null, null, Thread.currentThread().getContextClassLoader()); } catch (IllegalArgumentException iae) { *************** *** 121,127 **** boolean expectedFailure = false; try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(session, null, Thread.currentThread().getContextClassLoader()); } catch (IllegalArgumentException iae) { expectedFailure = true; --- 121,127 ---- boolean expectedFailure = false; try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformer(session, null, Thread.currentThread().getContextClassLoader()); } catch (IllegalArgumentException iae) { expectedFailure = true; *************** *** 134,140 **** public void nullEntitiesTest(Session session) { try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(session, null, Thread.currentThread().getContextClassLoader()); } catch (Exception e) { --- 134,140 ---- public void nullEntitiesTest(Session session) { try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformer(session, null, Thread.currentThread().getContextClassLoader()); } catch (Exception e) { *************** *** 145,151 **** public void emptyEntitiesTest(Session session) { try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(session, new ArrayList(), Thread.currentThread().getContextClassLoader()); } catch (Exception e) { --- 145,151 ---- public void emptyEntitiesTest(Session session) { try { TopLinkWeaver tw = ! (TopLinkWeaver)TransformerFactory.createTransformer(session, new ArrayList(), Thread.currentThread().getContextClassLoader()); } catch (Exception e) { *************** *** 157,163 **** TopLinkWeaver tw = null; try { ! tw = (TopLinkWeaver)TransformerFactory.createTransformerAndModifyProject(session, entities, Thread.currentThread().getContextClassLoader()); } catch (Exception e) { --- 157,163 ---- TopLinkWeaver tw = null; try { ! tw = (TopLinkWeaver)TransformerFactory.createTransformer(session, entities, Thread.currentThread().getContextClassLoader()); } catch (Exception e) { ================================================================================ Merge Diffs: /ade/tware_toplink10i/tltest/source/essentials/oracle/toplink/essentials/testing/tests/weaving/RelationshipWeaverTestSuite.java vs. /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000009/AB0952363AC40CBFE034080020E8C54E.12 Report generated at Fri Jun 2 09:05:54 2006 -------------------------------------------------------------------------------- *** /ade/tware_toplink10i/tltest/source/essentials/oracle/toplink/essentials/testing/tests/weaving/RelationshipWeaverTestSuite.java Fri Jun 2 09:04:43 2006 --- /net/stottnfs2.ca.oracle.com/vol/vol1/ade_ottawa_txn/tware/tware_10essentials_weaving_one_to_one_060601/ade_storage/000009/AB0952363AC40CBFE034080020E8C54E.12 Thu Jun 1 15:36:32 2006 *************** *** 86,92 **** (AbstractSession) session, setupClassLoader, entities, true); eap.processORAnnotations(); TopLinkWeaver tw = (TopLinkWeaver) ! TransformerFactory.createTransformerAndModifyProject(session, entities, Thread.currentThread().getContextClassLoader()); byte[] newOrderBytes = tw.transform(simpleClassLoader, Order.class.getName().replace('.','/'), null, null, originalOrderBytes); --- 86,92 ---- (AbstractSession) session, setupClassLoader, entities, true); eap.processORAnnotations(); TopLinkWeaver tw = (TopLinkWeaver) ! TransformerFactory.createTransformer(session, entities, Thread.currentThread().getContextClassLoader()); byte[] newOrderBytes = tw.transform(simpleClassLoader, Order.class.getName().replace('.','/'), null, null, originalOrderBytes);