Example usage for org.springframework.data.gemfire.snapshot.event SnapshotApplicationEvent matches

List of usage examples for org.springframework.data.gemfire.snapshot.event SnapshotApplicationEvent matches

Introduction

In this page you can find the example usage for org.springframework.data.gemfire.snapshot.event SnapshotApplicationEvent matches.

Prototype

public boolean matches(String regionPath) 

Source Link

Document

Determines whether this event has been targeted for a Region with the given absolute pathname.

Usage

From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBean.java

/**
 * Determines whether the details of the given SnapshotApplicationEvent match the criteria of this factory
 * to trigger a GemFire Cache or Region data export.
 *
 * @param event the SnapshotApplicationEvent containing details of the application requested data export.
 * @return a boolean value indicating whether the application requested snapshot event details match
 * the criteria required by this factory to trigger a GemFire Cache or Region data export.
 * @see SnapshotApplicationEvent// w w  w  .ja va  2  s .co  m
 */
protected boolean isMatch(SnapshotApplicationEvent event) {
    return (event.isCacheSnapshotEvent() || event.matches(getRegion()));
}

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  v a  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//  w ww .j  a va2s .c o m
        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/*  w w w.  j  a  va  2s .  c  om*/
        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//from   w ww  . j  a v a  2s . 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 withCacheBasedSnapshotServiceOnRegionSnapshotEventIsNotAMatch() {
    SnapshotApplicationEvent mockSnapshotEvent = mock(SnapshotApplicationEvent.class,
            "MockSnapshotApplicationEvent");

    when(mockSnapshotEvent.isCacheSnapshotEvent()).thenReturn(false);
    when(mockSnapshotEvent.matches(any(Region.class))).thenReturn(false);

    assertThat(factoryBean.getRegion(), is(nullValue()));
    assertThat(factoryBean.isMatch(mockSnapshotEvent), is(false));

    verify(mockSnapshotEvent, times(1)).isCacheSnapshotEvent();
    verify(mockSnapshotEvent, times(1)).matches(isNull(Region.class));
}

From source file:org.springframework.data.gemfire.snapshot.SnapshotServiceFactoryBeanTest.java

@Test
public void withRegionBasedSnapshotServiceOnRegionSnapshotEventIsMatch() {
    Region mockRegion = mock(Region.class, "MockRegion");

    SnapshotApplicationEvent mockSnapshotEvent = mock(SnapshotApplicationEvent.class,
            "MockSnapshotApplicationEvent");

    when(mockSnapshotEvent.isCacheSnapshotEvent()).thenReturn(false);
    when(mockSnapshotEvent.matches(eq(mockRegion))).thenReturn(true);

    factoryBean.setRegion(mockRegion);/*w  w  w .ja va 2  s  .  co m*/

    assertThat(factoryBean.getRegion(), is(sameInstance(mockRegion)));
    assertThat(factoryBean.isMatch(mockSnapshotEvent), is(true));

    verify(mockSnapshotEvent, times(1)).isCacheSnapshotEvent();
    verify(mockSnapshotEvent, times(1)).matches(eq(mockRegion));
}