Author: [email protected]
Date: Mon Feb 20 11:16:50 2012
New Revision: 2102
Log:
[AMDATUCASSANDRA-164] Fixed the import-package versions of Hector, proper
shutdown of Hector cluster upon stopping the service using it and
deregistration of configuration update listener
Modified:
trunk/amdatu-cassandra/cassandra-client/pom.xml
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientConfigurationService.java
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientConfigurationServiceImpl.java
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientServiceImpl.java
trunk/amdatu-cassandra/cassandra-hector/pom.xml
trunk/amdatu-cassandra/cassandra-listener/src/main/java/org/amdatu/cassandra/listener/service/CassandraUpdateListenerImpl.java
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/pom.xml
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/src/main/java/org/amdatu/cassandra/persistencemanager/hector/service/CassandraPersistenceManagerBaseImpl.java
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/src/main/java/org/amdatu/cassandra/persistencemanager/hector/service/HectorCassandraPersistenceManagerImpl.java
trunk/amdatu-cassandra/cassandra-stores/cassandra-store-tenant/pom.xml
trunk/amdatu-cassandra/cassandra-stores/cassandra-store-token/pom.xml
Modified: trunk/amdatu-cassandra/cassandra-client/pom.xml
==============================================================================
--- trunk/amdatu-cassandra/cassandra-client/pom.xml (original)
+++ trunk/amdatu-cassandra/cassandra-client/pom.xml Mon Feb 20 11:16:50 2012
@@ -53,8 +53,15 @@
<instructions>
<Bundle-Activator>org.amdatu.cassandra.client.osgi.Activator</Bundle-Activator>
<Bundle-SymbolicName>org.amdatu.cassandra.client</Bundle-SymbolicName>
+ <Import-Package>
+ org.amdatu.cassandra.client,
+ me.prettyprint.hector.*;version="[1.0,1.1)",
+ me.prettyprint.cassandra.*;version="[1.0,1.1)",
+ org.apache.cassandra.thrift.*;version="[1.0,2.0)",
+ *
+ </Import-Package>
<Export-Package>
- org.amdatu.cassandra.client;version="1.0.0",
+ org.amdatu.cassandra.client;version="1.0.0"
</Export-Package>
</instructions>
</configuration>
Modified:
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientConfigurationService.java
==============================================================================
---
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientConfigurationService.java
(original)
+++
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientConfigurationService.java
Mon Feb 20 11:16:50 2012
@@ -160,4 +160,12 @@
* @param listener the listener
*/
void addListener(ConfigurationUpdateListener listener);
+
+
+ /**
+ * Removes a configuration update listener. Listeners are invoked as soon
as the configuration
+ * is updated.
+ * @param listener the listener
+ */
+ void removeListener(ConfigurationUpdateListener listener);
}
Modified:
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientConfigurationServiceImpl.java
==============================================================================
---
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientConfigurationServiceImpl.java
(original)
+++
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientConfigurationServiceImpl.java
Mon Feb 20 11:16:50 2012
@@ -152,4 +152,8 @@
public void addListener(ConfigurationUpdateListener listener) {
m_listeners.add(listener);
}
+
+ public void removeListener(ConfigurationUpdateListener listener) {
+ m_listeners.remove(listener);
+ }
}
Modified:
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientServiceImpl.java
==============================================================================
---
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientServiceImpl.java
(original)
+++
trunk/amdatu-cassandra/cassandra-client/src/main/java/org/amdatu/cassandra/client/service/CassandraClientServiceImpl.java
Mon Feb 20 11:16:50 2012
@@ -70,12 +70,17 @@
m_logService.log(LogService.LOG_INFO, getClass().getName() + " service
initialized");
}
- public void start() {
+ public synchronized void start() {
m_configuration.addListener(this);
m_logService.log(LogService.LOG_INFO, getClass().getName() + "service
started");
}
- public void stop() {
+ public synchronized void stop() {
+ m_configuration.removeListener(this);
+ if (m_cluster != null) {
+ m_cluster.getConnectionManager().shutdown();
+ m_cluster = null;
+ }
m_logService.log(LogService.LOG_INFO, getClass().getName() + "service
stopped");
}
Modified: trunk/amdatu-cassandra/cassandra-hector/pom.xml
==============================================================================
--- trunk/amdatu-cassandra/cassandra-hector/pom.xml (original)
+++ trunk/amdatu-cassandra/cassandra-hector/pom.xml Mon Feb 20 11:16:50 2012
@@ -61,13 +61,17 @@
<instructions>
<Bundle-SymbolicName>org.amdatu.cassandra.hector</Bundle-SymbolicName>
<Import-Package>
+ me.prettyprint.hector.*;version="1.0.2",,
+ me.prettyprint.cassandra.*;version="1.0.2",,
+ org.apache.cassandra.thrift.*,
+ org.apache.thrift.*,
!com.sun.xml.fastinfoset.stax,
!org.apache.http.*,
*
</Import-Package>
<Export-Package>
- me.prettyprint.hector.*;version="1.0.1",
- me.prettyprint.cassandra.*;version="1.0.1",
+ me.prettyprint.hector.*;version="1.0.2",
+ me.prettyprint.cassandra.*;version="1.0.2",
org.apache.cassandra.thrift.*;version="1.0.0",
org.apache.thrift.*;version="1.0.0",
</Export-Package>
Modified:
trunk/amdatu-cassandra/cassandra-listener/src/main/java/org/amdatu/cassandra/listener/service/CassandraUpdateListenerImpl.java
==============================================================================
---
trunk/amdatu-cassandra/cassandra-listener/src/main/java/org/amdatu/cassandra/listener/service/CassandraUpdateListenerImpl.java
(original)
+++
trunk/amdatu-cassandra/cassandra-listener/src/main/java/org/amdatu/cassandra/listener/service/CassandraUpdateListenerImpl.java
Mon Feb 20 11:16:50 2012
@@ -70,15 +70,20 @@
private Map<String, Component> m_componentMap = new
ConcurrentHashMap<String, Component>();
- public void start() {
+ public synchronized void start() {
// Now start the inspect thread
m_inspectThread = new InspectKeyspaceColumnFamilyThread();
m_inspectThread.start();
}
- public void stop() {
+ public synchronized void stop() {
// Stop the inspect thread
m_inspectThread.interrupt();
+ try {
+ m_inspectThread.join();
+ }
+ catch (InterruptedException e) {
+ }
}
public void setDaemonService(CassandraClientService daemonService) {
Modified: trunk/amdatu-cassandra/cassandra-persistencemanager-hector/pom.xml
==============================================================================
--- trunk/amdatu-cassandra/cassandra-persistencemanager-hector/pom.xml
(original)
+++ trunk/amdatu-cassandra/cassandra-persistencemanager-hector/pom.xml Mon Feb
20 11:16:50 2012
@@ -64,7 +64,8 @@
<Bundle-SymbolicName>org.amdatu.cassandra.persistencemanager.hector</Bundle-SymbolicName>
<Import-Package>
org.amdatu.cassandra.persistencemanager.hector,
- me.prettyprint.hector.api.*;version="[1.0,1.1)",
+ me.prettyprint.hector.*;version="[1.0,1.1)",
+ me.prettyprint.cassandra.*;version="[1.0,1.1)",
org.apache.cassandra.thrift.*;version="[1.0,2.0)",
*
</Import-Package>
Modified:
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/src/main/java/org/amdatu/cassandra/persistencemanager/hector/service/CassandraPersistenceManagerBaseImpl.java
==============================================================================
---
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/src/main/java/org/amdatu/cassandra/persistencemanager/hector/service/CassandraPersistenceManagerBaseImpl.java
(original)
+++
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/src/main/java/org/amdatu/cassandra/persistencemanager/hector/service/CassandraPersistenceManagerBaseImpl.java
Mon Feb 20 11:16:50 2012
@@ -53,7 +53,7 @@
private volatile LogService m_logService;
// Other instances injected by the Felix dependency manager
- private Component m_component;
+ private volatile Component m_component;
// The keyspace
private String m_keyspace = null;
Modified:
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/src/main/java/org/amdatu/cassandra/persistencemanager/hector/service/HectorCassandraPersistenceManagerImpl.java
==============================================================================
---
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/src/main/java/org/amdatu/cassandra/persistencemanager/hector/service/HectorCassandraPersistenceManagerImpl.java
(original)
+++
trunk/amdatu-cassandra/cassandra-persistencemanager-hector/src/main/java/org/amdatu/cassandra/persistencemanager/hector/service/HectorCassandraPersistenceManagerImpl.java
Mon Feb 20 11:16:50 2012
@@ -161,6 +161,17 @@
// to WARNING for this logger.
getHectorKeyspace();
Logger.getLogger("me.prettyprint.cassandra.hector.TimingLogger").setLevel(Level.WARNING);
+ getLogService().log(LogService.LOG_INFO, getClass().getName() +
"service started");
+ }
+
+ public void stop() {
+ // Shutdown the cluster, but ONLY if it exists!
+ Cluster cluster = getHectorCluster(false);
+ if (cluster != null) {
+ HFactory.shutdownCluster(cluster);
+ }
+
+ getLogService().log(LogService.LOG_INFO, getClass().getName() +
"service stopped");
}
public synchronized void updated(Dictionary dictionary) throws
ConfigurationException {
Modified: trunk/amdatu-cassandra/cassandra-stores/cassandra-store-tenant/pom.xml
==============================================================================
--- trunk/amdatu-cassandra/cassandra-stores/cassandra-store-tenant/pom.xml
(original)
+++ trunk/amdatu-cassandra/cassandra-stores/cassandra-store-tenant/pom.xml
Mon Feb 20 11:16:50 2012
@@ -50,6 +50,8 @@
<Import-Package>
org.amdatu.cassandra.listener;version="[1.0,2.0)",
org.amdatu.cassandra.persistencemanager.hector;version="[1.0,2.0)",
+ me.prettyprint.hector.*;version="[1.0,1.1)",
+ me.prettyprint.cassandra.*;version="[1.0,1.1)",
*
</Import-Package>
<Export-Package />
Modified: trunk/amdatu-cassandra/cassandra-stores/cassandra-store-token/pom.xml
==============================================================================
--- trunk/amdatu-cassandra/cassandra-stores/cassandra-store-token/pom.xml
(original)
+++ trunk/amdatu-cassandra/cassandra-stores/cassandra-store-token/pom.xml
Mon Feb 20 11:16:50 2012
@@ -82,6 +82,8 @@
!org.joda.time,
org.amdatu.cassandra.listener;version="[1.0,2.0)",
org.amdatu.cassandra.persistencemanager.hector;version="[1.0,2.0)",
+ me.prettyprint.hector.*;version="[1.0,1.1)",
+ me.prettyprint.cassandra.*;version="[1.0,1.1)",
*
</Import-Package>
<Export-Package>
_______________________________________________
Amdatu-commits mailing list
[email protected]
http://lists.amdatu.org/mailman/listinfo/amdatu-commits