This is an automated email from the ASF dual-hosted git repository. zhouxj pushed a commit to branch feature/GEODE-Test6149 in repository https://gitbox.apache.org/repos/asf/geode.git
commit 0742bae936a20d8903631b6afe60bb04dd9d9f66 Author: zhouxh <[email protected]> AuthorDate: Thu Dec 6 22:50:23 2018 -0800 Test6149 --- .../management/internal/MBeanProxyFactory.java | 8 ++++++-- .../management/internal/MBeanProxyFactoryTest.java | 24 ++++------------------ gradle/java.gradle | 2 +- 3 files changed, 11 insertions(+), 23 deletions(-) diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/MBeanProxyFactory.java b/geode-core/src/main/java/org/apache/geode/management/internal/MBeanProxyFactory.java index cbbd516..e54ce8a 100644 --- a/geode-core/src/main/java/org/apache/geode/management/internal/MBeanProxyFactory.java +++ b/geode-core/src/main/java/org/apache/geode/management/internal/MBeanProxyFactory.java @@ -166,8 +166,7 @@ public class MBeanProxyFactory { removeProxy(member, mbeanName, val); } catch (EntryNotFoundException entryNotFoundException) { // Entry has already been removed by another thread, so no need to remove it - logger.warn("Proxy for entry {} and member {} has already been removed", entry, - member.getId()); + logProxyAlreadyRemoved(member, entry); } catch (Exception e) { if (!(e.getCause() instanceof InstanceNotFoundException)) { logger.warn("Remove Proxy failed for {} due to {}", key, e.getMessage(), e); @@ -269,4 +268,9 @@ public class MBeanProxyFactory { } + void logProxyAlreadyRemoved(DistributedMember member, Entry<String, Object> entry) { + logger.warn("Proxy for entry {} and member {} has already been removed", entry, + member.getId()); + } + } diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/MBeanProxyFactoryTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/MBeanProxyFactoryTest.java index c719fbd..73fc15d 100644 --- a/geode-core/src/test/java/org/apache/geode/management/internal/MBeanProxyFactoryTest.java +++ b/geode-core/src/test/java/org/apache/geode/management/internal/MBeanProxyFactoryTest.java @@ -16,45 +16,29 @@ package org.apache.geode.management.internal; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.powermock.api.mockito.PowerMockito.mockStatic; -import static org.powermock.api.mockito.PowerMockito.when; import java.util.HashSet; import java.util.Map; import java.util.Set; -import org.apache.logging.log4j.Logger; import org.junit.Test; -import org.junit.runner.RunWith; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PowerMockIgnore; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; import org.apache.geode.cache.EntryNotFoundException; import org.apache.geode.cache.Region; import org.apache.geode.distributed.DistributedMember; -import org.apache.geode.internal.logging.LogService; -@RunWith(PowerMockRunner.class) -@PrepareForTest(LogService.class) -@PowerMockIgnore("javax.script.*") public class MBeanProxyFactoryTest { @Test public void removeAllProxiesEntryNotFoundLogged() { - mockStatic(LogService.class); - Logger mockLogger = PowerMockito.mock(Logger.class); - when(mockLogger.isDebugEnabled()).thenReturn(true); - when(LogService.getLogger()).thenReturn(mockLogger); - MBeanProxyFactory mBeanProxyFactory = - new MBeanProxyFactory(mock(MBeanJMXAdapter.class), mock(SystemManagementService.class)); + spy(new MBeanProxyFactory(mock(MBeanJMXAdapter.class), + mock(SystemManagementService.class))); Region mockRegion = mock(Region.class); Set entrySet = new HashSet<Map.Entry<String, Object>>(); @@ -68,6 +52,6 @@ public class MBeanProxyFactoryTest { // EntryNotFoundException should just result in a warning as it implies // the proxy has already been removed and the entry has already been destroyed - verify(mockLogger, times(1)).warn(anyString(), any(), any()); + verify(mBeanProxyFactory, times(1)).logProxyAlreadyRemoved(any(), any()); } } diff --git a/gradle/java.gradle b/gradle/java.gradle index c2cd072..874e577 100644 --- a/gradle/java.gradle +++ b/gradle/java.gradle @@ -33,7 +33,7 @@ subprojects { } String javaVersion = System.properties['java.version'] - if (javaVersion.startsWith("1.8.0") && javaVersion.split("_")[1].toInteger() < 121) { + if (javaVersion.startsWith("1.8.0") && javaVersion.split("-")[0].split("_")[1].toInteger() < 121) { throw new GradleException("Java version 1.8.0_121 or later required, but was " + javaVersion) }
