Browse Source

DATAMONGO-331 - Fixed typo in WriteConcern enumeration for db-factory element.

pull/1/head
Oliver Gierke 14 years ago
parent
commit
ec7b65e21d
  1. 2
      spring-data-mongodb/src/main/resources/org/springframework/data/mongodb/config/spring-mongo-1.0.xsd
  2. 21
      spring-data-mongodb/src/test/java/org/springframework/data/mongodb/config/MongoDbFactoryParserIntegrationTests.java
  3. 2
      spring-data-mongodb/src/test/resources/namespace/db-factory-bean-custom-write-concern.xml

2
spring-data-mongodb/src/main/resources/org/springframework/data/mongodb/config/spring-mongo-1.0.xsd

@ -274,7 +274,7 @@ The name of the Mongo object that determines what server to monitor. (by default
<xsd:enumeration value="NORMAL" /> <xsd:enumeration value="NORMAL" />
<xsd:enumeration value="SAFE" /> <xsd:enumeration value="SAFE" />
<xsd:enumeration value="FSYNC_SAFE" /> <xsd:enumeration value="FSYNC_SAFE" />
<xsd:enumeration value="REPLICA_SAFE" /> <xsd:enumeration value="REPLICAS_SAFE" />
<xsd:enumeration value="JOURNAL_SAFE" /> <xsd:enumeration value="JOURNAL_SAFE" />
<xsd:enumeration value="MAJORITY" /> <xsd:enumeration value="MAJORITY" />
</xsd:restriction> </xsd:restriction>

21
spring-data-mongodb/src/test/java/org/springframework/data/mongodb/config/MongoDbFactoryParserIntegrationTests.java

@ -18,11 +18,7 @@ package org.springframework.data.mongodb.config;
import static org.hamcrest.Matchers.*; import static org.hamcrest.Matchers.*;
import static org.junit.Assert.*; import static org.junit.Assert.*;
import java.net.UnknownHostException;
import java.util.List;
import org.junit.Test; import org.junit.Test;
import org.springframework.beans.PropertyValue;
import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.config.BeanDefinition;
import org.springframework.beans.factory.config.ConstructorArgumentValues; import org.springframework.beans.factory.config.ConstructorArgumentValues;
import org.springframework.beans.factory.config.ConstructorArgumentValues.ValueHolder; import org.springframework.beans.factory.config.ConstructorArgumentValues.ValueHolder;
@ -36,7 +32,6 @@ import org.springframework.data.mongodb.core.SimpleMongoDbFactory;
import com.mongodb.DB; import com.mongodb.DB;
import com.mongodb.Mongo; import com.mongodb.Mongo;
import com.mongodb.MongoException;
import com.mongodb.MongoURI; import com.mongodb.MongoURI;
import com.mongodb.WriteConcern; import com.mongodb.WriteConcern;
@ -47,12 +42,11 @@ import com.mongodb.WriteConcern;
*/ */
public class MongoDbFactoryParserIntegrationTests { public class MongoDbFactoryParserIntegrationTests {
@Test @Test
public void testWriteConcern() throws Exception { public void testWriteConcern() throws Exception {
SimpleMongoDbFactory dbFactory = new SimpleMongoDbFactory(new Mongo("localhost"), "database"); SimpleMongoDbFactory dbFactory = new SimpleMongoDbFactory(new Mongo("localhost"), "database");
dbFactory.setWriteConcern(WriteConcern.SAFE); dbFactory.setWriteConcern(WriteConcern.SAFE);
DB db = dbFactory.getDb(); dbFactory.getDb();
assertThat(WriteConcern.SAFE, is(dbFactory.getWriteConcern())); assertThat(WriteConcern.SAFE, is(dbFactory.getWriteConcern()));
} }
@ -68,6 +62,19 @@ public class MongoDbFactoryParserIntegrationTests {
assertWriteConcern(ctx, new WriteConcern("rack1")); assertWriteConcern(ctx, new WriteConcern("rack1"));
} }
/**
* @see DATAMONGO-331
*/
@Test
public void readsReplicasWriteConcernCorrectly() {
ApplicationContext ctx = new ClassPathXmlApplicationContext("namespace/db-factory-bean-custom-write-concern.xml");
MongoDbFactory factory = ctx.getBean("second", MongoDbFactory.class);
DB db = factory.getDb();
assertThat(db.getWriteConcern(), is(WriteConcern.REPLICAS_SAFE));
}
private void assertWriteConcern(ClassPathXmlApplicationContext ctx, WriteConcern expectedWriteConcern) { private void assertWriteConcern(ClassPathXmlApplicationContext ctx, WriteConcern expectedWriteConcern) {
SimpleMongoDbFactory dbFactory = ctx.getBean("first", SimpleMongoDbFactory.class); SimpleMongoDbFactory dbFactory = ctx.getBean("first", SimpleMongoDbFactory.class);
DB db = dbFactory.getDb(); DB db = dbFactory.getDb();

2
spring-data-mongodb/src/test/resources/namespace/db-factory-bean-custom-write-concern.xml

@ -11,6 +11,8 @@
<mongo:options max-auto-connect-retry-time="27" /> <mongo:options max-auto-connect-retry-time="27" />
</mongo:mongo> </mongo:mongo>
<mongo:db-factory id="second" write-concern="REPLICAS_SAFE" />
<!-- now part of the namespace <!-- now part of the namespace
<bean class="org.springframework.beans.factory.config.CustomEditorConfigurer"> <bean class="org.springframework.beans.factory.config.CustomEditorConfigurer">
<property name="customEditors"> <property name="customEditors">

Loading…
Cancel
Save