|
From: <id...@us...> - 2009-03-17 14:30:16
|
Revision: 88
http://cse-ip.svn.sourceforge.net/cse-ip/?rev=88&view=rev
Author: idueppe
Date: 2009-03-17 14:29:47 +0000 (Tue, 17 Mar 2009)
Log Message:
-----------
Refactoring of the IdentityMapper interface.
Modified Paths:
--------------
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/resources/META-INF/persistence.xml
Added Paths:
-----------
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdNotFoundException.java
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapper.java
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperBean.java
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperLocal.java
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObject.java
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObjectPK.java
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MapperException.java
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/PersistentUnitConfigurationTest.java
Removed Paths:
-------------
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/idmapper/
cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/
Added: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdNotFoundException.java
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdNotFoundException.java (rev 0)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdNotFoundException.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -0,0 +1,26 @@
+package de.campussource.cse.mapper;
+
+
+/**
+ *
+ * @author Ingo Dueppe
+ */
+public class IdNotFoundException extends MapperException {
+
+ private static final long serialVersionUID = 3260263352045745855L;
+
+ public IdNotFoundException() {}
+
+ public IdNotFoundException(String message) {
+ super(message);
+ }
+
+ public IdNotFoundException(Throwable cause) {
+ super(cause);
+ }
+
+ public IdNotFoundException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+}
Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdNotFoundException.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapper.java
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapper.java (rev 0)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapper.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -0,0 +1,45 @@
+package de.campussource.cse.mapper;
+
+import javax.ejb.Remote;
+
+/**
+ * IdentityMapper manage the administration of mappings between the global
+ * unique busId and client specific object ids. Each mapping exists of three
+ * ids. The global unique bus id, the client instance unique object id, and the
+ * client unique instance id.
+ *
+ * @author Ingo Dueppe
+ */
+@Remote
+public interface IdentityMapper {
+
+ /**
+ * Convert a clientInstanceId and a clientObjectId to a busID. If the busId
+ * doesn't exist for the given combination of the parameters then a new busId will be generated.
+ *
+ * @param clientInstanceId the Id of the client instance.
+ * @param clientObjectId the Id of the client object. The id can be any arbitrary string.
+ * @return busId according to the clientInstance- and clientObjectId.
+ */
+ public Long toBusId(Long clientInstanceId, String clientObjectId);
+
+ /**
+ * Convert the combination of busId and clientInstanceId to a clientObjectId.
+ *
+ * @param busId a existing bus id.
+ * @param clientInstanceId a existing client instance id.
+ * @return the corresponding clientObjectID
+ * @throws IdNotFoundException thrown if either the busId or the clientInstanceId doesn't exists.
+ */
+ public String toClientObjectId(Long busId, Long clientInstanceId) throws IdNotFoundException;
+
+ /**
+ * Save or update the clientObjectId according to the given busId and clientInstanceId.
+ *
+ * @param busId the global unique busId.
+ * @param clientInstanceId the global unique client instance id.
+ * @param clientObjectId the client unique object id.
+ */
+ public void persistClientObjectId(Long busId, Long clientInstanceId, String clientObjectId);
+
+}
Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapper.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperBean.java
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperBean.java (rev 0)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperBean.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -0,0 +1,78 @@
+package de.campussource.cse.mapper;
+
+import javax.ejb.Stateless;
+import javax.ejb.TransactionAttribute;
+import javax.ejb.TransactionAttributeType;
+import javax.persistence.EntityExistsException;
+import javax.persistence.EntityManager;
+import javax.persistence.NoResultException;
+import javax.persistence.PersistenceContext;
+import javax.persistence.Query;
+
+import org.apache.commons.lang.Validate;
+
+/**
+ * Standard IdentityMapper implementation
+ * @author Ingo Dueppe
+ */
+@Stateless
+public class IdentityMapperBean implements IdentityMapper {
+
+ @PersistenceContext
+ private EntityManager em;
+
+ @Override
+ @TransactionAttribute(TransactionAttributeType.REQUIRED)
+ public void persistClientObjectId(Long busId, Long clientInstanceId, String clientObjectId) {
+ Validate.notNull(busId, "IdentityMapper.persistClientObjectId: Parameter busId is mandatory.");
+ Validate.notNull(clientInstanceId, "IdentityMapper.persistClientObjectId: Parameter clientInstanceId is mandatory.");
+ Validate.notEmpty(clientObjectId, "IdentityMapper.persistClientObjectId: Parameter clientObjectId is mandatory.");
+ MappedClientObject mapped = new MappedClientObject(busId, clientInstanceId, clientObjectId);
+ try {
+ em.persist(mapped);
+ } catch (EntityExistsException eee) {
+ em.merge(mapped);
+ }
+ System.out.println("MappedClientObject "+mapped.toString());
+ }
+
+ @Override
+ @TransactionAttribute(TransactionAttributeType.REQUIRED)
+ public Long toBusId(Long clientInstanceId, String clientObjectId) {
+ Validate.notNull(clientInstanceId, "IdentityMapper.toBusId: Parameter clientInstanceId is mandatory.");
+ Validate.notNull(clientObjectId, "IdentityMapper.toBusId: Parameter clientObjectId is mandatory.");
+ try {
+ Query query = em.createNamedQuery(MappedClientObject.FIND_BUSID);
+ query.setParameter("clientInstanceId", clientInstanceId);
+ query.setParameter("clientObjectId", clientObjectId);
+ return (Long) query.getSingleResult();
+ } catch (NoResultException nre) {
+ return createMapping(clientInstanceId, clientObjectId);
+ }
+ }
+
+ private Long createMapping(Long clientInstanceId, String clientObjectId) {
+ MappedClientObject mapped = new MappedClientObject();
+ mapped.setClientInstanceId(clientInstanceId);
+ mapped.setClientObjectId(clientObjectId);
+ em.persist(mapped);
+ return mapped.getBusId();
+ }
+
+ @Override
+ @TransactionAttribute(TransactionAttributeType.REQUIRED)
+ public String toClientObjectId(Long busId, Long clientInstanceId) throws IdNotFoundException {
+ Validate.notNull(busId,"IdentityMapper.toClientObjectId: Parameter busId is mandatory.");
+ Validate.notNull(clientInstanceId,"IdentityMapper.toClientObjectId: Parameter clientInstanceId is mandatory.");
+ try {
+ Query query = em.createNamedQuery(MappedClientObject.FIND_OBJECTID);
+ query.setParameter("clientInstanceId", clientInstanceId);
+ query.setParameter("busId", busId);
+ return (String) query.getSingleResult();
+ } catch (NoResultException nre) {
+ throw new IdNotFoundException(nre);
+ }
+
+ }
+
+}
Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperBean.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperLocal.java
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperLocal.java (rev 0)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperLocal.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -0,0 +1,13 @@
+package de.campussource.cse.mapper;
+
+import javax.ejb.Local;
+
+/**
+ * The local interface of IdentityMapper
+ * @see de.campussource.cse.mapper.IdentityMapper
+ * @author Ingo Dueppe
+ */
+@Local
+public interface IdentityMapperLocal extends IdentityMapper {
+
+}
Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/IdentityMapperLocal.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObject.java
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObject.java (rev 0)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObject.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -0,0 +1,102 @@
+package de.campussource.cse.mapper;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.IdClass;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
+import javax.persistence.Table;
+import javax.persistence.UniqueConstraint;
+
+import org.apache.commons.lang.builder.EqualsBuilder;
+import org.apache.commons.lang.builder.HashCodeBuilder;
+import org.apache.commons.lang.builder.ToStringBuilder;
+import org.apache.commons.lang.builder.ToStringStyle;
+
+@Entity(name="MappedClientObject")
+@Table(name = "MAPPED_CLIENT_OBJECT",
+ uniqueConstraints = @UniqueConstraint(columnNames = { "CLIENT_OBJECT_ID", "CLIENT_INSTANCE_ID" }))
+@NamedQueries(value = {
+ @NamedQuery(
+ name = "MappedClientObject.findObjectId",
+ query = "select c.clientObjectId from MappedClientObject c where c.busId=:busId and c.clientInstanceId = :clientInstanceId"),
+ @NamedQuery(
+ name = "MappedClientObject.findBusId",
+ query = "select c.busId from MappedClientObject c where c.clientObjectId=:clientObjectId and c.clientInstanceId = :clientInstanceId") })
+@IdClass(value=MappedClientObjectPK.class)
+public class MappedClientObject {
+
+ public static final String FIND_OBJECTID = "MappedClientObject.findObjectId";
+ public static final String FIND_BUSID = "MappedClientObject.findBusId";
+
+ private Long busId;
+
+ private Long clientInstanceId;
+
+ private String clientObjectId;
+
+ public MappedClientObject() {
+ };
+
+ public MappedClientObject(Long busId, Long clientInstanceId, String clientObjectId) {
+ this.busId = busId;
+ this.clientInstanceId = clientInstanceId;
+ this.clientObjectId = clientObjectId;
+ }
+
+ @Id
+ @Column(name="BUS_ID", nullable = false)
+ @GeneratedValue(strategy = GenerationType.AUTO)
+ public Long getBusId() {
+ return busId;
+ }
+
+ public void setBusId(Long busId) {
+ this.busId = busId;
+ }
+
+ @Id
+ @Column(name="CLIENT_INSTANCE_ID", nullable=false)
+ public Long getClientInstanceId() {
+ return clientInstanceId;
+ }
+
+ public void setClientInstanceId(Long clientInstanceId) {
+ this.clientInstanceId = clientInstanceId;
+ }
+
+ @Column(name="CLIENT_OBJECT_ID", nullable=false)
+ public String getClientObjectId() {
+ return clientObjectId;
+ }
+
+ public void setClientObjectId(String clientObjectId) {
+ this.clientObjectId = clientObjectId;
+ }
+
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (!(obj instanceof MappedClientObject)) {
+ return false;
+ } else {
+ MappedClientObject other = (MappedClientObject) obj;
+ return new EqualsBuilder().append(busId, other.busId).append(clientInstanceId, other.clientInstanceId)
+ .append(clientObjectId, other.clientObjectId).isEquals();
+ }
+ }
+
+ public int hashCode() {
+ return new HashCodeBuilder().append(busId).append(clientInstanceId).append(clientObjectId).toHashCode();
+ }
+
+ public String toString() {
+ return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE).append(busId).append(clientInstanceId).append(
+ clientObjectId).toString();
+ }
+
+}
Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObject.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObjectPK.java
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObjectPK.java (rev 0)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObjectPK.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -0,0 +1,60 @@
+package de.campussource.cse.mapper;
+
+import java.io.Serializable;
+
+import org.apache.commons.lang.builder.EqualsBuilder;
+import org.apache.commons.lang.builder.HashCodeBuilder;
+import org.apache.commons.lang.builder.ToStringBuilder;
+import org.apache.commons.lang.builder.ToStringStyle;
+
+/**
+ * @author Ingo Dueppe
+ */
+public class MappedClientObjectPK implements Serializable {
+
+ private static final long serialVersionUID = 4835950977456597594L;
+
+ private Long busId;
+ private Long clientInstanceId;
+
+ public MappedClientObjectPK() {}
+
+ public Long getBusId() {
+ return busId;
+ }
+
+ public void setBusId(Long busId) {
+ this.busId = busId;
+ }
+
+ public Long getClientInstanceId() {
+ return clientInstanceId;
+ }
+
+ public void setClientInstanceId(Long clientInstanceId) {
+ this.clientInstanceId = clientInstanceId;
+ }
+
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (!(obj instanceof MappedClientObjectPK)) {
+ return false;
+ } else {
+ MappedClientObjectPK other = (MappedClientObjectPK) obj;
+ return new EqualsBuilder().append(busId, other.busId).append(clientInstanceId, other.clientInstanceId)
+ .isEquals();
+ }
+ }
+
+ public int hashCode() {
+ return new HashCodeBuilder().append(busId).append(clientInstanceId).toHashCode();
+ }
+
+ public String toString() {
+ return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE).append(busId).append(clientInstanceId).toString();
+ }
+
+
+}
Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MappedClientObjectPK.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MapperException.java
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MapperException.java (rev 0)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MapperException.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -0,0 +1,26 @@
+package de.campussource.cse.mapper;
+
+/**
+ * General mapper exception
+ * @author Ingo Dueppe
+ */
+public class MapperException extends Exception {
+
+ private static final long serialVersionUID = -2553188081269164040L;
+
+ public MapperException() {
+ }
+
+ public MapperException(String message) {
+ super(message);
+ }
+
+ public MapperException(Throwable cause) {
+ super(cause);
+ }
+
+ public MapperException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+}
Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/main/java/de/campussource/cse/mapper/MapperException.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java 2009-03-17 14:28:11 UTC (rev 87)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -1,21 +1,93 @@
package de.campussource.cse.mapper;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
-import java.net.MalformedURLException;
-import java.net.URL;
-
import org.junit.Before;
import org.junit.Test;
-import de.campussource.cse.idmapper.ClientInstance;
-import de.campussource.cse.idmapper.IdMapperBean;
+import de.campussource.cse.common.test.AbstractPersistentUnitTest;
+public class IdentityMapperTest extends AbstractPersistentUnitTest {
-public class IdentityMapperTest {
+ private static final Long UNKNOWN_BUS_ID = -1000L;
+ private static final Long BUS_ID = 1000L;
+ private static final Long CLIENT_INSTANCE_ID = 1000L;
+ private static final String CLIENT_OBJECT_ID = "CSE:SYSTEM:CLIENTID";
+
+ private IdentityMapper mapper;
+
+ @Before
+ public void setUp() {
+ txBegin();
+ mapper = new IdentityMapperBean();
+ autowireByType(mapper);
+ }
+
@Test
- public void testPersistClientObjectId() throws MalformedURLException {
+ public void testBusToClientMapping() throws MapperException {
+ Long busId = mapper.toBusId(CLIENT_INSTANCE_ID, CLIENT_OBJECT_ID);
+ String clientId = mapper.toClientObjectId(busId, CLIENT_INSTANCE_ID);
+ assertEquals(CLIENT_OBJECT_ID, clientId);
}
-
+ @Test(expected = IdNotFoundException.class)
+ public void testBusIdNotFound() throws IdNotFoundException {
+ mapper.toClientObjectId(CLIENT_INSTANCE_ID, UNKNOWN_BUS_ID);
+ }
+
+ @Test(expected = IdNotFoundException.class)
+ public void testClientObjectIdNotFound() throws IdNotFoundException {
+ Long busId = mapper.toBusId(CLIENT_INSTANCE_ID, CLIENT_OBJECT_ID);
+ assertNotNull(busId);
+ mapper.toClientObjectId(busId, CLIENT_INSTANCE_ID + uniqueId());
+ }
+
+ @Test
+ public void testPersistClientObjectId() throws MapperException {
+ // Persist a new mapping of client object id to a given bus id and verify the results
+ mapper.persistClientObjectId(BUS_ID, CLIENT_INSTANCE_ID, CLIENT_OBJECT_ID);
+ commitAndBeginTx();
+ assertEquals(BUS_ID, mapper.toBusId(CLIENT_INSTANCE_ID, CLIENT_OBJECT_ID));
+ assertEquals(CLIENT_OBJECT_ID, mapper.toClientObjectId(BUS_ID, CLIENT_INSTANCE_ID));
+ // Override the existing mapping to a new client object id and verify the results
+ mapper.persistClientObjectId(BUS_ID, CLIENT_INSTANCE_ID, "NEW:CLIENT:OBJECT:ID");
+ assertEquals(BUS_ID, mapper.toBusId(CLIENT_INSTANCE_ID, "NEW:CLIENT:OBJECT:ID"));
+ assertEquals("NEW:CLIENT:OBJECT:ID", mapper.toClientObjectId(BUS_ID, CLIENT_INSTANCE_ID));
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testToBusNoClientInstanceParameter() throws IdNotFoundException {
+ mapper.toBusId(null, CLIENT_OBJECT_ID);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testToBusNoObjectIdParameter() throws IdNotFoundException {
+ mapper.toBusId(CLIENT_INSTANCE_ID, null);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testToClientNoBusIdParameter() throws IdNotFoundException {
+ mapper.toClientObjectId(null, CLIENT_INSTANCE_ID);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testToClientNoInstanceIdParameter() throws IdNotFoundException {
+ mapper.toClientObjectId(BUS_ID, null);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testPersistNoBusIdParameter() throws IdNotFoundException {
+ mapper.persistClientObjectId(null, CLIENT_INSTANCE_ID, CLIENT_OBJECT_ID);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testPersistNoInstanceIdParameter() throws IdNotFoundException {
+ mapper.persistClientObjectId(BUS_ID, null, CLIENT_OBJECT_ID);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void testPersistNoObjectIdParameter() throws IdNotFoundException {
+ mapper.persistClientObjectId(BUS_ID, CLIENT_INSTANCE_ID, "");
+ }
}
Copied: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/PersistentUnitConfigurationTest.java (from rev 78, cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitConfigurationTest.java)
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/PersistentUnitConfigurationTest.java (rev 0)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/PersistentUnitConfigurationTest.java 2009-03-17 14:29:47 UTC (rev 88)
@@ -0,0 +1,32 @@
+package de.campussource.cse.mapper;
+
+import static org.junit.Assert.assertNotNull;
+
+import java.util.List;
+
+import javax.persistence.EntityManager;
+import javax.persistence.EntityManagerFactory;
+import javax.persistence.Persistence;
+
+import org.junit.Test;
+
+public class PersistentUnitConfigurationTest {
+
+ @Test
+ public void testConfiguration() {
+ try {
+ EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("cseip");
+ EntityManager entityManager = entityManagerFactory.createEntityManager();
+
+ List<MappedClientObject> mappings = entityManager.createQuery("SELECT m FROM MapperClientObject m").getResultList();
+ assertNotNull(mappings);
+
+ entityManager.close();
+ entityManagerFactory.close();
+ } catch (RuntimeException rt) {
+ rt.printStackTrace();
+ throw rt;
+ }
+ }
+
+}
Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/PersistentUnitConfigurationTest.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/resources/META-INF/persistence.xml
===================================================================
--- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/resources/META-INF/persistence.xml 2009-03-17 14:28:11 UTC (rev 87)
+++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/resources/META-INF/persistence.xml 2009-03-17 14:29:47 UTC (rev 88)
@@ -4,12 +4,10 @@
version="1.0">
<persistence-unit name="cseip" transaction-type="RESOURCE_LOCAL">
<provider>oracle.toplink.essentials.PersistenceProvider</provider>
- <class>de.campussource.cse.idmapper.ClientInstance</class>
- <class>de.campussource.cse.idmapper.ClientObject</class>
+ <class>de.campussource.cse.mapper.MappedClientObject</class>
<properties>
<property name="toplink.ddl-generation" value="drop-and-create-tables" />
<property name="toplink.jdbc.driver" value="com.mysql.jdbc.Driver" />
-<!-- <property name="toplink.jdbc.url" value="jdbc:mysql://localhost:3306/cseip?profileSQL=true&createDatabaseIfNotExist=true" />-->
<property name="toplink.jdbc.url" value="jdbc:mysql://localhost:3306/cseip?createDatabaseIfNotExist=true" />
<property name="toplink.jdbc.user" value="root" />
<property name="toplink.jdbc.password" value="masterkey" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|