diff --git a/spring-integration-gemfire/.springBeans b/spring-integration-gemfire/.springBeans
new file mode 100644
index 0000000000..8a3d5fe7e4
--- /dev/null
+++ b/spring-integration-gemfire/.springBeans
@@ -0,0 +1,15 @@
+
+
+ 1
+
+
+
+
+
+
+ src/test/java/org/springframework/integration/gemfire/inbound/GemfireInboundChannelAdapterTests-context.xml
+ src/test/java/org/springframework/integration/gemfire/outbound/GemfireOutboundChannelAdapterTests-context.xml
+
+
+
+
diff --git a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireInboundChannelAdapterParser.java b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireInboundChannelAdapterParser.java
new file mode 100644
index 0000000000..baa605a095
--- /dev/null
+++ b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireInboundChannelAdapterParser.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright 2002-2011 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
+ * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations under the License.
+ */
+package org.springframework.integration.gemfire.config.xml;
+
+import org.springframework.beans.factory.support.AbstractBeanDefinition;
+import org.springframework.beans.factory.support.BeanDefinitionBuilder;
+import org.springframework.beans.factory.xml.ParserContext;
+import org.springframework.integration.config.xml.AbstractChannelAdapterParser;
+import org.springframework.integration.config.xml.IntegrationNamespaceUtils;
+import org.springframework.util.StringUtils;
+import org.w3c.dom.Element;
+
+/**
+ * @author David Turanski
+ * @since 2.1
+ *
+ */
+public class GemfireInboundChannelAdapterParser extends AbstractChannelAdapterParser {
+
+
+ private static final String ERROR_CHANNEL_ATTRIBUTE = "error-channel";
+
+ private static final String OUTPUT_CHANNEL_PROPERTY = "outputChannel";
+
+ private static final String REGION_ATTRIBUTE = "region";
+
+ private static final String PAYLOAD_EXPRESSION_PROPERTY = "payloadExpression";
+
+ private static final String EXPRESSION_ATTRIBUTE = "expression";
+
+ private static final String GEMFIRE_INBOUND_CACHE_LISTENING_MESSAGE_PRODUCER = "org.springframework.integration.gemfire.inbound.CacheListeningMessageProducer";
+
+ private static final String SUPPORTED_EVENT_TYPES_PROPERTY = "supportedEventTypes";
+
+ private static final String CACHE_EVENTS_ATTRIBUTE = "cache-events";
+
+ /* (non-Javadoc)
+ * @see org.springframework.integration.config.xml.AbstractChannelAdapterParser#doParse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext, java.lang.String)
+ */
+ @Override
+ protected AbstractBeanDefinition doParse(Element element, ParserContext parserContext, String channelName) {
+ BeanDefinitionBuilder listeningMessageProducer = BeanDefinitionBuilder.genericBeanDefinition(GEMFIRE_INBOUND_CACHE_LISTENING_MESSAGE_PRODUCER);
+ IntegrationNamespaceUtils.setValueIfAttributeDefined(listeningMessageProducer, element, EXPRESSION_ATTRIBUTE,PAYLOAD_EXPRESSION_PROPERTY);
+ IntegrationNamespaceUtils.setValueIfAttributeDefined(listeningMessageProducer, element, CACHE_EVENTS_ATTRIBUTE, SUPPORTED_EVENT_TYPES_PROPERTY);
+
+ if (!StringUtils.hasText(REGION_ATTRIBUTE)){
+ parserContext.getReaderContext().error("'region' attribute is required.",element);
+ }
+
+ listeningMessageProducer.addConstructorArgReference(element.getAttribute(REGION_ATTRIBUTE));
+
+ listeningMessageProducer.addPropertyReference(OUTPUT_CHANNEL_PROPERTY, channelName);
+ IntegrationNamespaceUtils.setReferenceIfAttributeDefined(listeningMessageProducer, element, ERROR_CHANNEL_ATTRIBUTE);
+
+ return listeningMessageProducer.getBeanDefinition();
+ }
+
+}
diff --git a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireIntegrationNamespaceHandler.java b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireIntegrationNamespaceHandler.java
new file mode 100644
index 0000000000..a686001814
--- /dev/null
+++ b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireIntegrationNamespaceHandler.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright 2002-2011 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
+ * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations under the License.
+ */
+package org.springframework.integration.gemfire.config.xml;
+
+import org.springframework.integration.config.xml.AbstractIntegrationNamespaceHandler;
+
+/**
+ * @author David Turanski
+ *
+ */
+public class GemfireIntegrationNamespaceHandler extends AbstractIntegrationNamespaceHandler{
+
+ /* (non-Javadoc)
+ * @see org.springframework.beans.factory.xml.NamespaceHandler#init()
+ */
+ public void init() {
+ registerBeanDefinitionParser("inbound-channel-adapter", new GemfireInboundChannelAdapterParser());
+ registerBeanDefinitionParser("outbound-channel-adapter", new GemfireOutboundChannelAdapterParser());
+
+ }
+
+}
diff --git a/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireOutboundChannelAdapterParser.java b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireOutboundChannelAdapterParser.java
new file mode 100644
index 0000000000..7c86a5a8f8
--- /dev/null
+++ b/spring-integration-gemfire/src/main/java/org/springframework/integration/gemfire/config/xml/GemfireOutboundChannelAdapterParser.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright 2002-2011 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
+ * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations under the License.
+ */
+package org.springframework.integration.gemfire.config.xml;
+
+import java.util.Map;
+
+import org.springframework.beans.factory.support.AbstractBeanDefinition;
+import org.springframework.beans.factory.support.BeanDefinitionBuilder;
+import org.springframework.beans.factory.xml.ParserContext;
+import org.springframework.integration.config.xml.AbstractOutboundChannelAdapterParser;
+import org.springframework.util.StringUtils;
+import org.springframework.util.xml.DomUtils;
+import org.w3c.dom.Element;
+
+/**
+ * @author David Turanski
+ * @since 2.1
+ *
+ */
+public class GemfireOutboundChannelAdapterParser extends AbstractOutboundChannelAdapterParser {
+
+ private static final String CACHE_ENTRIES_PROPERTY = "cacheEntries";
+
+ private static final String CACHE_ENTRIES_ELEMENT = "cache-entries";
+
+ private static final String REGION_ATTRIBUTE = "region";
+
+ private static final String GEMFIRE_OUTBOUND_CACHE_WRITING_MESSAGE_HANDLER = "org.springframework.integration.gemfire.outbound.CacheWritingMessageHandler";
+
+ /* (non-Javadoc)
+ * @see org.springframework.integration.config.xml.AbstractOutboundChannelAdapterParser#parseConsumer(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)
+ */
+ @Override
+ protected AbstractBeanDefinition parseConsumer(Element element, ParserContext parserContext) {
+ BeanDefinitionBuilder cacheWritingMessageHandler = BeanDefinitionBuilder.genericBeanDefinition(
+ GEMFIRE_OUTBOUND_CACHE_WRITING_MESSAGE_HANDLER);
+ if (!StringUtils.hasText(REGION_ATTRIBUTE)){
+ parserContext.getReaderContext().error("'region' attribute is required.",element);
+ }
+
+ cacheWritingMessageHandler.addConstructorArgReference(element.getAttribute(REGION_ATTRIBUTE));
+
+ Element cacheEntries = DomUtils.getChildElementByTagName(element,CACHE_ENTRIES_ELEMENT);
+ if (cacheEntries != null) {
+ Map,?> map = parserContext.getDelegate().parseMapElement(cacheEntries,cacheWritingMessageHandler.getBeanDefinition());
+ cacheWritingMessageHandler.addPropertyValue(CACHE_ENTRIES_PROPERTY, map);
+ }
+
+ return cacheWritingMessageHandler.getBeanDefinition();
+ }
+}
diff --git a/spring-integration-gemfire/src/main/resources/META-INF/spring.handlers b/spring-integration-gemfire/src/main/resources/META-INF/spring.handlers
new file mode 100644
index 0000000000..0e5c816b48
--- /dev/null
+++ b/spring-integration-gemfire/src/main/resources/META-INF/spring.handlers
@@ -0,0 +1 @@
+http\://www.springframework.org/schema/integration/gemfire=org.springframework.integration.gemfire.config.xml.GemfireIntegrationNamespaceHandler
\ No newline at end of file
diff --git a/spring-integration-gemfire/src/main/resources/META-INF/spring.schemas b/spring-integration-gemfire/src/main/resources/META-INF/spring.schemas
new file mode 100644
index 0000000000..fc4b7ef1d9
--- /dev/null
+++ b/spring-integration-gemfire/src/main/resources/META-INF/spring.schemas
@@ -0,0 +1,2 @@
+http\://www.springframework.org/schema/integration/scripting/spring-integration-gemfire.xsd=org/springframework/integration/gemfire/config/xml/spring-integration-gemfire-2.1.xsd
+http\://www.springframework.org/schema/integration/scripting/spring-integration-gemfire-2.1.xsd=org/springframework/integration/gemfire/config/xml/spring-integration-gemfire-2.1.xsd
diff --git a/spring-integration-gemfire/src/main/resources/META-INF/spring.tooling b/spring-integration-gemfire/src/main/resources/META-INF/spring.tooling
new file mode 100644
index 0000000000..54d874b910
--- /dev/null
+++ b/spring-integration-gemfire/src/main/resources/META-INF/spring.tooling
@@ -0,0 +1,4 @@
+# Tooling related information for the integration gemfire namespace
+http\://www.springframework.org/schema/integration/gemfire@name=integration gemfire Namespace
+http\://www.springframework.org/schema/integration/gemfire@prefix=int-gfe
+http\://www.springframework.org/schema/integration@icon=org/springframework/integration/gemfire/config/xml/spring-integration-gemfire.gif
diff --git a/spring-integration-gemfire/src/main/resources/org/springframework/integration/gemfire/config/xml/spring-integration-gemfire-2.1.xsd b/spring-integration-gemfire/src/main/resources/org/springframework/integration/gemfire/config/xml/spring-integration-gemfire-2.1.xsd
new file mode 100644
index 0000000000..a4c0f9ca2e
--- /dev/null
+++ b/spring-integration-gemfire/src/main/resources/org/springframework/integration/gemfire/config/xml/spring-integration-gemfire-2.1.xsd
@@ -0,0 +1,140 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Configures an inbound Channel Adapter backed by a
+ Gemfire CacheListener
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Configures an outbound Channel Adapter that writes Message payloads to a
+ File.
+
+
+
+
+
+
+ A map of SpEL expressions used to create cache entries. If not provided, payload must be a Map
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/spring-integration-gemfire/src/main/resources/org/springframework/integration/gemfire/config/xml/spring-integration-gemfire.gif b/spring-integration-gemfire/src/main/resources/org/springframework/integration/gemfire/config/xml/spring-integration-gemfire.gif
new file mode 100644
index 0000000000..210e0764fa
Binary files /dev/null and b/spring-integration-gemfire/src/main/resources/org/springframework/integration/gemfire/config/xml/spring-integration-gemfire.gif differ
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/GemfireInboundChannelAdapterTests-context.xml b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/GemfireInboundChannelAdapterTests-context.xml
new file mode 100644
index 0000000000..d31c297649
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/GemfireInboundChannelAdapterTests-context.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/GemfireInboundChannelAdapterTests.java b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/GemfireInboundChannelAdapterTests.java
new file mode 100644
index 0000000000..5201d86214
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/GemfireInboundChannelAdapterTests.java
@@ -0,0 +1,118 @@
+/*
+ * Copyright 2002-2011 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
+ * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations under the License.
+ */
+package org.springframework.integration.gemfire.inbound;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.integration.Message;
+import org.springframework.integration.MessagingException;
+import org.springframework.integration.core.MessageHandler;
+import org.springframework.integration.core.SubscribableChannel;
+import org.springframework.integration.message.ErrorMessage;
+import org.springframework.test.annotation.DirtiesContext;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+import com.gemstone.gemfire.cache.EntryEvent;
+import com.gemstone.gemfire.internal.cache.DistributedRegion;
+
+/**
+ * @author David Turanski
+ * @since 2.1
+ */
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration
+public class GemfireInboundChannelAdapterTests {
+ @Autowired
+ SubscribableChannel channel1;
+
+ @Autowired
+ SubscribableChannel channel2;
+
+ @Autowired
+ SubscribableChannel channel3;
+
+ @Autowired
+ SubscribableChannel errorChannel;
+
+ @Autowired
+ DistributedRegion region1;
+
+ @Autowired
+ DistributedRegion region2;
+
+ @Autowired
+ DistributedRegion region3;
+
+
+
+ @Test
+ public void testGemfireInboundChannelAdapterWithExpression() {
+
+ EventHandler eventHandler1 = new EventHandler();
+ channel1.subscribe(eventHandler1);
+
+ region1.put("payload", "payload");
+
+ assertEquals("payload", eventHandler1.event);
+ }
+
+ @Test
+ public void testGemfireInboundChannelAdapterDefault() {
+ EventHandler eventHandler2 = new EventHandler();
+ channel2.subscribe(eventHandler2);
+
+ region2.put("payload", "payload");
+
+ assertTrue(eventHandler2.event instanceof EntryEvent);
+ EntryEvent,?> event = (EntryEvent,?>)eventHandler2.event;
+ assertEquals("payload", event.getNewValue());
+ }
+
+ @Test
+ public void testErrorChannel() {
+ channel3.subscribe(new MessageHandler() {
+ public void handleMessage(Message> message) throws MessagingException {
+ throw new MessagingException("got an error");
+ }
+ });
+ ErrorHandler errorHandler = new ErrorHandler();
+ errorChannel.subscribe(errorHandler);
+
+ region3.put("payload", "payload");
+
+ assertEquals(1, errorHandler.count);
+
+ }
+
+ static class ErrorHandler implements MessageHandler {
+ public int count = 0;
+
+ public void handleMessage(Message> message) throws MessagingException {
+ assertTrue(message instanceof ErrorMessage);
+ count++;
+ }
+ }
+
+ static class EventHandler implements MessageHandler {
+ public Object event = null;
+ public void handleMessage(Message> message) throws MessagingException {
+ event = message.getPayload();
+ }
+ }
+
+}
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/CqClient-context.xml b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/CqClient-context.xml
new file mode 100644
index 0000000000..c1ba6b7d5e
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/CqClient-context.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/CqServer-context.xml b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/CqServer-context.xml
new file mode 100644
index 0000000000..6f37aa49ae
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/CqServer-context.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/common.properties b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/common.properties
new file mode 100644
index 0000000000..5d438b7143
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/common.properties
@@ -0,0 +1,5 @@
+host=127.0.0.1
+port=55221
+region-name=people
+region-query=select * from /people
+correlation-header=time
\ No newline at end of file
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/gfe-cache.properties b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/gfe-cache.properties
new file mode 100644
index 0000000000..04392af0d1
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/inbound/cq/gfe-cache.properties
@@ -0,0 +1,3 @@
+log-level=warning
+name=Spring Integration GemFire World
+bind-address=127.0.0.1
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/outbound/GemfireOutboundChannelAdapterTests-context.xml b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/outbound/GemfireOutboundChannelAdapterTests-context.xml
new file mode 100644
index 0000000000..1d4f990a42
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/outbound/GemfireOutboundChannelAdapterTests-context.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/outbound/GemfireOutboundChannelAdapterTests.java b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/outbound/GemfireOutboundChannelAdapterTests.java
new file mode 100644
index 0000000000..5b26ad7b9b
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/outbound/GemfireOutboundChannelAdapterTests.java
@@ -0,0 +1,78 @@
+/*
+ * Copyright 2002-2011 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
+ * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations under the License.
+ */
+package org.springframework.integration.gemfire.outbound;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.integration.Message;
+import org.springframework.integration.MessageChannel;
+import org.springframework.integration.support.MessageBuilder;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+import com.gemstone.gemfire.internal.cache.DistributedRegion;
+
+/**
+ * @author David Turanski
+ * @since 2.1
+ */
+
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration
+public class GemfireOutboundChannelAdapterTests {
+
+ @Autowired
+ MessageChannel cacheChannel1;
+
+ @Autowired
+ DistributedRegion region1;
+
+ @Autowired
+ MessageChannel cacheChannel2;
+
+ @Autowired
+ DistributedRegion region2;
+
+ @Before
+ public void setUp() {
+ region1.clear();
+ region2.clear();
+ }
+
+ @Test
+ public void testWriteMapPayload() {
+ Map map = new HashMap();
+ map.put("foo","bar");
+
+ Message> message = MessageBuilder.withPayload(map).build();
+ cacheChannel1.send(message);
+ assertEquals(1,region1.size());
+ assertEquals("bar",region1.get("foo"));
+ }
+
+ @Test
+ public void testWriteExpressions() {
+ Message> message = MessageBuilder.withPayload("Hello").build();
+ cacheChannel2.send(message);
+ assertEquals(2,region2.size());
+ assertEquals("hello",region2.get("HELLO"));
+ assertEquals("bar",region2.get("foo"));
+ }
+}
diff --git a/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/store/messagegroupstore/GemfireMessageStore-context.xml b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/store/messagegroupstore/GemfireMessageStore-context.xml
new file mode 100644
index 0000000000..cb861d2a0f
--- /dev/null
+++ b/spring-integration-gemfire/src/test/java/org/springframework/integration/gemfire/store/messagegroupstore/GemfireMessageStore-context.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/spring-integration-gemfire/src/test/resources/log4j.xml b/spring-integration-gemfire/src/test/resources/log4j.xml
new file mode 100644
index 0000000000..d99732eeb1
--- /dev/null
+++ b/spring-integration-gemfire/src/test/resources/log4j.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/spring-integration-gemfire/vf.gf.dmn-events.cfg b/spring-integration-gemfire/vf.gf.dmn-events.cfg
new file mode 100644
index 0000000000..e195aef423
--- /dev/null
+++ b/spring-integration-gemfire/vf.gf.dmn-events.cfg
@@ -0,0 +1,454 @@
+2011-08-12T15:07:42,INFO,EventManagerStartedEvent,
+2011-08-12T15:07:43,INFO,LicenseActivatedEvent,expirationDate=unset|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:07:43,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:07:43|state=on
+2011-08-12T15:07:43,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:07:48,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:07:48|state=off
+2011-08-12T15:09:05,INFO,EventManagerStartedEvent,
+2011-08-12T15:09:05,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:09:05,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:09:05|state=on
+2011-08-12T15:09:05,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:09:11,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:09:11|state=off
+2011-08-12T15:10:08,INFO,EventManagerStartedEvent,
+2011-08-12T15:10:08,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:10:08,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:10:08|state=on
+2011-08-12T15:10:08,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:10:13,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:10:13|state=off
+2011-08-12T15:15:00,INFO,EventManagerStartedEvent,
+2011-08-12T15:15:00,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:15:00,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:15:00|state=on
+2011-08-12T15:15:00,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:15:05,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:15:05|state=off
+2011-08-12T15:41:16,INFO,EventManagerStartedEvent,
+2011-08-12T15:41:16,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:41:16,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:41:16|state=on
+2011-08-12T15:41:16,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:41:21,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:41:21|state=off
+2011-08-12T15:41:56,INFO,EventManagerStartedEvent,
+2011-08-12T15:41:56,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:41:56,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:41:56|state=on
+2011-08-12T15:41:56,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:42:02,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:42:02|state=off
+2011-08-12T15:47:32,INFO,EventManagerStartedEvent,
+2011-08-12T15:47:32,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:47:32,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:47:32|state=on
+2011-08-12T15:47:32,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:47:38,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:47:38|state=off
+2011-08-12T15:47:57,INFO,EventManagerStartedEvent,
+2011-08-12T15:47:57,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:47:57,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:47:57|state=on
+2011-08-12T15:47:57,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:48:03,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:48:03|state=off
+2011-08-12T15:48:22,INFO,EventManagerStartedEvent,
+2011-08-12T15:48:23,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:48:23,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:48:23|state=on
+2011-08-12T15:48:23,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:48:28,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:48:28|state=off
+2011-08-12T15:50:29,INFO,EventManagerStartedEvent,
+2011-08-12T15:50:29,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:50:29,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:50:29|state=on
+2011-08-12T15:50:29,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:50:34,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:50:34|state=off
+2011-08-12T15:51:10,INFO,EventManagerStartedEvent,
+2011-08-12T15:51:10,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:51:10,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:51:10|state=on
+2011-08-12T15:51:10,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:51:16,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:51:16|state=off
+2011-08-12T15:54:41,INFO,EventManagerStartedEvent,
+2011-08-12T15:54:42,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:54:42,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:54:42|state=on
+2011-08-12T15:54:42,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:54:47,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:54:47|state=off
+2011-08-12T15:55:55,INFO,EventManagerStartedEvent,
+2011-08-12T15:55:55,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:55:55,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:55:55|state=on
+2011-08-12T15:55:55,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:56:00,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:56:00|state=off
+2011-08-12T15:57:54,INFO,EventManagerStartedEvent,
+2011-08-12T15:57:55,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:57:55,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:57:55|state=on
+2011-08-12T15:57:55,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:58:00,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:58:00|state=off
+2011-08-12T15:58:27,INFO,EventManagerStartedEvent,
+2011-08-12T15:58:28,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T15:58:28,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:58:28|state=on
+2011-08-12T15:58:28,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T15:58:33,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T15:58:33|state=off
+2011-08-12T16:01:11,INFO,EventManagerStartedEvent,
+2011-08-12T16:01:11,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:01:11,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:01:11|state=on
+2011-08-12T16:01:11,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:01:17,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:01:17|state=off
+2011-08-12T16:02:07,INFO,EventManagerStartedEvent,
+2011-08-12T16:02:07,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:02:07,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:02:07|state=on
+2011-08-12T16:02:07,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:02:13,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:02:13|state=off
+2011-08-12T16:02:50,INFO,EventManagerStartedEvent,
+2011-08-12T16:02:50,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:02:50,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:02:50|state=on
+2011-08-12T16:02:50,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:02:56,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:02:56|state=off
+2011-08-12T16:03:50,INFO,EventManagerStartedEvent,
+2011-08-12T16:03:50,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:03:50,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:03:50|state=on
+2011-08-12T16:03:50,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:03:56,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:03:56|state=off
+2011-08-12T16:05:50,INFO,EventManagerStartedEvent,
+2011-08-12T16:05:50,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:05:50,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:05:50|state=on
+2011-08-12T16:05:50,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:05:55,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:05:55|state=off
+2011-08-12T16:08:42,INFO,EventManagerStartedEvent,
+2011-08-12T16:08:43,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:08:43,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:08:43|state=on
+2011-08-12T16:08:43,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:08:48,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:08:48|state=off
+2011-08-12T16:10:04,INFO,EventManagerStartedEvent,
+2011-08-12T16:10:04,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:10:04,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:10:04|state=on
+2011-08-12T16:10:04,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:10:10,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:10:10|state=off
+2011-08-12T16:15:58,INFO,EventManagerStartedEvent,
+2011-08-12T16:15:59,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:15:59,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:15:59|state=on
+2011-08-12T16:15:59,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:16:04,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:16:04|state=off
+2011-08-12T16:17:51,INFO,EventManagerStartedEvent,
+2011-08-12T16:17:51,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:17:51,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:17:51|state=on
+2011-08-12T16:17:51,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:17:56,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:17:56|state=off
+2011-08-12T16:20:23,INFO,EventManagerStartedEvent,
+2011-08-12T16:20:23,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:20:23,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:20:23|state=on
+2011-08-12T16:20:23,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:20:28,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:20:28|state=off
+2011-08-12T16:22:31,INFO,EventManagerStartedEvent,
+2011-08-12T16:22:31,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:22:31,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:22:31|state=on
+2011-08-12T16:22:31,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:22:37,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:22:37|state=off
+2011-08-12T16:24:34,INFO,EventManagerStartedEvent,
+2011-08-12T16:24:34,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:24:34,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:24:34|state=on
+2011-08-12T16:24:34,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:24:40,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:24:40|state=off
+2011-08-12T16:26:01,INFO,EventManagerStartedEvent,
+2011-08-12T16:26:01,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:26:01,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:26:01|state=on
+2011-08-12T16:26:01,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:26:06,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:26:06|state=off
+2011-08-12T16:27:06,INFO,EventManagerStartedEvent,
+2011-08-12T16:27:06,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:27:06,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:27:06|state=on
+2011-08-12T16:27:06,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:27:12,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:27:12|state=off
+2011-08-12T16:28:32,INFO,EventManagerStartedEvent,
+2011-08-12T16:28:32,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:28:32,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:28:32|state=on
+2011-08-12T16:28:32,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:30:02,INFO,EventManagerStartedEvent,
+2011-08-12T16:30:03,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:30:03,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:30:03|state=on
+2011-08-12T16:30:03,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:30:50,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:30:50|state=off
+2011-08-12T16:36:32,INFO,EventManagerStartedEvent,
+2011-08-12T16:36:32,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:36:32,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:36:32|state=on
+2011-08-12T16:36:32,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:36:38,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:36:38|state=off
+2011-08-12T16:39:40,INFO,EventManagerStartedEvent,
+2011-08-12T16:39:41,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:39:41,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:39:41|state=on
+2011-08-12T16:39:41,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:39:46,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:39:46|state=off
+2011-08-12T16:40:15,INFO,EventManagerStartedEvent,
+2011-08-12T16:40:16,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:40:16,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:40:16|state=on
+2011-08-12T16:40:16,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:40:21,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:40:21|state=off
+2011-08-12T16:42:53,INFO,EventManagerStartedEvent,
+2011-08-12T16:42:54,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:42:54,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:42:54|state=on
+2011-08-12T16:42:54,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:42:59,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:42:59|state=off
+2011-08-12T16:47:44,INFO,EventManagerStartedEvent,
+2011-08-12T16:47:44,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:47:44,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:47:44|state=on
+2011-08-12T16:47:44,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:47:50,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:47:50|state=off
+2011-08-12T16:50:18,INFO,EventManagerStartedEvent,
+2011-08-12T16:50:19,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:50:19,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:50:19|state=on
+2011-08-12T16:50:19,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:50:24,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:50:24|state=off
+2011-08-12T16:53:12,INFO,EventManagerStartedEvent,
+2011-08-12T16:53:12,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:53:12,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:53:12|state=on
+2011-08-12T16:53:12,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:53:18,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:53:18|state=off
+2011-08-12T16:56:14,INFO,EventManagerStartedEvent,
+2011-08-12T16:56:14,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:56:14,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:56:14|state=on
+2011-08-12T16:56:14,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:56:20,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:56:20|state=off
+2011-08-12T16:57:17,INFO,EventManagerStartedEvent,
+2011-08-12T16:57:17,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T16:57:17,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:57:17|state=on
+2011-08-12T16:57:17,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T16:57:23,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T16:57:23|state=off
+2011-08-12T17:01:45,INFO,EventManagerStartedEvent,
+2011-08-12T17:01:45,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:01:45,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:01:45|state=on
+2011-08-12T17:01:45,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:01:51,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:01:51|state=off
+2011-08-12T17:05:39,INFO,EventManagerStartedEvent,
+2011-08-12T17:05:39,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:05:39,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:05:39|state=on
+2011-08-12T17:05:39,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:05:45,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:05:45|state=off
+2011-08-12T17:06:25,INFO,EventManagerStartedEvent,
+2011-08-12T17:06:25,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:06:25,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:06:25|state=on
+2011-08-12T17:06:25,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:06:30,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:06:30|state=off
+2011-08-12T17:10:20,INFO,EventManagerStartedEvent,
+2011-08-12T17:10:20,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:10:20,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:10:20|state=on
+2011-08-12T17:10:20,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:10:25,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:10:25|state=off
+2011-08-12T17:10:41,INFO,EventManagerStartedEvent,
+2011-08-12T17:10:41,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:10:41,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:10:41|state=on
+2011-08-12T17:10:41,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:10:47,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:10:47|state=off
+2011-08-12T17:14:16,INFO,EventManagerStartedEvent,
+2011-08-12T17:14:16,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:14:16,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:14:16|state=on
+2011-08-12T17:14:16,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:14:22,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:14:22|state=off
+2011-08-12T17:17:49,INFO,EventManagerStartedEvent,
+2011-08-12T17:17:49,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:17:49,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:17:49|state=on
+2011-08-12T17:17:49,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:17:55,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:17:55|state=off
+2011-08-12T17:18:50,INFO,EventManagerStartedEvent,
+2011-08-12T17:18:50,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:18:51,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:18:51|state=on
+2011-08-12T17:18:51,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:18:56,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:18:56|state=off
+2011-08-12T17:19:46,INFO,EventManagerStartedEvent,
+2011-08-12T17:19:46,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:19:46,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:19:46|state=on
+2011-08-12T17:19:46,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:19:51,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:19:51|state=off
+2011-08-12T17:21:09,INFO,EventManagerStartedEvent,
+2011-08-12T17:21:09,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:21:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:21:09|state=on
+2011-08-12T17:21:09,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:21:14,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:21:14|state=off
+2011-08-12T17:22:09,INFO,EventManagerStartedEvent,
+2011-08-12T17:22:09,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:22:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:22:09|state=on
+2011-08-12T17:22:09,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:22:15,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:22:15|state=off
+2011-08-12T17:25:04,INFO,EventManagerStartedEvent,
+2011-08-12T17:25:04,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-12T17:25:04,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:25:04|state=on
+2011-08-12T17:25:04,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-12T17:25:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-12T17:25:09|state=off
+2011-08-13T07:46:39,INFO,EventManagerStartedEvent,
+2011-08-13T07:46:39,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T07:46:39,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:46:39|state=on
+2011-08-13T07:46:39,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T07:46:46,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:46:46|state=off
+2011-08-13T07:52:13,INFO,EventManagerStartedEvent,
+2011-08-13T07:52:13,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T07:52:13,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:52:13|state=on
+2011-08-13T07:52:13,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T07:52:18,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:52:18|state=off
+2011-08-13T07:53:22,INFO,EventManagerStartedEvent,
+2011-08-13T07:53:23,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T07:53:23,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:53:23|state=on
+2011-08-13T07:53:23,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T07:53:28,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:53:28|state=off
+2011-08-13T07:54:44,INFO,EventManagerStartedEvent,
+2011-08-13T07:54:44,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T07:54:44,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:54:44|state=on
+2011-08-13T07:54:44,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T07:54:49,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:54:49|state=off
+2011-08-13T07:57:11,INFO,EventManagerStartedEvent,
+2011-08-13T07:57:11,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T07:57:11,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:57:11|state=on
+2011-08-13T07:57:11,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T07:57:18,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:57:18|state=off
+2011-08-13T07:57:35,INFO,EventManagerStartedEvent,
+2011-08-13T07:57:35,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T07:57:35,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:57:35|state=on
+2011-08-13T07:57:35,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T07:57:42,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T07:57:42|state=off
+2011-08-13T09:02:09,INFO,EventManagerStartedEvent,
+2011-08-13T09:02:09,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:02:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:02:09|state=on
+2011-08-13T09:02:09,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:02:15,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:02:15|state=off
+2011-08-13T09:09:22,INFO,EventManagerStartedEvent,
+2011-08-13T09:09:22,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:09:22,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:09:22|state=on
+2011-08-13T09:09:22,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:09:28,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:09:28|state=off
+2011-08-13T09:13:03,INFO,EventManagerStartedEvent,
+2011-08-13T09:13:03,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:13:03,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:13:03|state=on
+2011-08-13T09:13:03,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:13:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:13:09|state=off
+2011-08-13T09:14:15,INFO,EventManagerStartedEvent,
+2011-08-13T09:14:15,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:14:15,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:14:15|state=on
+2011-08-13T09:14:15,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:14:21,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:14:21|state=off
+2011-08-13T09:31:32,INFO,EventManagerStartedEvent,
+2011-08-13T09:31:32,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:31:32,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:31:32|state=on
+2011-08-13T09:31:32,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:31:40,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:31:40|state=off
+2011-08-13T09:34:12,INFO,EventManagerStartedEvent,
+2011-08-13T09:34:13,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:34:13,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:34:13|state=on
+2011-08-13T09:34:13,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:34:21,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:34:21|state=off
+2011-08-13T09:35:59,INFO,EventManagerStartedEvent,
+2011-08-13T09:35:59,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:35:59,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:35:59|state=on
+2011-08-13T09:35:59,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:36:05,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:36:05|state=off
+2011-08-13T09:37:00,INFO,EventManagerStartedEvent,
+2011-08-13T09:37:00,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:37:00,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:37:00|state=on
+2011-08-13T09:37:00,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:37:06,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:37:06|state=off
+2011-08-13T09:37:32,INFO,EventManagerStartedEvent,
+2011-08-13T09:37:33,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:37:33,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:37:33|state=on
+2011-08-13T09:37:33,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:37:38,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:37:38|state=off
+2011-08-13T09:39:09,INFO,EventManagerStartedEvent,
+2011-08-13T09:39:09,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:39:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:39:09|state=on
+2011-08-13T09:39:09,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:39:14,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:39:14|state=off
+2011-08-13T09:39:55,INFO,EventManagerStartedEvent,
+2011-08-13T09:39:55,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:39:55,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:39:55|state=on
+2011-08-13T09:39:55,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:40:00,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:40:00|state=off
+2011-08-13T09:40:22,INFO,EventManagerStartedEvent,
+2011-08-13T09:40:23,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:40:23,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:40:23|state=on
+2011-08-13T09:40:23,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:40:28,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:40:28|state=off
+2011-08-13T09:40:28,INFO,EventManagerStartedEvent,
+2011-08-13T09:40:28,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:40:28,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:40:28|state=on
+2011-08-13T09:40:28,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:40:32,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:40:32|state=off
+2011-08-13T09:46:53,INFO,EventManagerStartedEvent,
+2011-08-13T09:46:53,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:46:53,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:46:53|state=on
+2011-08-13T09:46:53,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:46:58,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:46:58|state=off
+2011-08-13T09:47:06,INFO,EventManagerStartedEvent,
+2011-08-13T09:47:06,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:47:07,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:47:06|state=on
+2011-08-13T09:47:07,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:47:12,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:47:12|state=off
+2011-08-13T09:48:08,INFO,EventManagerStartedEvent,
+2011-08-13T09:48:09,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:48:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:48:09|state=on
+2011-08-13T09:48:09,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:48:14,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:48:14|state=off
+2011-08-13T09:50:02,INFO,EventManagerStartedEvent,
+2011-08-13T09:50:02,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:50:02,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:50:02|state=on
+2011-08-13T09:50:02,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:50:08,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:50:08|state=off
+2011-08-13T09:52:56,INFO,EventManagerStartedEvent,
+2011-08-13T09:52:57,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:52:57,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:52:57|state=on
+2011-08-13T09:52:57,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:53:04,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:53:04|state=off
+2011-08-13T09:53:58,INFO,EventManagerStartedEvent,
+2011-08-13T09:53:58,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:53:58,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:53:58|state=on
+2011-08-13T09:53:58,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:54:03,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:54:03|state=off
+2011-08-13T09:55:01,INFO,EventManagerStartedEvent,
+2011-08-13T09:55:02,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:55:02,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:55:02|state=on
+2011-08-13T09:55:02,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:55:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:55:09|state=off
+2011-08-13T09:58:52,INFO,EventManagerStartedEvent,
+2011-08-13T09:58:52,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T09:58:52,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:58:52|state=on
+2011-08-13T09:58:52,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T09:58:59,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T09:58:59|state=off
+2011-08-13T10:03:09,INFO,EventManagerStartedEvent,
+2011-08-13T10:03:09,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:03:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:03:09|state=on
+2011-08-13T10:03:09,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:03:16,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:03:16|state=off
+2011-08-13T10:06:46,INFO,EventManagerStartedEvent,
+2011-08-13T10:06:46,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:06:46,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:06:46|state=on
+2011-08-13T10:06:46,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:06:53,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:06:53|state=off
+2011-08-13T10:08:03,INFO,EventManagerStartedEvent,
+2011-08-13T10:08:03,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:08:03,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:08:03|state=on
+2011-08-13T10:08:03,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:08:10,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:08:10|state=off
+2011-08-13T10:09:19,INFO,EventManagerStartedEvent,
+2011-08-13T10:09:19,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:09:19,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:09:19|state=on
+2011-08-13T10:09:19,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:09:27,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:09:27|state=off
+2011-08-13T10:12:02,INFO,EventManagerStartedEvent,
+2011-08-13T10:12:02,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:12:02,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:12:02|state=on
+2011-08-13T10:12:02,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:12:09,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:12:09|state=off
+2011-08-13T10:12:21,INFO,EventManagerStartedEvent,
+2011-08-13T10:12:21,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:12:21,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:12:21|state=on
+2011-08-13T10:12:21,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:12:27,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:12:27|state=off
+2011-08-13T10:12:50,INFO,EventManagerStartedEvent,
+2011-08-13T10:12:50,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:12:50,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:12:50|state=on
+2011-08-13T10:12:50,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:12:57,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:12:57|state=off
+2011-08-13T10:14:20,INFO,EventManagerStartedEvent,
+2011-08-13T10:14:20,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:14:20,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:14:20|state=on
+2011-08-13T10:14:20,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:14:27,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:14:27|state=off
+2011-08-13T10:15:28,INFO,EventManagerStartedEvent,
+2011-08-13T10:15:29,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:15:29,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:15:29|state=on
+2011-08-13T10:15:29,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:15:36,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:15:36|state=off
+2011-08-13T10:17:15,INFO,EventManagerStartedEvent,
+2011-08-13T10:17:15,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:17:15,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:17:15|state=on
+2011-08-13T10:17:15,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:17:21,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:17:21|state=off
+2011-08-13T10:19:33,INFO,EventManagerStartedEvent,
+2011-08-13T10:19:33,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:19:33,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:19:33|state=on
+2011-08-13T10:19:33,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:19:39,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:19:39|state=off
+2011-08-13T10:20:37,INFO,EventManagerStartedEvent,
+2011-08-13T10:20:37,INFO,LicenseActivatedEvent,expirationDate=2011-10-11T15:07:43|expirationType=floating-eval|serialNumber=G04E0-MFK43-M8E1H-0ZARK-AV25A|allowedVersions=vf.gf.dmn-6|available=60
+2011-08-13T10:20:37,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:20:37|state=on
+2011-08-13T10:20:37,INFO,UpdatedLicenseStateEvent,enforcement=soft|licenseType=default|expirationDate=2011-10-11T15:07:43|used=1|available=60|addons=vf.gf.evaluation
+2011-08-13T10:20:44,INFO,ComponentStateChangeEvent,instanceIdType=self|instanceId=self|timestamp=2011-08-13T10:20:44|state=off
diff --git a/spring-integration-gemfire/vf.gf.dmn-license.cfg b/spring-integration-gemfire/vf.gf.dmn-license.cfg
new file mode 100644
index 0000000000..a80f3b67df
--- /dev/null
+++ b/spring-integration-gemfire/vf.gf.dmn-license.cfg
@@ -0,0 +1,3 @@
+# vf.gf.dmn written Aug 13, 2011 10:20:44 AM EDT
+evalStart.G04E0-MFK43-M8E1H-0ZARK-AV25A=1313176063089
+instance.self=self,off,1313245244799
diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractRequestResponseScenarioTest.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractRequestResponseScenarioTest.java
new file mode 100644
index 0000000000..496234c5a6
--- /dev/null
+++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractRequestResponseScenarioTest.java
@@ -0,0 +1,82 @@
+package org.springframework.integration.test.support;
+
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
+import java.util.List;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationContext;
+import org.springframework.integration.Message;
+import org.springframework.integration.MessageChannel;
+import org.springframework.integration.core.PollableChannel;
+import org.springframework.integration.core.SubscribableChannel;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+
+/**
+ * Convenience class for testing Spring Integration request-response message scenarios. Users
+ * create subclasses to execute on or more {@link RequestResponseScenario} tests. each scenario defines:
+ *
+ * - An inputChannelName
+ * - An outputChannelName
+ * - A payload or message to send as a request message on the inputChannel
+ * - A handler to validate the response received on the outputChannel
+ *
+ * @author David Turanski
+ */
+@RunWith(SpringJUnit4ClassRunner.class)
+public abstract class AbstractRequestResponseScenarioTest {
+ private List scenarios = null;
+
+ @Autowired
+ private ApplicationContext applicationContext;
+
+ @Before
+ public void setUp(){
+ scenarios = defineRequestResponseScenarios();
+ }
+
+ /**
+ * Execute each scenario. Instantiate the message channels, send the request message on the
+ * input channel and invoke the validator on the response received on the output channel.
+ * This can handle subscribable or pollable output channels.
+ */
+ @Test
+ public void testRequestResponseScenarios(){
+ int i = 1;
+ for (RequestResponseScenario scenario: scenarios){
+ String name = scenario.getName() == null? "scenario-"+(i++) : scenario.getName();
+ scenario.init();
+ MessageChannel inputChannel = applicationContext.getBean(scenario.getInputChannelName(),MessageChannel.class);
+ MessageChannel outputChannel = applicationContext.getBean(scenario.getOutputChannelName(),MessageChannel.class);
+ if (outputChannel instanceof SubscribableChannel){
+ ((SubscribableChannel) outputChannel).subscribe(scenario.getResponseValidator());
+ }
+
+ assertTrue(name + ": message not sent on " + scenario.getInputChannelName()
+ , inputChannel.send(scenario.getMessage()));
+
+ if (outputChannel instanceof PollableChannel){
+ Message> response = ((PollableChannel) outputChannel).receive(10000);
+ assertNotNull(name + ": receive timeout on " + scenario.getOutputChannelName(),response);
+
+ if (scenario.getResponseValidator() instanceof PayloadValidator){
+ scenario.getResponseValidator().validateResponse(response.getPayload());
+ } else {
+ scenario.getResponseValidator().validateResponse(response);
+ }
+ }
+ }
+ }
+ /**
+ * Implement this method to define RequestResponse scenarios
+ * @return - A List of {@link RequestResponseScenario}
+ */
+ protected abstract List defineRequestResponseScenarios();
+
+
+}
diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractResponseValidator.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractResponseValidator.java
new file mode 100644
index 0000000000..15fb868baf
--- /dev/null
+++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractResponseValidator.java
@@ -0,0 +1,27 @@
+package org.springframework.integration.test.support;
+
+import org.springframework.integration.Message;
+import org.springframework.integration.MessagingException;
+import org.springframework.integration.core.MessageHandler;
+/**
+ * The base class for response validators used for {@link RequestResponseScenario}s
+ * @author David Turanski
+ *
+ */
+public abstract class AbstractResponseValidator implements MessageHandler {
+
+ public void handleMessage(Message> message) throws MessagingException {
+ validateResponse(extractPayload()? message.getPayload(): message );
+ }
+ /**
+ * Implement this method to validate the response (Message or Payload)
+ * @param response
+ */
+ protected abstract void validateResponse(Object response);
+ /**
+ * If true will extract the payload as the parameter for validateResponse()
+ * @return true to extract the payload; false to process the message.
+ */
+ protected abstract boolean extractPayload();
+
+}
diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/MessageValidator.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/MessageValidator.java
new file mode 100644
index 0000000000..47c077adb3
--- /dev/null
+++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/MessageValidator.java
@@ -0,0 +1,24 @@
+package org.springframework.integration.test.support;
+
+import org.springframework.integration.Message;
+/**
+ * Validate a message. Create an anonymous instance or subclass to
+ * implement the validateMessage() method
+ * @author David Turanski
+ *
+ */
+public abstract class MessageValidator extends AbstractResponseValidator {
+ protected final boolean extractPayload(){
+ return false;
+ }
+
+ protected final void validateResponse(Object response){
+ validateMessage((Message>) response);
+ }
+ /**
+ * Implement this method to validate the message
+ * @param message
+ */
+ protected abstract void validateMessage(Message> message);
+
+}
diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/PayloadValidator.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/PayloadValidator.java
new file mode 100644
index 0000000000..8fda95ba58
--- /dev/null
+++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/PayloadValidator.java
@@ -0,0 +1,12 @@
+package org.springframework.integration.test.support;
+/**
+ * Validate a message payload. Create an anonymous instance or subclass this
+ * to validate a response payload.
+ * @author David Turanski
+ *
+ */
+public abstract class PayloadValidator extends AbstractResponseValidator {
+ protected final boolean extractPayload(){
+ return true;
+ }
+}
diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/RequestResponseScenario.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/RequestResponseScenario.java
new file mode 100644
index 0000000000..32e15d1dd7
--- /dev/null
+++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/RequestResponseScenario.java
@@ -0,0 +1,124 @@
+package org.springframework.integration.test.support;
+
+import org.springframework.integration.Message;
+import org.springframework.integration.message.GenericMessage;
+import org.springframework.util.Assert;
+/**
+ * Defines a Spring Integration request response test scenario. All setter methods may
+ * be chained.
+ * @author David Turanski
+ *
+ */
+public class RequestResponseScenario {
+ private final String inputChannelName;
+ private final String outputChannelName;
+ private Object payload;
+ private Message> message;
+ private AbstractResponseValidator responseValidator;
+ private String name;
+
+ protected Message extends Object> getMessage(){
+ if (message == null){
+ return new GenericMessage