List of usage examples for org.springframework.data.gemfire.snapshot.event SnapshotApplicationEvent getSnapshotMetadata
public SnapshotMetadata<K, V>[] getSnapshotMetadata()
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBean.java
/** * Resolves the SnapshotMetadata used to perform the GemFire Cache or Region data snapshot import/export. * If the event contains specific SnapshotMetadata, then this is preferred over the factory's own * "import" or "export" SnapshotMetadata. * * @param event the SnapshotApplicationEvent from which to resolve the SnapshotMetadata. * @return the resolved SnapshotMetadata, either from the event or this factory's configured imports/exports. * @see SnapshotApplicationEvent#getSnapshotMetadata() * @see #getExports()/*w w w .j a va 2 s . c om*/ * @see #getImports() */ protected SnapshotMetadata<K, V>[] resolveSnapshotMetadata(SnapshotApplicationEvent<K, V> event) { SnapshotMetadata<K, V>[] eventSnapshotMetadata = event.getSnapshotMetadata(); return (!ObjectUtils.isEmpty(eventSnapshotMetadata) ? eventSnapshotMetadata : (event instanceof ExportSnapshotApplicationEvent ? getExports() : getImports())); }
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 a va 2 s .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 onApplicationEventWhenMatchUsingFactorySnapshotMetadataPerformsImport() throws Exception { SnapshotApplicationEvent mockSnapshotEvent = mock(ImportSnapshotApplicationEvent.class, "MockImportSnapshotApplicationEvent"); SnapshotMetadata factorySnapshotMetadata = newSnapshotMetadata(snapshotDat); final SnapshotServiceAdapter mockSnapshotService = mock(SnapshotServiceAdapter.class, "MockSnapshotServiceAdapter"); when(mockSnapshotEvent.isCacheSnapshotEvent()).thenReturn(true); when(mockSnapshotEvent.matches(any(Region.class))).thenReturn(false); when(mockSnapshotEvent.getSnapshotMetadata()).thenReturn(null); SnapshotServiceFactoryBean factoryBean = new SnapshotServiceFactoryBean() { @Override//from w w w . j av a2 s. c om public SnapshotServiceAdapter getObject() throws Exception { return mockSnapshotService; } }; factoryBean.setImports(toArray(factorySnapshotMetadata)); assertThat(factoryBean.getImports()[0], is(equalTo(factorySnapshotMetadata))); assertThat(factoryBean.getRegion(), is(nullValue())); factoryBean.onApplicationEvent(mockSnapshotEvent); verify(mockSnapshotEvent, times(1)).isCacheSnapshotEvent(); verify(mockSnapshotEvent, never()).matches(any(Region.class)); verify(mockSnapshotEvent, times(1)).getSnapshotMetadata(); verify(mockSnapshotService, times(1)).doImport(eq(factorySnapshotMetadata)); }
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 ww w . j av a2s . c o 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 onApplicationEventWhenNoMatchDoesNotPerformImport() throws Exception { Region mockRegion = mock(Region.class, "MockRegion"); SnapshotApplicationEvent mockSnapshotEvent = mock(ImportSnapshotApplicationEvent.class, "MockImportSnapshotApplicationEvent"); final SnapshotServiceAdapter mockSnapshotService = mock(SnapshotServiceAdapter.class, "MockSnapshotServiceAdapter"); when(mockSnapshotEvent.isCacheSnapshotEvent()).thenReturn(false); when(mockSnapshotEvent.matches(any(Region.class))).thenReturn(false); when(mockSnapshotEvent.getSnapshotMetadata()).thenReturn(null); SnapshotServiceFactoryBean factoryBean = new SnapshotServiceFactoryBean() { @Override/*www.j a v a 2 s . c o m*/ public SnapshotServiceAdapter getObject() throws Exception { return mockSnapshotService; } }; factoryBean.setImports(toArray(newSnapshotMetadata())); factoryBean.setRegion(mockRegion); assertThat(factoryBean.getImports()[0], isA(SnapshotMetadata.class)); assertThat(factoryBean.getRegion(), is(equalTo(mockRegion))); factoryBean.onApplicationEvent(mockSnapshotEvent); verify(mockSnapshotEvent, times(1)).isCacheSnapshotEvent(); verify(mockSnapshotEvent, times(1)).matches(eq(mockRegion)); verify(mockSnapshotEvent, never()).getSnapshotMetadata(); verify(mockSnapshotService, never()).doImport(any(SnapshotMetadata.class)); }
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java
@Test public void resolveSnapshotMetadataFromEvent() { SnapshotMetadata eventSnapshotMetadata = newSnapshotMetadata(snapshotDat); SnapshotMetadata factoryExportSnapshotMetadata = newSnapshotMetadata(); SnapshotMetadata factoryImportSnapshotMetadata = newSnapshotMetadata(FileSystemUtils.USER_HOME); SnapshotApplicationEvent mockSnapshotEvent = mock(SnapshotApplicationEvent.class, "MockSnapshotApplicationEvent"); when(mockSnapshotEvent.getSnapshotMetadata()).thenReturn(toArray(eventSnapshotMetadata)); factoryBean.setExports(toArray(factoryExportSnapshotMetadata)); factoryBean.setImports(toArray(factoryImportSnapshotMetadata)); assertThat(factoryBean.getExports()[0], is(equalTo(factoryExportSnapshotMetadata))); assertThat(factoryBean.getImports()[0], is(equalTo(factoryImportSnapshotMetadata))); assertThat(factoryBean.resolveSnapshotMetadata(mockSnapshotEvent)[0], is(equalTo(eventSnapshotMetadata))); verify(mockSnapshotEvent, times(1)).getSnapshotMetadata(); }
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java
@Test public void resolveExportSnapshotMetadataFromFactory() { SnapshotMetadata factoryExportSnapshotMetadata = newSnapshotMetadata(); SnapshotMetadata factoryImportSnapshotMetadata = newSnapshotMetadata(FileSystemUtils.USER_HOME); SnapshotApplicationEvent mockSnapshotEvent = mock(ExportSnapshotApplicationEvent.class, "MockExportSnapshotApplicationEvent"); when(mockSnapshotEvent.getSnapshotMetadata()).thenReturn(null); factoryBean.setExports(toArray(factoryExportSnapshotMetadata)); factoryBean.setImports(toArray(factoryImportSnapshotMetadata)); assertThat(factoryBean.getExports()[0], is(equalTo(factoryExportSnapshotMetadata))); assertThat(factoryBean.getImports()[0], is(equalTo(factoryImportSnapshotMetadata))); assertThat(factoryBean.resolveSnapshotMetadata(mockSnapshotEvent)[0], is(equalTo(factoryExportSnapshotMetadata))); verify(mockSnapshotEvent, times(1)).getSnapshotMetadata(); }
From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java
@Test public void resolveImportSnapshotMetadataFromFactory() { SnapshotMetadata factoryExportSnapshotMetadata = newSnapshotMetadata(); SnapshotMetadata factoryImportSnapshotMetadata = newSnapshotMetadata(FileSystemUtils.USER_HOME); SnapshotApplicationEvent mockSnapshotEvent = mock(ImportSnapshotApplicationEvent.class, "MockImportSnapshotApplicationEvent"); when(mockSnapshotEvent.getSnapshotMetadata()).thenReturn(toArray()); factoryBean.setExports(toArray(factoryExportSnapshotMetadata)); factoryBean.setImports(toArray(factoryImportSnapshotMetadata)); assertThat(factoryBean.getExports()[0], is(equalTo(factoryExportSnapshotMetadata))); assertThat(factoryBean.getImports()[0], is(equalTo(factoryImportSnapshotMetadata))); assertThat(factoryBean.resolveSnapshotMetadata(mockSnapshotEvent)[0], is(equalTo(factoryImportSnapshotMetadata))); verify(mockSnapshotEvent, times(1)).getSnapshotMetadata(); }