modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cassandra/SessionManagerBean.java | 16 +++++++++- 1 file changed, 15 insertions(+), 1 deletion(-)
New commits: commit a82cb482e72843b03b23fae4eb1744be6324d71e Author: John Sanda jsanda@redhat.com Date: Tue Dec 4 10:36:05 2012 -0500
add authentication to session initialization
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cassandra/SessionManagerBean.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cassandra/SessionManagerBean.java index 0b149d3..1260451 100644 --- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cassandra/SessionManagerBean.java +++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cassandra/SessionManagerBean.java @@ -30,6 +30,7 @@ import javax.ejb.Singleton;
import com.datastax.driver.core.Cluster; import com.datastax.driver.core.Session; +import com.datastax.driver.core.SimpleAuthInfoProvider; import com.datastax.driver.core.exceptions.NoHostAvailableException;
import org.rhq.server.metrics.CQLException; @@ -45,7 +46,20 @@ public class SessionManagerBean { @PostConstruct private void createSession() { try { - Cluster cluster = Cluster.builder().addContactPoints("127.0.0.1", "127.0.0.2").build(); + String username = System.getProperty("rhq.cassandra.username"); + if (username == null) { + throw new CQLException("The rhq.cassandra.username property is null. Cannot create session."); + } + + String password = System.getProperty("rhq.cassandra.password"); + if (password == null) { + throw new CQLException("The rhq.cassandra.password property is null. Cannot create session."); + } + + Cluster cluster = Cluster.builder() + .addContactPoints("127.0.0.1", "127.0.0.2") + .withAuthInfoProvider(new SimpleAuthInfoProvider().add("username", username).add("password", password)) + .build(); session = cluster.connect("rhq"); } catch (NoHostAvailableException e) { throw new CQLException("Unable to create session", e);
rhq-commits@lists.fedorahosted.org