Author: aadamchik
Date: Tue Oct 10 07:36:17 2006
New Revision: 454755

URL: http://svn.apache.org/viewvc?view=rev&rev=454755
Log:
CAY-684 - added a sniffer that checks the agent presence in the environment;
moved the agent to cayenne.instrument package

Modified:
    
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/instrument/InstrumentingUnit.java
    
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/spi/JpaPersistenceProvider.java

Modified: 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/instrument/InstrumentingUnit.java
URL: 
http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/instrument/InstrumentingUnit.java?view=diff&rev=454755&r1=454754&r2=454755
==============================================================================
--- 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/instrument/InstrumentingUnit.java
 (original)
+++ 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/instrument/InstrumentingUnit.java
 Tue Oct 10 07:36:17 2006
@@ -25,6 +25,7 @@
 
 import javax.persistence.spi.ClassTransformer;
 
+import org.apache.cayenne.instrument.CayenneAgent;
 import org.apache.cayenne.jpa.spi.JpaUnit;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;

Modified: 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/spi/JpaPersistenceProvider.java
URL: 
http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/spi/JpaPersistenceProvider.java?view=diff&rev=454755&r1=454754&r2=454755
==============================================================================
--- 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/spi/JpaPersistenceProvider.java
 (original)
+++ 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/spi/JpaPersistenceProvider.java
 Tue Oct 10 07:36:17 2006
@@ -27,8 +27,10 @@
 import javax.persistence.spi.PersistenceUnitInfo;
 import javax.persistence.spi.PersistenceUnitTransactionType;
 
+import org.apache.cayenne.instrument.InstrumentUtil;
 import org.apache.cayenne.jpa.JpaProviderException;
 import org.apache.cayenne.jpa.conf.UnitLoader;
+import org.apache.cayenne.jpa.instrument.InstrumentingUnitFactory;
 
 /**
  * <code>PersistenceProvider</code> implementation that doesn't provide its 
own ORM
@@ -48,6 +50,9 @@
     public static final String DATA_SOURCE_FACTORY_PROPERTY = 
"org.apache.cayenne.jpa.jpaDataSourceFactory";
     public static final String UNIT_FACTORY_PROPERTY = 
"org.apache.cayenne.jpa.jpaUnitFactory";
 
+    public static final String INSTRUMENTING_FACTORY_CLASS = 
InstrumentingUnitFactory.class
+            .getName();
+
     protected boolean validateDescriptors;
     protected UnitLoader unitLoader;
     protected Properties defaultProperties;
@@ -87,10 +92,16 @@
         }
 
         String unitFactory = System.getProperty(UNIT_FACTORY_PROPERTY);
+        if (unitFactory == null && InstrumentUtil.isAgentLoaded()) {
+            unitFactory = INSTRUMENTING_FACTORY_CLASS;
+        }
+
         if (unitFactory != null) {
             defaultProperties.put(UNIT_FACTORY_PROPERTY, unitFactory);
         }
     }
+
+  
 
     /**
      * Configures default properties.


Reply via email to