Search in sources :

Example 31 with Cache

use of com.adaptris.core.cache.Cache in project interlok by adaptris.

the class ClearCacheServiceTest method testDoService.

@Test
public void testDoService() throws Exception {
    Cache mockCache = Mockito.mock(Cache.class);
    CacheConnection cache = new CacheConnection(mockCache);
    ClearCacheService service = new ClearCacheService().withConnection(cache);
    ExampleServiceCase.execute(service, AdaptrisMessageFactory.getDefaultInstance().newMessage());
}
Also used : Cache(com.adaptris.core.cache.Cache) Test(org.junit.Test)

Example 32 with Cache

use of com.adaptris.core.cache.Cache in project interlok by adaptris.

the class GetValueFromCacheTest method testDoService_WithError.

@Test
public void testDoService_WithError() throws Exception {
    AdaptrisMessage msg = AdaptrisMessageFactory.getDefaultInstance().newMessage("Hello World");
    Cache cache = createCacheInstanceForTests();
    GetValueFromCache service = new GetValueFromCache().withExceptionIfNotFound(true).withValueTranslator(new StringPayloadCacheTranslator()).withKey("%message{%uniqueId}").withConnection(new CacheConnection().withCacheInstance(cache));
    try {
        start(service);
        service.doService(msg);
        fail();
    } catch (ServiceException expected) {
    } finally {
        stop(service);
    }
}
Also used : ServiceException(com.adaptris.core.ServiceException) AdaptrisMessage(com.adaptris.core.AdaptrisMessage) StringPayloadCacheTranslator(com.adaptris.core.services.cache.translators.StringPayloadCacheTranslator) Cache(com.adaptris.core.cache.Cache) Test(org.junit.Test)

Example 33 with Cache

use of com.adaptris.core.cache.Cache in project interlok by adaptris.

the class GetValueFromCacheTest method testDoService_NotFoundWithError.

@Test
public void testDoService_NotFoundWithError() throws Exception {
    AdaptrisMessage msg = AdaptrisMessageFactory.getDefaultInstance().newMessage("Hello World");
    Cache cache = createCacheInstanceForTests();
    GetValueFromCache service = new GetValueFromCache().withExceptionIfNotFound(false).withValueTranslator(new StringPayloadCacheTranslator()).withKey("%message{%uniqueId}").withConnection(new CacheConnection().withCacheInstance(cache));
    try {
        start(service);
        service.doService(msg);
        assertNotEquals("Hello World", msg.getContent());
    } catch (ServiceException expected) {
    } finally {
        stop(service);
    }
}
Also used : ServiceException(com.adaptris.core.ServiceException) AdaptrisMessage(com.adaptris.core.AdaptrisMessage) StringPayloadCacheTranslator(com.adaptris.core.services.cache.translators.StringPayloadCacheTranslator) Cache(com.adaptris.core.cache.Cache) Test(org.junit.Test)

Example 34 with Cache

use of com.adaptris.core.cache.Cache in project interlok by adaptris.

the class RemoveKeyFromCacheTest method testDoService.

@Test
public void testDoService() throws Exception {
    AdaptrisMessage msg = AdaptrisMessageFactory.getDefaultInstance().newMessage("Hello World");
    Cache cache = createCacheInstanceForTests();
    RemoveKeyFromCache service = new RemoveKeyFromCache().withKey("%message{%uniqueId}").withConnection(new CacheConnection().withCacheInstance(cache));
    try {
        start(service);
        cache.put(msg.getUniqueId(), msg.getContent());
        assertNotNull(cache.get(msg.getUniqueId()));
        service.doService(msg);
        assertNull(cache.get(msg.getUniqueId()));
    } finally {
        stop(service);
    }
}
Also used : AdaptrisMessage(com.adaptris.core.AdaptrisMessage) Cache(com.adaptris.core.cache.Cache) Test(org.junit.Test)

Example 35 with Cache

use of com.adaptris.core.cache.Cache in project interlok by adaptris.

the class RetrieveFromCacheServiceTest method testDoService_AddToMessageFailure.

@Test
public void testDoService_AddToMessageFailure() throws Exception {
    AdaptrisMessage msg = createMessage("Hello World", Arrays.asList(new MetadataElement[] { new MetadataElement(SRC_METADATA_KEY, LOOKUP_VALUE) }));
    Cache cache = createCacheInstanceForTests();
    RetrieveFromCacheService service = createServiceForTests();
    CacheEntryEvaluator eval = service.getCacheEntryEvaluators().get(0);
    // we know that StaticCacheValueTranslator should throw an exception if
    // we try to apply a value into the message.
    eval.setValueTranslator(new StaticCacheValueTranslator("dummy value"));
    try {
        service.setConnection(new CacheConnection(cache));
        start(service);
        // Now add the TARGET DATA to the cache.
        cache.put(LOOKUP_VALUE, LOOKED_UP_VALUE);
        service.doService(msg);
        fail("Expected a ServiceException");
    } catch (ServiceException expected) {
    } finally {
        stop(service);
    }
}
Also used : ServiceException(com.adaptris.core.ServiceException) AdaptrisMessage(com.adaptris.core.AdaptrisMessage) MetadataElement(com.adaptris.core.MetadataElement) StaticCacheValueTranslator(com.adaptris.core.services.cache.translators.StaticCacheValueTranslator) Cache(com.adaptris.core.cache.Cache) Test(org.junit.Test)

Aggregations

Cache (com.adaptris.core.cache.Cache)36 Test (org.junit.Test)27 AdaptrisMessage (com.adaptris.core.AdaptrisMessage)23 ServiceException (com.adaptris.core.ServiceException)15 MetadataElement (com.adaptris.core.MetadataElement)14 ExpiringMapCache (com.adaptris.core.cache.ExpiringMapCache)6 MetadataCacheValueTranslator (com.adaptris.core.services.cache.translators.MetadataCacheValueTranslator)5 StringPayloadCacheTranslator (com.adaptris.core.services.cache.translators.StringPayloadCacheTranslator)5 CacheConnection (com.adaptris.core.services.cache.CacheConnection)4 CoreException (com.adaptris.core.CoreException)2 StaticCacheValueTranslator (com.adaptris.core.services.cache.translators.StaticCacheValueTranslator)2 DefectiveMessageFactory (com.adaptris.core.stubs.DefectiveMessageFactory)2 UnresolvedMetadataException (com.adaptris.core.UnresolvedMetadataException)1 CacheExpiry (com.adaptris.core.cache.CacheExpiry)1 Expiry (com.adaptris.core.cache.CacheExpiry.Expiry)1 CacheProvider (com.adaptris.core.cache.CacheProvider)1 TimeInterval (com.adaptris.util.TimeInterval)1 Serializable (java.io.Serializable)1 URL (java.net.URL)1 Queue (javax.jms.Queue)1