List of usage examples for org.springframework.data.gemfire.snapshot SnapshotServiceFactoryBean setExports
public void setExports(SnapshotMetadata<K, V>[] exports)
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java
@Test public void destroyPerformsExportWithConfiguredExports() throws Exception { SnapshotMetadata expectedSnapshotMetadata = newSnapshotMetadata(); final SnapshotServiceAdapter mockSnapshotService = mock(SnapshotServiceAdapter.class, "MockSnapshotServiceAdapter"); SnapshotServiceFactoryBean factoryBean = new SnapshotServiceFactoryBean() { @Override//from www . j av a2 s . c om public SnapshotServiceAdapter getObject() throws Exception { return mockSnapshotService; } }; factoryBean.setExports(toArray(expectedSnapshotMetadata)); factoryBean.destroy(); assertThat(factoryBean.getExports()[0], is(equalTo(expectedSnapshotMetadata))); verify(mockSnapshotService, times(1)).doExport(eq(expectedSnapshotMetadata)); }
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java
@Test public void onApplicationEventWhenMatchUsingEventSnapshotMetadataPerformsExport() throws Exception { Region mockRegion = mock(Region.class, "MockRegion"); SnapshotApplicationEvent mockSnapshotEvent = mock(ExportSnapshotApplicationEvent.class, "MockExportSnapshotApplicationEvent"); SnapshotMetadata eventSnapshotMetadata = newSnapshotMetadata(snapshotDat); final SnapshotServiceAdapter mockSnapshotService = mock(SnapshotServiceAdapter.class, "MockSnapshotServiceAdapter"); when(mockSnapshotEvent.isCacheSnapshotEvent()).thenReturn(false); when(mockSnapshotEvent.matches(eq(mockRegion))).thenReturn(true); when(mockSnapshotEvent.getSnapshotMetadata()).thenReturn(toArray(eventSnapshotMetadata)); SnapshotServiceFactoryBean factoryBean = new SnapshotServiceFactoryBean() { @Override/*from w w w . j av a2s. c o m*/ public SnapshotServiceAdapter getObject() throws Exception { return mockSnapshotService; } }; factoryBean.setExports(toArray(newSnapshotMetadata())); factoryBean.setRegion(mockRegion); assertThat(factoryBean.getExports()[0], is(not(sameInstance(eventSnapshotMetadata)))); assertThat(factoryBean.getRegion(), is(sameInstance(mockRegion))); factoryBean.onApplicationEvent(mockSnapshotEvent); verify(mockSnapshotEvent, times(1)).isCacheSnapshotEvent(); verify(mockSnapshotEvent, times(1)).matches(eq(mockRegion)); verify(mockSnapshotEvent, times(1)).getSnapshotMetadata(); verify(mockSnapshotService, times(1)).doExport(eq(eventSnapshotMetadata)); }
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java
@Test public void onApplicationEventWhenNoMatchDoesNotPerformExport() throws Exception { SnapshotApplicationEvent mockSnapshotEvent = mock(ExportSnapshotApplicationEvent.class, "MockExportSnapshotApplicationEvent"); when(mockSnapshotEvent.isCacheSnapshotEvent()).thenReturn(false); when(mockSnapshotEvent.matches(any(Region.class))).thenReturn(false); when(mockSnapshotEvent.getSnapshotMetadata()).thenReturn(null); final SnapshotServiceAdapter mockSnapshotService = mock(SnapshotServiceAdapter.class, "MockSnapshotServiceAdapter"); SnapshotServiceFactoryBean factoryBean = new SnapshotServiceFactoryBean() { @Override/*from w ww.j av a 2 s.co m*/ public SnapshotServiceAdapter getObject() throws Exception { return mockSnapshotService; } }; factoryBean.setExports(toArray(newSnapshotMetadata())); assertThat(factoryBean.getExports()[0], isA(SnapshotMetadata.class)); assertThat(factoryBean.getRegion(), is(nullValue())); factoryBean.onApplicationEvent(mockSnapshotEvent); verify(mockSnapshotEvent, times(1)).isCacheSnapshotEvent(); verify(mockSnapshotEvent, times(1)).matches(isNull(Region.class)); verify(mockSnapshotEvent, never()).getSnapshotMetadata(); verify(mockSnapshotService, never()).doExport(any(SnapshotMetadata.class)); }
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java
@Test public void exportCacheSnapshotOnDestroy() throws Exception { Cache mockCache = mock(Cache.class, "MockCache"); CacheSnapshotService mockCacheSnapshotService = mock(CacheSnapshotService.class, "MockCacheSnapshotService"); SnapshotFilter mockSnapshotFilterOne = mock(SnapshotFilter.class, "MockSnapshotFilterOne"); SnapshotFilter mockSnapshotFilterTwo = mock(SnapshotFilter.class, "MockSnapshotFilterTwo"); SnapshotOptions mockSnapshotOptionsOne = mock(SnapshotOptions.class, "MockSnapshotOptionsOne"); SnapshotOptions mockSnapshotOptionsTwo = mock(SnapshotOptions.class, "MockSnapshotOptionsTwo"); when(mockCache.getSnapshotService()).thenReturn(mockCacheSnapshotService); when(mockCacheSnapshotService.createOptions()).thenReturn(mockSnapshotOptionsOne) .thenReturn(mockSnapshotOptionsTwo); when(mockSnapshotOptionsOne.setFilter(eq(mockSnapshotFilterOne))).thenReturn(mockSnapshotOptionsOne); when(mockSnapshotOptionsTwo.setFilter(eq(mockSnapshotFilterTwo))).thenReturn(mockSnapshotOptionsTwo); SnapshotMetadata[] expectedExports = toArray(newSnapshotMetadata(mockSnapshotFilterOne), newSnapshotMetadata(mockSnapshotFilterTwo)); SnapshotServiceFactoryBean factoryBean = new SnapshotServiceFactoryBean(); factoryBean.setCache(mockCache);// w w w .j av a 2 s. c o m factoryBean.setExports(expectedExports); factoryBean.setImports(null); factoryBean.setRegion(null); factoryBean.afterPropertiesSet(); factoryBean.destroy(); assertThat(factoryBean.getObject(), is(instanceOf(CacheSnapshotServiceAdapter.class))); verify(mockCache, times(1)).getSnapshotService(); verify(mockCacheSnapshotService, times(2)).createOptions(); verify(mockCacheSnapshotService, times(1)).save(eq(expectedExports[0].getLocation()), eq(expectedExports[0].getFormat()), eq(mockSnapshotOptionsOne)); verify(mockCacheSnapshotService, times(1)).save(eq(expectedExports[1].getLocation()), eq(expectedExports[1].getFormat()), eq(mockSnapshotOptionsTwo)); verify(mockSnapshotOptionsOne, times(1)).setFilter(eq(mockSnapshotFilterOne)); verify(mockSnapshotOptionsTwo, times(1)).setFilter(eq(mockSnapshotFilterTwo)); }
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java
@Test public void exportRegionSnapshotOnDestroy() throws Exception { Cache mockCache = mock(Cache.class, "MockCache"); Region mockRegion = mock(Region.class, "MockRegion"); RegionSnapshotService mockRegionSnapshotService = mock(RegionSnapshotService.class, "MockRegionSnapshotService"); SnapshotFilter mockSnapshotFilterOne = mock(SnapshotFilter.class, "MockSnapshotFilterOne"); SnapshotFilter mockSnapshotFilterTwo = mock(SnapshotFilter.class, "MockSnapshotFilterTwo"); SnapshotOptions mockSnapshotOptionsOne = mock(SnapshotOptions.class, "MockSnapshotOptionsOne"); SnapshotOptions mockSnapshotOptionsTwo = mock(SnapshotOptions.class, "MockSnapshotOptionsTwo"); when(mockCache.getSnapshotService()) .thenThrow(new UnsupportedOperationException("operation not supported")); when(mockRegion.getSnapshotService()).thenReturn(mockRegionSnapshotService); when(mockRegionSnapshotService.createOptions()).thenReturn(mockSnapshotOptionsOne) .thenReturn(mockSnapshotOptionsTwo); when(mockSnapshotOptionsOne.setFilter(eq(mockSnapshotFilterOne))).thenReturn(mockSnapshotOptionsOne); when(mockSnapshotOptionsTwo.setFilter(eq(mockSnapshotFilterTwo))).thenReturn(mockSnapshotOptionsTwo); SnapshotMetadata[] expectedExports = toArray(newSnapshotMetadata(mockSnapshotFilterOne), newSnapshotMetadata(mockSnapshotFilterTwo)); SnapshotServiceFactoryBean factoryBean = new SnapshotServiceFactoryBean(); factoryBean.setCache(mockCache);//from ww w.j a v a2s. co m factoryBean.setExports(expectedExports); factoryBean.setImports(null); factoryBean.setRegion(mockRegion); factoryBean.afterPropertiesSet(); factoryBean.destroy(); assertThat(factoryBean.getObject(), is(instanceOf(RegionSnapshotServiceAdapter.class))); verify(mockCache, never()).getSnapshotService(); verify(mockRegion, times(1)).getSnapshotService(); verify(mockRegionSnapshotService, times(2)).createOptions(); verify(mockRegionSnapshotService, times(1)).save(eq(expectedExports[0].getLocation()), eq(expectedExports[0].getFormat()), eq(mockSnapshotOptionsOne)); verify(mockRegionSnapshotService, times(1)).save(eq(expectedExports[1].getLocation()), eq(expectedExports[1].getFormat()), eq(mockSnapshotOptionsTwo)); verify(mockSnapshotOptionsOne, times(1)).setFilter(eq(mockSnapshotFilterOne)); verify(mockSnapshotOptionsTwo, times(1)).setFilter(eq(mockSnapshotFilterTwo)); }