Author: dblevins
Date: Fri Jul 6 18:47:19 2012
New Revision: 1358340
URL: http://svn.apache.org/viewvc?rev=1358340&view=rev
Log:
OPENEJB-1860 - openejb.descriptors.output logging and functional improvements
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/OutputGeneratedDescriptors.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/OutputGeneratedDescriptors.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/OutputGeneratedDescriptors.java?rev=1358340&r1=1358339&r2=1358340&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/OutputGeneratedDescriptors.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/OutputGeneratedDescriptors.java
Fri Jul 6 18:47:19 2012
@@ -23,6 +23,8 @@ import org.apache.openejb.jee.JAXBContex
import org.apache.openejb.jee.JaxbJavaee;
import org.apache.openejb.jee.jpa.EntityMappings;
import org.apache.openejb.jee.jpa.JpaJaxbUtil;
+import org.apache.openejb.jee.jpa.unit.Persistence;
+import org.apache.openejb.jee.jpa.unit.PersistenceUnit;
import org.apache.openejb.jee.oejb2.GeronimoEjbJarType;
import org.apache.openejb.jee.oejb2.JaxbOpenejbJar2;
import org.apache.openejb.jee.oejb3.JaxbOpenejbJar3;
@@ -95,6 +97,7 @@ public class OutputGeneratedDescriptors
JAXBContext ctx =
JAXBContextFactory.newInstance(Connector.class);
Marshaller marshaller = ctx.createMarshaller();
marshaller.marshal(connector, out);
+ logger.info("Dumping Generated ra.xml to: " +
tempFile.getAbsolutePath());
} catch (JAXBException e) {
} finally {
IO.close(out);
@@ -118,11 +121,30 @@ public class OutputGeneratedDescriptors
}
private void writeGenratedCmpMappings(AppModule appModule) {
+
+ for (PersistenceModule persistenceModule :
appModule.getPersistenceModules()) {
+ try {
+ final Persistence persistence =
persistenceModule.getPersistence();
+ if (hasCmpPersistenceUnit(persistence)) {
+ final File tempFile = tempFile("persistence-", ".xml");
+ final OutputStream out = IO.write(tempFile);
+ try {
+ JpaJaxbUtil.marshal(Persistence.class, persistence,
out);
+ logger.info("Dumping Generated CMP persistence.xml to:
" + tempFile.getAbsolutePath());
+ } catch (JAXBException e) {
+ } finally{
+ IO.close(out);
+ }
+ }
+ } catch (IOException e) {
+ }
+ }
try {
final File tempFile = tempFile("openejb-cmp-generated-orm-",
".xml");
final OutputStream out = IO.write(tempFile);
try {
JpaJaxbUtil.marshal(EntityMappings.class,
appModule.getCmpMappings(), out);
+ logger.info("Dumping Generated CMP mappings.xml to: " +
tempFile.getAbsolutePath());
} catch (JAXBException e) {
} finally{
IO.close(out);
@@ -131,6 +153,13 @@ public class OutputGeneratedDescriptors
}
}
+ private boolean hasCmpPersistenceUnit(Persistence persistence) {
+ for (PersistenceUnit unit : persistence.getPersistenceUnit()) {
+ if (unit.getName().startsWith("cmp")) return true;
+ }
+ return false;
+ }
+
private void writeOpenejbJar(EjbModule ejbModule) {
try {
final OpenejbJar openejbJar = ejbModule.getOpenejbJar();