You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by dr...@apache.org on 2011/03/15 17:51:13 UTC
svn commit: r1081850 - in /tapestry/tapestry5/trunk/tapestry-jpa/src:
main/java/org/apache/tapestry5/internal/jpa/
main/java/org/apache/tapestry5/jpa/ test/java/org/example/app3/entities/
test/java/org/example/app3/model/ test/java/org/example/app3/pag...
Author: drobiazko
Date: Tue Mar 15 16:51:13 2011
New Revision: 1081850
URL: http://svn.apache.org/viewvc?rev=1081850&view=rev
Log:
TAP5-1472: Added support for mapping files.
Added:
tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/model/
tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/model/Thing.java (with props)
tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/mappings.xml (with props)
Removed:
tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/entities/
Modified:
tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContentHandler.java
tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceUnitInfoImpl.java
tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/jpa/TapestryPersistenceUnitInfo.java
tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/pages/PersistThing.java
tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/jndi-datasource-persistence-unit.xml
Modified: tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContentHandler.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContentHandler.java?rev=1081850&r1=1081849&r2=1081850&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContentHandler.java (original)
+++ tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContentHandler.java Tue Mar 15 16:51:13 2011
@@ -133,10 +133,18 @@ public class PersistenceContentHandler i
{
persistenceUnitInfo.setValidationMode(toEnum(ValidationMode.class, string));
}
+ else if (ELEMENT_MAPPING_FILE.equals(localName))
+ {
+ persistenceUnitInfo.addMappingFileName(string);
+ }
else if (ELEMENT_NON_JTA_DATA_SOURCE.equals(localName))
{
persistenceUnitInfo.setNonJtaDataSource(lookupDataSource(string));
}
+ else if (ELEMENT_JTA_DATA_SOURCE.equals(localName))
+ {
+ persistenceUnitInfo.setJtaDataSource(lookupDataSource(string));
+ }
else if (ELEMENT_PERSISTENCE_UNIT.equals(localName))
{
if (persistenceUnitInfo != null)
@@ -185,7 +193,7 @@ public class PersistenceContentHandler i
{
try
{
- //TODO: Create InitialContext with environment properties?
+ // TODO: Create InitialContext with environment properties?
final Context initContext = new InitialContext();
final Context envContext = (Context) initContext.lookup("java:comp/env");
Modified: tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceUnitInfoImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceUnitInfoImpl.java?rev=1081850&r1=1081849&r2=1081850&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceUnitInfoImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceUnitInfoImpl.java Tue Mar 15 16:51:13 2011
@@ -41,12 +41,16 @@ public class PersistenceUnitInfoImpl imp
private DataSource nonJtaDataSource;
+ private DataSource jtaDataSource;
+
private ValidationMode validationMode;
private SharedCacheMode sharedCacheMode;
private final List<String> managedClassNames = new ArrayList<String>();
+ private final List<String> mappingFilesNames = new ArrayList<String>();
+
private final Properties properties = new Properties();
/**
@@ -57,6 +61,9 @@ public class PersistenceUnitInfoImpl imp
return persistenceUnitName;
}
+ /**
+ * {@inheritDoc}
+ */
public void setPersistenceUnitName(final String persistenceUnitName)
{
this.persistenceUnitName = persistenceUnitName;
@@ -70,6 +77,9 @@ public class PersistenceUnitInfoImpl imp
return persistenceProviderClassName;
}
+ /**
+ * {@inheritDoc}
+ */
public void setPersistenceProviderClassName(final String persistenceProviderClassName)
{
this.persistenceProviderClassName = persistenceProviderClassName;
@@ -83,6 +93,9 @@ public class PersistenceUnitInfoImpl imp
return transactionType;
}
+ /**
+ * {@inheritDoc}
+ */
public void setTransactionType(final PersistenceUnitTransactionType transactionType)
{
this.transactionType = transactionType;
@@ -93,7 +106,7 @@ public class PersistenceUnitInfoImpl imp
*/
public DataSource getJtaDataSource()
{
- return null;
+ return jtaDataSource;
}
/**
@@ -104,6 +117,9 @@ public class PersistenceUnitInfoImpl imp
return nonJtaDataSource;
}
+ /**
+ * {@inheritDoc}
+ */
public void setNonJtaDataSource(final DataSource nonJtaDataSource)
{
this.nonJtaDataSource = nonJtaDataSource;
@@ -112,9 +128,26 @@ public class PersistenceUnitInfoImpl imp
/**
* {@inheritDoc}
*/
+ public void setJtaDataSource(final DataSource jtaDataSource)
+ {
+ this.jtaDataSource = jtaDataSource;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public List<String> getMappingFileNames()
{
- return Arrays.asList();
+ return Collections.unmodifiableList(mappingFilesNames);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void addMappingFileName(final String fileName)
+ {
+ mappingFilesNames.add(fileName);
+
}
/**
@@ -141,11 +174,17 @@ public class PersistenceUnitInfoImpl imp
return Collections.unmodifiableList(managedClassNames);
}
+ /**
+ * {@inheritDoc}
+ */
public void addManagedClassName(final String className)
{
managedClassNames.add(className);
}
+ /**
+ * {@inheritDoc}
+ */
public void addManagedClass(final Class<?> clazz)
{
addManagedClassName(clazz.getName());
@@ -167,6 +206,9 @@ public class PersistenceUnitInfoImpl imp
return sharedCacheMode;
}
+ /**
+ * {@inheritDoc}
+ */
public void setSharedCacheMode(final SharedCacheMode cacheMode)
{
sharedCacheMode = cacheMode;
@@ -180,6 +222,9 @@ public class PersistenceUnitInfoImpl imp
return validationMode;
}
+ /**
+ * {@inheritDoc}
+ */
public void setValidationMode(final ValidationMode validationMode)
{
this.validationMode = validationMode;
@@ -201,6 +246,9 @@ public class PersistenceUnitInfoImpl imp
return persistenceXMLSchemaVersion;
}
+ /**
+ * {@inheritDoc}
+ */
public void setPersistenceXMLSchemaVersion(final String version)
{
persistenceXMLSchemaVersion = version;
Modified: tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/jpa/TapestryPersistenceUnitInfo.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/jpa/TapestryPersistenceUnitInfo.java?rev=1081850&r1=1081849&r2=1081850&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/jpa/TapestryPersistenceUnitInfo.java (original)
+++ tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/jpa/TapestryPersistenceUnitInfo.java Tue Mar 15 16:51:13 2011
@@ -30,6 +30,8 @@ public interface TapestryPersistenceUnit
void setNonJtaDataSource(DataSource nonJtaDataSource);
+ void setJtaDataSource(DataSource jtaDataSource);
+
void addManagedClassName(String className);
void addManagedClass(Class<?> clazz);
@@ -39,4 +41,6 @@ public interface TapestryPersistenceUnit
void setValidationMode(ValidationMode validationMode);
void setPersistenceXMLSchemaVersion(String version);
+
+ void addMappingFileName(String string);
}
Added: tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/model/Thing.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/model/Thing.java?rev=1081850&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/model/Thing.java (added)
+++ tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/model/Thing.java Tue Mar 15 16:51:13 2011
@@ -0,0 +1,43 @@
+// Copyright 2011 The Apache Software Foundation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.example.app3.model;
+
+public class Thing
+{
+ private Long id;
+
+ private String name;
+
+ public Long getId()
+ {
+ return id;
+ }
+
+ public void setId(final Long id)
+ {
+ this.id = id;
+ }
+
+ public String getName()
+ {
+ return name;
+ }
+
+ public void setName(final String name)
+ {
+ this.name = name;
+ }
+
+}
Propchange: tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/model/Thing.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/pages/PersistThing.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/pages/PersistThing.java?rev=1081850&r1=1081849&r2=1081850&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/pages/PersistThing.java (original)
+++ tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/example/app3/pages/PersistThing.java Tue Mar 15 16:51:13 2011
@@ -21,7 +21,7 @@ import org.apache.tapestry5.annotations.
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.jpa.JpaPersistenceConstants;
import org.apache.tapestry5.jpa.annotations.CommitAfter;
-import org.example.app3.entities.Thing;
+import org.example.app3.model.Thing;
public class PersistThing
{
Modified: tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/jndi-datasource-persistence-unit.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/jndi-datasource-persistence-unit.xml?rev=1081850&r1=1081849&r2=1081850&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/jndi-datasource-persistence-unit.xml (original)
+++ tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/jndi-datasource-persistence-unit.xml Tue Mar 15 16:51:13 2011
@@ -4,6 +4,7 @@
<persistence-unit name="JndiDataSourcePersistenceUnit" transaction-type="RESOURCE_LOCAL">
<non-jta-data-source>jdbc/JPATest</non-jta-data-source>
+ <mapping-file>mappings.xml</mapping-file>
<properties>
<property name="eclipselink.ddl-generation" value="create-tables"/>
<property name="eclipselink.logging.level" value="fine"/>
Added: tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/mappings.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/mappings.xml?rev=1081850&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/mappings.xml (added)
+++ tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/mappings.xml Tue Mar 15 16:51:13 2011
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<entity-mappings version="2.1"
+ xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+ <entity class="org.example.app3.model.Thing">
+ <attributes>
+ <id name="id">
+ <column name="THING_ID" />
+ <generated-value/>
+ </id>
+ <basic name="name" />
+ </attributes>
+ </entity>
+
+</entity-mappings>
\ No newline at end of file
Propchange: tapestry/tapestry5/trunk/tapestry-jpa/src/test/resources/mappings.xml
------------------------------------------------------------------------------
svn:mime-type = text/plain