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.