Search in sources :

Example 6 with Cache

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

the class ClearCacheServiceTest method testDoService_Exception.

@Test(expected = ServiceException.class)
public void testDoService_Exception() throws Exception {
    Cache mockCache = Mockito.mock(Cache.class);
    Mockito.doThrow(new CoreException()).when(mockCache).clear();
    CacheConnection cache = new CacheConnection(mockCache);
    ClearCacheService service = new ClearCacheService().withIgnoreUnsupported(true).withConnection(cache);
    ExampleServiceCase.execute(service, AdaptrisMessageFactory.getDefaultInstance().newMessage());
}
Also used : CoreException(com.adaptris.core.CoreException) Cache(com.adaptris.core.cache.Cache) Test(org.junit.Test)

Example 7 with Cache

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

the class ClearCacheServiceTest method testDoService_Quietly.

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

Example 8 with Cache

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

the class GetValueFromCacheTest method testDoService.

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

Example 9 with Cache

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

the class RemoveFromCacheServiceTest method testDoService.

@Override
@Test
public void testDoService() throws Exception {
    AdaptrisMessage msg = createMessage("Hello World", Arrays.asList(new MetadataElement[] { new MetadataElement(SRC_METADATA_KEY, LOOKUP_VALUE) }));
    Cache cache = createCacheInstanceForTests();
    CacheServiceBase service = createServiceForTests();
    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);
        assertTrue(msg.headersContainsKey(TARGET_METADATA_KEY));
        assertEquals(LOOKED_UP_VALUE, msg.getMetadataValue(TARGET_METADATA_KEY));
        // The service should have removed it.
        assertFalse(cache.getKeys().contains(LOOKUP_VALUE));
    } finally {
        stop(service);
    }
}
Also used : AdaptrisMessage(com.adaptris.core.AdaptrisMessage) MetadataElement(com.adaptris.core.MetadataElement) Cache(com.adaptris.core.cache.Cache) Test(org.junit.Test)

Example 10 with Cache

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

the class RemoveKeyFromCacheTest method testDoService_WithError.

@Test
public void testDoService_WithError() throws Exception {
    AdaptrisMessage msg = new DefectiveMessageFactory(EnumSet.of(WhenToBreak.METADATA_GET)).newMessage("Hello World");
    msg.addMetadata("metadataKey", "value");
    Cache cache = createCacheInstanceForTests();
    RemoveKeyFromCache service = new RemoveKeyFromCache().withKey("%message{metadataKey}").withConnection(new CacheConnection().withCacheInstance(cache));
    try {
        start(service);
        service.doService(msg);
        fail();
    } catch (ServiceException expected) {
    } finally {
        stop(service);
    }
}
Also used : DefectiveMessageFactory(com.adaptris.core.stubs.DefectiveMessageFactory) ServiceException(com.adaptris.core.ServiceException) AdaptrisMessage(com.adaptris.core.AdaptrisMessage) 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