From da2f275074d1ecdd9f75326c02878da4c2fde5a0 Mon Sep 17 00:00:00 2001 From: Mark Fisher Date: Thu, 11 Aug 2011 13:59:12 -0400 Subject: [PATCH] INT-2046 added @ManagedAttribute to MessageStores Added to the getMessageCount() in GemfireMessageStore, MongoDbMessageStore, and RedisMessageStore. --- .../integration/gemfire/store/GemfireMessageStore.java | 2 ++ .../integration/mongodb/store/MongoDbMessageStore.java | 5 +++-- .../integration/redis/store/RedisMessageStore.java | 3 ++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/store/GemfireMessageStore.java b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/store/GemfireMessageStore.java index 4f12ed92e2..650bbb6ebd 100644 --- a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/store/GemfireMessageStore.java +++ b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/store/GemfireMessageStore.java @@ -20,6 +20,7 @@ import java.util.UUID; import org.springframework.integration.Message; import org.springframework.integration.store.MessageStore; +import org.springframework.jmx.export.annotation.ManagedAttribute; import org.springframework.util.Assert; import com.gemstone.gemfire.cache.Region; @@ -50,6 +51,7 @@ public class GemfireMessageStore implements MessageStore { return this.region.remove(id); } + @ManagedAttribute public long getMessageCount() { return this.region.size(); } diff --git a/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/store/MongoDbMessageStore.java b/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/store/MongoDbMessageStore.java index 78e9ab2f7f..5b176ddf6e 100644 --- a/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/store/MongoDbMessageStore.java +++ b/spring-integration-mongodb/src/main/java/org/springframework/integration/mongodb/store/MongoDbMessageStore.java @@ -39,6 +39,7 @@ import org.springframework.integration.Message; import org.springframework.integration.MessageHeaders; import org.springframework.integration.message.GenericMessage; import org.springframework.integration.store.MessageStore; +import org.springframework.jmx.export.annotation.ManagedAttribute; import org.springframework.util.Assert; import org.springframework.util.ClassUtils; import org.springframework.util.StringUtils; @@ -89,9 +90,9 @@ public class MongoDbMessageStore implements MessageStore, BeanClassLoaderAware { return this.template.findOne(this.idQuery(id), Message.class, this.collectionName); } + @ManagedAttribute public long getMessageCount() { - // TODO: long to int - return new Long(this.template.getCollection(DEFAULT_COLLECTION_NAME).getCount()).intValue(); + return this.template.getCollection(DEFAULT_COLLECTION_NAME).getCount(); } public Message removeMessage(UUID id) { diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/store/RedisMessageStore.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/store/RedisMessageStore.java index de2fbfd7b6..a8de46be65 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/store/RedisMessageStore.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/store/RedisMessageStore.java @@ -38,6 +38,7 @@ import org.springframework.integration.store.AbstractMessageGroupStore; import org.springframework.integration.store.MessageGroup; import org.springframework.integration.store.MessageStore; import org.springframework.integration.store.MessageStoreException; +import org.springframework.jmx.export.annotation.ManagedAttribute; import org.springframework.util.Assert; /** @@ -105,7 +106,7 @@ public class RedisMessageStore extends AbstractMessageGroupStore implements Mess } } - + @ManagedAttribute public long getMessageCount() { return redisTemplate.execute(new RedisCallback() { public Integer doInRedis(RedisConnection connection)