/** * Gets the extra info for the event log. * <p> * @return disk location */ @Override public String getEventLoggingExtraInfo() { return getIPAddressForService(); }
/** * Debugging info. * <p> * @return basic info about the RemoteCache */ @Override public String toString() { return "RemoteCache: " + cacheName + " attributes = " + getRemoteCacheAttributes(); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testRemoveAll_simple() throws Exception { RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener, monitor ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK remoteCache.remove( "key" ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testDispose_simple() throws Exception { RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener, monitor ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK remoteCache.dispose( ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify that when we call fix events queued in the zombie are propagated to the new service. * <p> * @throws Exception */ public void testUpdateZombieThenFix() throws Exception { // SETUP ZombieCacheServiceNonLocal<String, String> zombie = new ZombieCacheServiceNonLocal<String, String>( 10 ); // set the zombie RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, zombie, listener, monitor ); String cacheName = "testUpdate"; // DO WORK ICacheElement<String, String> element = new CacheElement<String, String>( cacheName, "key", "value" ); remoteCache.update( element ); // set the new service, this should call propagate remoteCache.fixCache( service ); // VERIFY assertTrue( "The element should be in the serialized warapper.", service.lastUpdate instanceof ICacheElementSerialized ); ICacheElement<String, String> result = SerializationConversionUtil .getDeSerializedCacheElement( (ICacheElementSerialized<String, String>) service.lastUpdate, remoteCache .getElementSerializer() ); assertEquals( "Wrong element updated.", element.getVal(), result.getVal() ); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testGet_simple() throws Exception { RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener, monitor ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK remoteCache.get( "key" ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testUpdate_simple() throws Exception { RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener, monitor ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); ICacheElement<String, String> item = new CacheElement<String, String>( "region", "key", "value" ); // DO WORK remoteCache.update( item ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testGetMultiple_simple() throws Exception { RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener, monitor ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK remoteCache.getMultiple( new HashSet<String>() ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testGetMatching_simple() throws Exception { // SETUP String pattern = "adsfasdfasd.?"; RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener, monitor ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK Map<String, ICacheElement<String, String>> result = remoteCache.getMatching( pattern ); // VERIFY assertNotNull( "Should have a map", result ); assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify that the remote service update method is called. The remote cache serializes the object * first. * <p> * @throws Exception */ public void testUpdate() throws Exception { // SETUP long listenerId = 123; listener.setListenerId( listenerId ); RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener, monitor ); String cacheName = "testUpdate"; // DO WORK ICacheElement<String, String> element = new CacheElement<String, String>( cacheName, "key", "value" ); remoteCache.update( element ); // VERIFY assertTrue( "The element should be in the serialized wrapper.", service.lastUpdate instanceof ICacheElementSerialized ); ICacheElement<String, String> result = SerializationConversionUtil .getDeSerializedCacheElement( (ICacheElementSerialized<String, String>) service.lastUpdate, remoteCache .getElementSerializer() ); assertEquals( "Wrong element updated.", element.getVal(), result.getVal() ); assertEquals( "Wrong listener id.", Long.valueOf( listenerId ), service.updateRequestIdList.get( 0 ) ); }
logError( cacheName, "", message ); log.error( message, ex ); if ( getRemoteCacheService() == null || !( getRemoteCacheService() instanceof ZombieCacheServiceNonLocal ) ) setRemoteCacheService( new ZombieCacheServiceNonLocal<K, V>( getRemoteCacheAttributes().getZombieQueueMaxSize() ) );
/** * Verify that we can add an item. */ public void testAddNoWait_InList() { // SETUP List<RemoteCacheNoWait<String, String>> noWaits = new ArrayList<RemoteCacheNoWait<String,String>>(); IRemoteCacheAttributes cattr = new RemoteCacheAttributes(); cattr.setCacheName( "testCache1" ); RemoteCache<String, String> client = new RemoteCache<String, String>(cattr, null, null, null); RemoteCacheNoWait<String, String> noWait = new RemoteCacheNoWait<String, String>( client ); noWaits.add( noWait ); RemoteCacheNoWaitFacade<String, String> facade = new RemoteCacheNoWaitFacade<String, String>(noWaits, cattr, null, null, null ); // VERIFY assertEquals( "Should have one entry.", 1, facade.noWaits.size() ); assertTrue( "Should be in the list.", facade.noWaits.contains( noWait ) ); assertSame( "Should have same facade.", facade, ((RemoteCache<String, String>)facade.noWaits.get(0).getRemoteCache()).getFacade() ); } }
/** * @return IStats object */ @Override public IStats getStatistics() { IStats stats = new Stats(); stats.setTypeName( "Remote Cache" ); ArrayList<IStatElement<?>> elems = new ArrayList<IStatElement<?>>(); elems.add(new StatElement<String>( "Remote Host:Port", getIPAddressForService() ) ); elems.add(new StatElement<String>( "Remote Type", this.getRemoteCacheAttributes().getRemoteTypeName() ) ); // if ( this.getRemoteCacheAttributes().getRemoteType() == RemoteType.CLUSTER ) // { // // something cluster specific // } // get the stats from the super too IStats sStats = super.getStatistics(); elems.addAll(sStats.getStatElements()); stats.setStatElements( elems ); return stats; }
new RemoteCache<K, V>( cattr, (ICacheServiceNonLocal<K, V>) remoteService, listener, monitor ); remoteCacheClient.setCacheEventLogger( cacheEventLogger ); remoteCacheClient.setElementSerializer( elementSerializer );
/** * Verify event log calls. * <p> * @throws Exception */ public void testRemove_simple() throws Exception { RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener, monitor ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK remoteCache.remove( "key" ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify that there is no problem if there is no listener. * <p> * @throws Exception */ public void testDispose_nullListener() throws Exception { // SETUP RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, null, monitor ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK remoteCache.dispose( ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); } }
/** * Verify that when we call fix events queued in the zombie are propagated to the new service. * <p> * @throws Exception */ public void testUpdateZombieThenFix() throws Exception { // SETUP IRemoteCacheAttributes cattr = new RemoteCacheAttributes(); ZombieCacheServiceNonLocal<String, String> zombie = new ZombieCacheServiceNonLocal<String, String>( 10 ); MockRemoteCacheService<String, String> service = new MockRemoteCacheService<String, String>(); MockRemoteCacheListener<String, String> listener = new MockRemoteCacheListener<String, String>(); // set the zombie RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, zombie, listener ); String cacheName = "testUpdate"; // DO WORK ICacheElement<String, String> element = new CacheElement<String, String>( cacheName, "key", "value" ); remoteCache.update( element ); // set the new service, this should call propagate remoteCache.fixCache( service ); // VERIFY assertTrue( "The element should be in the serialized warapper.", service.lastUpdate instanceof ICacheElementSerialized ); ICacheElement<String, String> result = SerializationConversionUtil .getDeSerializedCacheElement( (ICacheElementSerialized<String, String>) service.lastUpdate, remoteCache .getElementSerializer() ); assertEquals( "Wrong element updated.", element.getVal(), result.getVal() ); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testGet_simple() throws Exception { // SETUP IRemoteCacheAttributes cattr = new RemoteCacheAttributes(); MockRemoteCacheService<String, String> service = new MockRemoteCacheService<String, String>(); MockRemoteCacheListener<String, String> listener = new MockRemoteCacheListener<String, String>(); RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK remoteCache.get( "key" ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testUpdate_simple() throws Exception { // SETUP IRemoteCacheAttributes cattr = new RemoteCacheAttributes(); MockRemoteCacheService<String, String> service = new MockRemoteCacheService<String, String>(); MockRemoteCacheListener<String, String> listener = new MockRemoteCacheListener<String, String>(); RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); ICacheElement<String, String> item = new CacheElement<String, String>( "region", "key", "value" ); // DO WORK remoteCache.update( item ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }
/** * Verify event log calls. * <p> * @throws Exception */ public void testGetMultiple_simple() throws Exception { // SETUP IRemoteCacheAttributes cattr = new RemoteCacheAttributes(); MockRemoteCacheService<String, String> service = new MockRemoteCacheService<String, String>(); MockRemoteCacheListener<String, String> listener = new MockRemoteCacheListener<String, String>(); RemoteCache<String, String> remoteCache = new RemoteCache<String, String>( cattr, service, listener ); MockCacheEventLogger cacheEventLogger = new MockCacheEventLogger(); remoteCache.setCacheEventLogger( cacheEventLogger ); // DO WORK remoteCache.getMultiple( new HashSet<String>() ); // VERIFY assertEquals( "Start should have been called.", 1, cacheEventLogger.startICacheEventCalls ); assertEquals( "End should have been called.", 1, cacheEventLogger.endICacheEventCalls ); }