diff --git a/mvn-build/integration-tests/src/main/java/org/springframework/ldap/transaction/compensating/manager/LdapAndJdbcDummyDaoImpl.java b/mvn-build/integration-tests/src/main/java/org/springframework/ldap/transaction/compensating/manager/LdapAndJdbcDummyDaoImpl.java
index ec0b43e6..cfa5e664 100644
--- a/mvn-build/integration-tests/src/main/java/org/springframework/ldap/transaction/compensating/manager/LdapAndJdbcDummyDaoImpl.java
+++ b/mvn-build/integration-tests/src/main/java/org/springframework/ldap/transaction/compensating/manager/LdapAndJdbcDummyDaoImpl.java
@@ -21,158 +21,146 @@ import org.springframework.ldap.core.DistinguishedName;
import org.springframework.ldap.core.LdapTemplate;
public class LdapAndJdbcDummyDaoImpl implements DummyDao {
- private LdapTemplate ldapTemplate;
+ private LdapTemplate ldapTemplate;
- private JdbcTemplate jdbcTemplate;
+ private JdbcTemplate jdbcTemplate;
- public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
- this.jdbcTemplate = jdbcTemplate;
- }
+ public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
+ this.jdbcTemplate = jdbcTemplate;
+ }
- public void setLdapTemplate(LdapTemplate ldapTemplate) {
- this.ldapTemplate = ldapTemplate;
- }
+ public void setLdapTemplate(LdapTemplate ldapTemplate) {
+ this.ldapTemplate = ldapTemplate;
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#createWithException(java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String)
- */
- public void createWithException(String country, String company,
- String fullname, String lastname, String description) {
- create(country, company, fullname, lastname, description);
- throw new DummyException("This method failed");
- }
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#createWithException(java.lang.String,
+ * java.lang.String, java.lang.String, java.lang.String, java.lang.String)
+ */
+ public void createWithException(String country, String company, String fullname, String lastname, String description) {
+ create(country, company, fullname, lastname, description);
+ throw new DummyException("This method failed");
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#create(java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String)
- */
- public void create(String country, String company, String fullname,
- String lastname, String description) {
- DistinguishedName dn = new DistinguishedName();
- dn.add("c", country);
- dn.add("ou", company);
- dn.add("cn", fullname);
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#create(java.lang.String,
+ * java.lang.String, java.lang.String, java.lang.String, java.lang.String)
+ */
+ public void create(String country, String company, String fullname, String lastname, String description) {
+ DistinguishedName dn = new DistinguishedName();
+ dn.add("c", country);
+ dn.add("ou", company);
+ dn.add("cn", fullname);
- DirContextAdapter ctx = new DirContextAdapter();
- ctx.setAttributeValues("objectclass", new String[] { "top", "person" });
- ctx.setAttributeValue("cn", fullname);
- ctx.setAttributeValue("sn", lastname);
- ctx.setAttributeValue("description", description);
- ldapTemplate.bind(dn, ctx, null);
- jdbcTemplate.update("insert into PERSON values(?, ?, ?)", new Object[] {
- fullname, lastname, description });
- }
+ DirContextAdapter ctx = new DirContextAdapter();
+ ctx.setAttributeValues("objectclass", new String[] { "top", "person" });
+ ctx.setAttributeValue("cn", fullname);
+ ctx.setAttributeValue("sn", lastname);
+ ctx.setAttributeValue("description", description);
+ ldapTemplate.bind(dn, ctx, null);
+ jdbcTemplate.update("insert into PERSON values(?, ?, ?)", new Object[] { fullname, lastname, description });
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#update(java.lang.String,
- * java.lang.String, java.lang.String)
- */
- public void update(String dn, String fullname, String lastname,
- String description) {
- DirContextAdapter ctx = (DirContextAdapter) ldapTemplate.lookup(dn);
- ctx.setAttributeValue("sn", lastname);
- ctx.setAttributeValue("description", description);
- ctx.update();
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#update(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public void update(String dn, String fullname, String lastname, String description) {
+ DirContextAdapter ctx = (DirContextAdapter) ldapTemplate.lookup(dn);
+ ctx.setAttributeValue("sn", lastname);
+ ctx.setAttributeValue("description", description);
+ ctx.update();
- ldapTemplate.rebind(dn, ctx, null);
- jdbcTemplate
- .update(
- "update PERSON set lastname=?, description = ? where fullname = ?",
- new Object[] { lastname, description, fullname });
- }
+ ldapTemplate.rebind(dn, ctx, null);
+ jdbcTemplate.update("update PERSON set lastname=?, description = ? where fullname = ?", new Object[] {
+ lastname, description, fullname });
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#updateWithException(java.lang.String,
- * java.lang.String, java.lang.String)
- */
- public void updateWithException(String dn, String fullname,
- String lastname, String description) {
- update(dn, fullname, lastname, description);
- throw new DummyException("This method failed.");
- }
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#updateWithException(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public void updateWithException(String dn, String fullname, String lastname, String description) {
+ update(dn, fullname, lastname, description);
+ throw new DummyException("This method failed.");
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#updateAndRename(java.lang.String,
- * java.lang.String, java.lang.String)
- */
- public void updateAndRename(String dn, String newDn, String description) {
- DirContextAdapter ctx = (DirContextAdapter) ldapTemplate.lookup(dn);
- ctx.setAttributeValue("description", description);
- ctx.update();
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#updateAndRename(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public void updateAndRename(String dn, String newDn, String description) {
+ DirContextAdapter ctx = (DirContextAdapter) ldapTemplate.lookup(dn);
+ ctx.setAttributeValue("description", description);
+ ctx.update();
- ldapTemplate.rebind(dn, ctx, null);
- ldapTemplate.rename(dn, newDn);
- }
+ ldapTemplate.rebind(dn, ctx, null);
+ ldapTemplate.rename(dn, newDn);
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#updateAndRenameWithException(java.lang.String,
- * java.lang.String, java.lang.String)
- */
- public void updateAndRenameWithException(String dn, String newDn,
- String description) {
- updateAndRename(dn, newDn, description);
- throw new DummyException("This method failed.");
- }
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#updateAndRenameWithException(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public void updateAndRenameWithException(String dn, String newDn, String description) {
+ updateAndRename(dn, newDn, description);
+ throw new DummyException("This method failed.");
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#modifyAttributes(java.lang.String,
- * java.lang.String, java.lang.String)
- */
- public void modifyAttributes(String dn, String lastName, String description) {
- DirContextAdapter ctx = (DirContextAdapter) ldapTemplate.lookup(dn);
- ctx.setAttributeValue("sn", lastName);
- ctx.setAttributeValue("description", description);
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#modifyAttributes(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public void modifyAttributes(String dn, String lastName, String description) {
+ DirContextAdapter ctx = (DirContextAdapter) ldapTemplate.lookup(dn);
+ ctx.setAttributeValue("sn", lastName);
+ ctx.setAttributeValue("description", description);
- ldapTemplate.modifyAttributes(dn, ctx.getModificationItems());
- }
+ ldapTemplate.modifyAttributes(dn, ctx.getModificationItems());
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#modifyAttributesWithException(java.lang.String,
- * java.lang.String, java.lang.String)
- */
- public void modifyAttributesWithException(String dn, String lastName,
- String description) {
- modifyAttributes(dn, lastName, description);
- throw new DummyException("This method failed.");
- }
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#modifyAttributesWithException(java.lang.String,
+ * java.lang.String, java.lang.String)
+ */
+ public void modifyAttributesWithException(String dn, String lastName, String description) {
+ modifyAttributes(dn, lastName, description);
+ throw new DummyException("This method failed.");
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#unbind(java.lang.String)
- */
- public void unbind(String dn, String fullname) {
- ldapTemplate.unbind(dn);
- jdbcTemplate.update("delete from PERSON where fullname=?",
- new Object[] { fullname });
- }
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#unbind(java.lang.String)
+ */
+ public void unbind(String dn, String fullname) {
+ ldapTemplate.unbind(dn);
+ jdbcTemplate.update("delete from PERSON where fullname=?", new Object[] { fullname });
+ }
- /*
- * (non-Javadoc)
- *
- * @see org.springframework.ldap.transaction.support.DummyDao#unbindWithException(java.lang.String)
- */
- public void unbindWithException(String dn, String fullname) {
- unbind(dn, fullname);
- throw new DummyException("This operation failed.");
- }
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.springframework.ldap.transaction.support.DummyDao#unbindWithException(java.lang.String)
+ */
+ public void unbindWithException(String dn, String fullname) {
+ unbind(dn, fullname);
+ throw new DummyException("This operation failed.");
+ }
}
diff --git a/mvn-build/integration-tests/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceAndDataSourceTransactionManagerIntegrationTest.java b/mvn-build/integration-tests/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceAndDataSourceTransactionManagerIntegrationTest.java
index 900a1425..72c31a08 100644
--- a/mvn-build/integration-tests/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceAndDataSourceTransactionManagerIntegrationTest.java
+++ b/mvn-build/integration-tests/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceAndDataSourceTransactionManagerIntegrationTest.java
@@ -33,13 +33,17 @@ import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.core.io.ClassPathResource;
import org.springframework.dao.EmptyResultDataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.ldap.AbstractLdapTemplateIntegrationTest;
import org.springframework.ldap.NameNotFoundException;
import org.springframework.ldap.core.AttributesMapper;
+import org.springframework.ldap.core.ContextSource;
+import org.springframework.ldap.core.DistinguishedName;
import org.springframework.ldap.core.LdapTemplate;
+import org.springframework.ldap.test.LdapTestUtils;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.transaction.support.TransactionSynchronizationManager;
@@ -63,9 +67,9 @@ public class ContextSourceAndDataSourceTransactionManagerIntegrationTest extends
@Autowired
private JdbcTemplate jdbcTemplate;
- public void setDummyDao(DummyDao dummyDaoImpl) {
- this.dummyDao = dummyDaoImpl;
- }
+ @Autowired
+ @Qualifier("contextSourceTarget")
+ ContextSource contextSource;
@Before
public void prepareTestedInstance() throws Exception {
@@ -76,6 +80,9 @@ public class ContextSourceAndDataSourceTransactionManagerIntegrationTest extends
jdbcTemplate.execute("create table PERSON(fullname VARCHAR, lastname VARCHAR, description VARCHAR)");
jdbcTemplate.update("insert into PERSON values(?, ?, ?)", new Object[] { "Some Person", "Person",
"Sweden, Company1, Some Person" });
+
+ LdapTestUtils.clearSubContexts(contextSource, DistinguishedName.EMPTY_PATH);
+ LdapTestUtils.loadLdif(contextSource, new ClassPathResource("setup_data.ldif"));
}
@After
@@ -288,6 +295,7 @@ public class ContextSourceAndDataSourceTransactionManagerIntegrationTest extends
});
assertNotNull(result);
+ dummyDao.update(dn, "Some Person", "Person", "Sweden, Company1, Some Person");
}
@Test
diff --git a/mvn-build/integration-tests/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceTransactionManagerIntegrationTest.java b/mvn-build/integration-tests/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceTransactionManagerIntegrationTest.java
index e2c399cb..ce85f63e 100644
--- a/mvn-build/integration-tests/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceTransactionManagerIntegrationTest.java
+++ b/mvn-build/integration-tests/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceTransactionManagerIntegrationTest.java
@@ -29,10 +29,14 @@ import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.core.io.ClassPathResource;
import org.springframework.ldap.AbstractLdapTemplateIntegrationTest;
import org.springframework.ldap.NameNotFoundException;
import org.springframework.ldap.core.AttributesMapper;
+import org.springframework.ldap.core.ContextSource;
+import org.springframework.ldap.core.DistinguishedName;
import org.springframework.ldap.core.LdapTemplate;
+import org.springframework.ldap.test.LdapTestUtils;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.transaction.support.TransactionSynchronizationManager;
@@ -53,11 +57,18 @@ public class ContextSourceTransactionManagerIntegrationTest extends AbstractLdap
@Autowired
private LdapTemplate ldapTemplate;
+ @Autowired
+ @Qualifier("contextSourceTarget")
+ ContextSource contextSource;
+
@Before
public void prepareTestedInstance() throws Exception {
if (TransactionSynchronizationManager.isSynchronizationActive()) {
TransactionSynchronizationManager.clearSynchronization();
}
+
+ LdapTestUtils.clearSubContexts(contextSource, DistinguishedName.EMPTY_PATH);
+ LdapTestUtils.loadLdif(contextSource, new ClassPathResource("setup_data.ldif"));
}
@Test
diff --git a/mvn-build/pom.xml b/mvn-build/pom.xml
index 0551b6c8..ece4742f 100644
--- a/mvn-build/pom.xml
+++ b/mvn-build/pom.xml
@@ -45,6 +45,16 @@
2006
+
+
+ maven central repo
+ http://repo1.maven.org/maven2/
+
+
+ java.net repo
+ http://download.java.net/maven/2/
+
+