Skip to content

Instantly share code, notes, and snippets.

@sterym
Created August 26, 2013 12:55
Show Gist options
  • Save sterym/6341148 to your computer and use it in GitHub Desktop.
Save sterym/6341148 to your computer and use it in GitHub Desktop.
MongoOperationsFactory.java
package be.cremers.multiplication;
import java.net.UnknownHostException;
import javax.ejb.Startup;
import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.inject.Produces;
import javax.inject.Singleton;
import org.springframework.data.authentication.UserCredentials;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.SimpleMongoDbFactory;
import com.mongodb.Mongo;
@Startup
@Singleton
public class MongoOperationsFactory {
@Produces @ApplicationScoped
public MongoOperations create(){
try {
String host = System.getenv("OPENSHIFT_MONGODB_DB_HOST");
String sport = System.getenv("OPENSHIFT_MONGODB_DB_PORT");
String db = System.getenv("OPENSHIFT_APP_NAME");
String user = System.getenv("OPENSHIFT_MONGODB_DB_USERNAME");
String password = System.getenv("OPENSHIFT_MONGODB_DB_PASSWORD");
int port = Integer.decode(sport);
UserCredentials userCredentials = new UserCredentials(user, password);
return new MongoTemplate(new SimpleMongoDbFactory(new Mongo(host, port), db, userCredentials));
} catch (UnknownHostException e) {
throw new RuntimeException(e.getMessage(), e);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment