You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by je...@apache.org on 2019/01/23 00:31:29 UTC
[geode] branch develop updated: GEODE-6280: Create new public
module for the Management API (#3083)
This is an automated email from the ASF dual-hosted git repository.
jensdeppe pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/develop by this push:
new 9bb8579 GEODE-6280: Create new public module for the Management API (#3083)
9bb8579 is described below
commit 9bb8579df6f9669fe45fce96b6c6b617598f141d
Author: Jens Deppe <jd...@pivotal.io>
AuthorDate: Tue Jan 22 16:31:20 2019 -0800
GEODE-6280: Create new public module for the Management API (#3083)
- This moves the classes under `org.apache.geode.cache.configuration` package
into a public module: `geode-managament`. The intent is that this module
will have no dependencies to `geode-core` but will allow consumers to perform
administration tasks (creating regions, etc.).
- `geode-core` will now depend on both `geode-management` as well as
`geode-common` (transitively). Suggestions on how to improve these new
dependencies are welcome.
Signed-off-by: Peter Tran <pt...@pivotal.io>
Signed-off-by: Aditya Anchuri <aa...@pivotal.io>
---
.../release/session/bin/modify_war | 4 +
geode-assembly/build.gradle | 1 +
.../apache/geode/session/tests/TomcatInstall.java | 5 +-
.../integrationTest/resources/assembly_content.txt | 1 +
.../resources/dependency_classpath.txt | 107 ++++----
geode-common/build.gradle | 1 -
.../org/apache/geode/cache/ExpirationAction.java | 0
.../java/org/apache/geode/lang/Identifiable.java | 0
geode-core/build.gradle | 3 +-
.../java/org/apache/geode/cache/Declarable.java | 1 +
.../cli/functions/RegionAlterFunction.java | 9 +-
.../domain/DeclarableTypeInstantiator.java | 72 ++++++
.../internal/cli/domain/ClassNameTest.java | 8 +-
.../cli/functions/RegionAlterFunctionTest.java | 30 ++-
.../domain/DeclarableTypeInstantiatorTest.java | 88 +++++++
geode-core/src/test/resources/expected-pom.xml | 6 +
{geode-common => geode-management}/build.gradle | 16 +-
.../geode/cache/configuration/CacheConfig.java | 40 +--
.../geode/cache/configuration/CacheElement.java | 0
.../configuration/CacheTransactionManagerType.java | 0
.../geode/cache/configuration/ClassNameType.java | 0
.../geode/cache/configuration/DeclarableType.java | 35 +--
.../geode/cache/configuration/DiskDirType.java | 0
.../geode/cache/configuration/DiskDirsType.java | 0
.../geode/cache/configuration/DiskStoreType.java | 0
.../configuration/DynamicRegionFactoryType.java | 0
.../configuration/EnumActionDestroyOverflow.java | 0
.../cache/configuration/EnumReadableWritable.java | 0
.../cache/configuration/FunctionServiceType.java | 0
.../cache/configuration/JndiBindingsType.java | 12 +-
.../geode/cache/configuration/ObjectType.java | 24 +-
.../geode/cache/configuration/ParameterType.java | 5 +
.../apache/geode/cache/configuration/PdxType.java | 0
.../apache/geode/cache/configuration/PoolType.java | 12 +-
.../configuration/RegionAttributesDataPolicy.java | 0
.../RegionAttributesIndexUpdateType.java | 0
.../configuration/RegionAttributesMirrorType.java | 0
.../cache/configuration/RegionAttributesScope.java | 0
.../cache/configuration/RegionAttributesType.java | 12 +-
.../geode/cache/configuration/RegionConfig.java | 10 +-
.../cache/configuration/ResourceManagerType.java | 0
.../SerializationRegistrationType.java | 12 +-
.../geode/cache/configuration/ServerType.java | 0
.../geode/cache/configuration/XSDRootElement.java | 0
.../geode/cache/configuration/package-info.java | 0
.../geode/internal/config/VersionAdapter.java | 0
.../internal/api/ClusterManagementResult.java | 0
.../internal/api/ClusterManagementService.java | 0
.../geode/management/internal/api/Status.java | 2 -
.../management/internal/cli/domain/ClassName.java | 19 --
.../src/test/resources/expected-pom.xml | 275 +--------------------
gradle/geode-dependency-management.gradle | 2 +-
settings.gradle | 1 +
53 files changed, 352 insertions(+), 461 deletions(-)
diff --git a/extensions/geode-modules-assembly/release/session/bin/modify_war b/extensions/geode-modules-assembly/release/session/bin/modify_war
index 978e5cf..aa7f71a 100755
--- a/extensions/geode-modules-assembly/release/session/bin/modify_war
+++ b/extensions/geode-modules-assembly/release/session/bin/modify_war
@@ -88,6 +88,8 @@ WHERE <args>:
geode-modules-session-internal.jar
geode-core.jar
geode-json.jar
+ geode-common.jar
+ geode-management.jar
antlr.jar
log4j-core.jar
log4j-api.jar
@@ -261,6 +263,8 @@ SESSION_JAR="${LIB_DIR}/geode-modules-session-${VERSION}.jar"
declare -a OTHER_JARS
OTHER_JARS=(${GEODE}/lib/geode-core-${VERSION}.jar \
${GEODE}/lib/geode-json-${VERSION}.jar \
+ ${GEODE}/lib/geode-common-${VERSION}.jar \
+ ${GEODE}/lib/geode-management-${VERSION}.jar \
${GEODE}/lib/antlr-@ANTLR_VERSION@.jar \
${GEODE}/lib/log4j-core-@LOG4J_VERSION@.jar \
${GEODE}/lib/log4j-api-@LOG4J_VERSION@.jar \
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 2feef3b..78f43c5 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -144,6 +144,7 @@ dependencies {
archives project(':geode-web')
archives project(':geode-web-api')
archives project(':geode-web-management')
+ archives project(':geode-management')
archives project(':geode-wan')
archives project(':geode-cq')
archives project(':geode-rebalancer')
diff --git a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java
index 6e56843..8d5da4c 100644
--- a/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java
+++ b/geode-assembly/geode-assembly-test/src/main/java/org/apache/geode/session/tests/TomcatInstall.java
@@ -90,8 +90,9 @@ public class TomcatInstall extends ContainerInstall {
}
private static final String[] tomcatRequiredJars =
- {"antlr", "commons-io", "commons-lang", "commons-validator", "fastutil", "geode-core",
- "javax.transaction-api", "jgroups", "log4j-api", "log4j-core", "log4j-jul", "shiro-core"};
+ {"antlr", "commons-io", "commons-lang", "commons-validator", "fastutil", "geode-common",
+ "geode-core", "geode-management", "javax.transaction-api", "jgroups", "log4j-api",
+ "log4j-core", "log4j-jul", "shiro-core"};
private final TomcatVersion version;
diff --git a/geode-assembly/src/integrationTest/resources/assembly_content.txt b/geode-assembly/src/integrationTest/resources/assembly_content.txt
index 307a2ba..53ae678 100644
--- a/geode-assembly/src/integrationTest/resources/assembly_content.txt
+++ b/geode-assembly/src/integrationTest/resources/assembly_content.txt
@@ -885,6 +885,7 @@ lib/geode-dependencies.jar
lib/geode-jca-0.0.0.rar
lib/geode-json-0.0.0.jar
lib/geode-lucene-0.0.0.jar
+lib/geode-management-0.0.0.jar
lib/geode-old-client-support-0.0.0.jar
lib/geode-protobuf-0.0.0.jar
lib/geode-protobuf-messages-0.0.0.jar
diff --git a/geode-assembly/src/integrationTest/resources/dependency_classpath.txt b/geode-assembly/src/integrationTest/resources/dependency_classpath.txt
index 89d1977..6f374e9 100644
--- a/geode-assembly/src/integrationTest/resources/dependency_classpath.txt
+++ b/geode-assembly/src/integrationTest/resources/dependency_classpath.txt
@@ -1,75 +1,76 @@
+HikariCP-3.2.0.jar
+antlr-2.7.7.jar
+classgraph-4.0.6.jar
+commons-beanutils-1.9.3.jar
+commons-codec-1.10.jar
+commons-collections-3.2.2.jar
+commons-io-2.6.jar
+commons-lang3-3.8.1.jar
+commons-logging-1.2.jar
+commons-math3-3.2.jar
+commons-validator-1.6.jar
+fastutil-8.2.2.jar
+geo-0.7.1.jar
geode-common-0.0.0.jar
-geode-json-0.0.0.jar
-geode-core-0.0.0.jar
geode-connectors-0.0.0.jar
+geode-core-0.0.0.jar
+geode-cq-0.0.0.jar
+geode-json-0.0.0.jar
geode-lucene-0.0.0.jar
+geode-management-0.0.0.jar
geode-old-client-support-0.0.0.jar
geode-protobuf-0.0.0.jar
geode-protobuf-messages-0.0.0.jar
-geode-wan-0.0.0.jar
-geode-cq-0.0.0.jar
geode-rebalancer-0.0.0.jar
-antlr-2.7.7.jar
-jgroups-3.6.14.Final.jar
-jackson-databind-2.9.7.jar
+geode-wan-0.0.0.jar
+grumpy-core-0.2.2.jar
+istack-commons-runtime-2.2.jar
jackson-annotations-2.9.7.jar
-spring-shell-1.2.0.RELEASE.jar
-commons-io-2.6.jar
-commons-validator-1.6.jar
+jackson-core-2.9.7.jar
+jackson-databind-2.9.7.jar
+jansi-1.17.1.jar
javax.activation-1.2.0.jar
+javax.activation-api-1.2.0.jar
+javax.resource-api-1.7.1.jar
+javax.servlet-api-3.1.0.jar
+javax.transaction-api-1.3.jar
jaxb-api-2.3.1.jar
jaxb-impl-2.3.1.jar
-commons-lang3-3.8.1.jar
-netty-all-4.1.31.Final.jar
-fastutil-8.2.2.jar
-javax.resource-api-1.7.1.jar
+jetty-http-9.4.12.v20180830.jar
+jetty-io-9.4.12.v20180830.jar
+jetty-security-9.4.12.v20180830.jar
+jetty-server-9.4.12.v20180830.jar
+jetty-servlet-9.4.12.v20180830.jar
+jetty-util-9.4.12.v20180830.jar
+jetty-webapp-9.4.12.v20180830.jar
+jetty-xml-9.4.12.v20180830.jar
+jgroups-3.6.14.Final.jar
+jline-2.12.jar
jna-4.1.0.jar
jopt-simple-5.0.4.jar
-log4j-slf4j-impl-2.11.1.jar
+log4j-api-2.11.1.jar
log4j-core-2.11.1.jar
log4j-jcl-2.11.1.jar
log4j-jul-2.11.1.jar
-log4j-api-2.11.1.jar
-geo-0.7.1.jar
-jetty-webapp-9.4.12.v20180830.jar
-spring-core-4.3.20.RELEASE.jar
-snappy-0.4.jar
-shiro-core-1.4.0.jar
-classgraph-4.0.6.jar
+log4j-slf4j-impl-2.11.1.jar
+lucene-analyzers-common-6.6.2.jar
+lucene-analyzers-phonetic-6.6.2.jar
+lucene-core-6.6.2.jar
+lucene-queries-6.6.2.jar
+lucene-queryparser-6.6.2.jar
+netty-all-4.1.31.Final.jar
+protobuf-java-3.6.1.jar
rmiio-2.1.2.jar
-istack-commons-runtime-2.2.jar
-jansi-1.17.1.jar
shiro-cache-1.4.0.jar
-shiro-crypto-hash-1.4.0.jar
-shiro-crypto-cipher-1.4.0.jar
-shiro-config-ogdl-1.4.0.jar
shiro-config-core-1.4.0.jar
-shiro-event-1.4.0.jar
+shiro-config-ogdl-1.4.0.jar
+shiro-core-1.4.0.jar
+shiro-crypto-cipher-1.4.0.jar
shiro-crypto-core-1.4.0.jar
+shiro-crypto-hash-1.4.0.jar
+shiro-event-1.4.0.jar
shiro-lang-1.4.0.jar
slf4j-api-1.7.25.jar
-jackson-core-2.9.7.jar
-commons-beanutils-1.9.3.jar
-commons-logging-1.2.jar
-commons-collections-3.2.2.jar
-javax.activation-api-1.2.0.jar
-javax.transaction-api-1.3.jar
-grumpy-core-0.2.2.jar
-jetty-xml-9.4.12.v20180830.jar
-jetty-servlet-9.4.12.v20180830.jar
-jline-2.12.jar
-commons-math3-3.2.jar
-jetty-security-9.4.12.v20180830.jar
-jetty-server-9.4.12.v20180830.jar
-jetty-http-9.4.12.v20180830.jar
-jetty-io-9.4.12.v20180830.jar
-jetty-util-9.4.12.v20180830.jar
-javax.servlet-api-3.1.0.jar
-HikariCP-3.2.0.jar
-lucene-analyzers-phonetic-6.6.2.jar
-lucene-analyzers-common-6.6.2.jar
-lucene-queryparser-6.6.2.jar
-lucene-core-6.6.2.jar
-lucene-queries-6.6.2.jar
-commons-codec-1.10.jar
-protobuf-java-3.6.1.jar
+snappy-0.4.jar
+spring-core-4.3.20.RELEASE.jar
+spring-shell-1.2.0.RELEASE.jar
diff --git a/geode-common/build.gradle b/geode-common/build.gradle
index 50fbd06..92f01b1 100755
--- a/geode-common/build.gradle
+++ b/geode-common/build.gradle
@@ -18,7 +18,6 @@
apply from: "${project.projectDir}/../gradle/geode-dependency-management.gradle"
apply from: "${project.projectDir}/../gradle/publish.gradle"
-
dependencies {
testCompile('junit:junit')
testCompile('org.assertj:assertj-core')
diff --git a/geode-core/src/main/java/org/apache/geode/cache/ExpirationAction.java b/geode-common/src/main/java/org/apache/geode/cache/ExpirationAction.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/ExpirationAction.java
rename to geode-common/src/main/java/org/apache/geode/cache/ExpirationAction.java
diff --git a/geode-core/src/main/java/org/apache/geode/lang/Identifiable.java b/geode-common/src/main/java/org/apache/geode/lang/Identifiable.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/lang/Identifiable.java
rename to geode-common/src/main/java/org/apache/geode/lang/Identifiable.java
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 3d1470d..a9d99b8 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -263,11 +263,10 @@ dependencies {
compile(project(':geode-common'))
compile(project(':geode-json'))
-
+ compile(project(':geode-management'))
jcaAnnotationProcessor 'org.apache.logging.log4j:log4j-core'
-
jcaCompile(sourceSets.main.output)
jmhCompile('org.apache.logging.log4j:log4j-core')
diff --git a/geode-core/src/main/java/org/apache/geode/cache/Declarable.java b/geode-core/src/main/java/org/apache/geode/cache/Declarable.java
index c4822c6..3c22054 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/Declarable.java
+++ b/geode-core/src/main/java/org/apache/geode/cache/Declarable.java
@@ -16,6 +16,7 @@ package org.apache.geode.cache;
import java.util.Properties;
+
/**
* An object that can be described in a declarative caching XML file.
*
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java
index e8e94bb..bd148d9 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java
@@ -38,6 +38,7 @@ import org.apache.geode.internal.cache.partitioned.PRLocallyDestroyedException;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.management.cli.CliFunction;
import org.apache.geode.management.cli.Result;
+import org.apache.geode.management.internal.configuration.domain.DeclarableTypeInstantiator;
/**
* Function used by the 'alter region' gfsh command to alter a region on each member.
@@ -188,7 +189,7 @@ public class RegionAlterFunction extends CliFunction<RegionConfig> {
// Add new cache listeners
for (DeclarableType newCacheListener : newCacheListeners) {
if (!newCacheListener.equals(DeclarableType.EMPTY)) {
- mutator.addCacheListener(newCacheListener.newInstance(cache));
+ mutator.addCacheListener(DeclarableTypeInstantiator.newInstance(newCacheListener, cache));
}
}
if (logger.isDebugEnabled()) {
@@ -201,7 +202,7 @@ public class RegionAlterFunction extends CliFunction<RegionConfig> {
if (cacheLoader.equals(DeclarableType.EMPTY)) {
mutator.setCacheLoader(null);
} else {
- mutator.setCacheLoader(cacheLoader.newInstance(cache));
+ mutator.setCacheLoader(DeclarableTypeInstantiator.newInstance(cacheLoader, cache));
}
if (logger.isDebugEnabled()) {
@@ -214,7 +215,7 @@ public class RegionAlterFunction extends CliFunction<RegionConfig> {
if (cacheWriter.equals(DeclarableType.EMPTY)) {
mutator.setCacheWriter(null);
} else {
- mutator.setCacheWriter(cacheWriter.newInstance(cache));
+ mutator.setCacheWriter(DeclarableTypeInstantiator.newInstance(cacheWriter, cache));
}
if (logger.isDebugEnabled()) {
@@ -254,7 +255,7 @@ public class RegionAlterFunction extends CliFunction<RegionConfig> {
if (newCustomExpiry.equals(DeclarableType.EMPTY)) {
mutator2.accept(null);
} else {
- mutator2.accept(newCustomExpiry.newInstance(cache));
+ mutator2.accept(DeclarableTypeInstantiator.newInstance(newCustomExpiry, cache));
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/configuration/domain/DeclarableTypeInstantiator.java b/geode-core/src/main/java/org/apache/geode/management/internal/configuration/domain/DeclarableTypeInstantiator.java
new file mode 100644
index 0000000..3921dc8
--- /dev/null
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/configuration/domain/DeclarableTypeInstantiator.java
@@ -0,0 +1,72 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.geode.management.internal.configuration.domain;
+
+import java.util.Properties;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.Declarable;
+import org.apache.geode.cache.configuration.DeclarableType;
+import org.apache.geode.cache.configuration.ObjectType;
+import org.apache.geode.cache.configuration.ParameterType;
+import org.apache.geode.internal.ClassPathLoader;
+import org.apache.geode.management.internal.cli.domain.ClassName;
+
+public abstract class DeclarableTypeInstantiator {
+
+ public static <T extends Declarable> T newInstance(DeclarableType declarableType, Cache cache) {
+ try {
+ Class<T> loadedClass =
+ (Class<T>) ClassPathLoader.getLatest().forName(declarableType.getClassName());
+ T declarable = loadedClass.newInstance();
+ Properties initProperties = new Properties();
+ for (ParameterType parameter : declarableType.getParameters()) {
+ initProperties.put(parameter.getName(), newInstance(parameter, cache));
+ }
+ declarable.initialize(cache, initProperties);
+ return declarable;
+ } catch (Exception e) {
+ throw new RuntimeException(
+ "Error instantiating class: <" + declarableType.getClassName() + ">", e);
+ }
+ }
+
+ public static <T> T newInstance(ObjectType objectType, Cache cache) {
+ if (objectType.getString() != null) {
+ return (T) objectType.getString();
+ }
+
+ if (objectType.getDeclarable() != null) {
+ return newInstance(objectType.getDeclarable(), cache);
+ }
+
+ return null;
+ }
+
+ public static <V> V newInstance(ClassName<?> type, Cache cache) {
+ try {
+ Class<V> loadedClass = (Class<V>) ClassPathLoader.getLatest().forName(type.getClassName());
+ V object = loadedClass.newInstance();
+ if (object instanceof Declarable) {
+ Declarable declarable = (Declarable) object;
+ declarable.initialize(cache, type.getInitProperties());
+ declarable.init(type.getInitProperties()); // for backwards compatibility
+ }
+ return object;
+ } catch (Exception e) {
+ throw new RuntimeException("Error instantiating class: <" + type.getClassName() + ">", e);
+ }
+ }
+}
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/domain/ClassNameTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/domain/ClassNameTest.java
index 9b985fc..9b533fc 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/domain/ClassNameTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/domain/ClassNameTest.java
@@ -22,6 +22,7 @@ import java.util.Properties;
import org.junit.Test;
+import org.apache.geode.management.internal.configuration.domain.DeclarableTypeInstantiator;
public class ClassNameTest {
@@ -44,7 +45,8 @@ public class ClassNameTest {
@Test
public void emptyCanNotInstantiate() {
- assertThatThrownBy(() -> ClassName.EMPTY.newInstance(null)).isInstanceOf(RuntimeException.class)
+ assertThatThrownBy(() -> DeclarableTypeInstantiator.newInstance(ClassName.EMPTY, null))
+ .isInstanceOf(RuntimeException.class)
.hasMessageContaining("Error instantiating class");
}
@@ -100,7 +102,7 @@ public class ClassNameTest {
@Test
public void getInstance() {
ClassName<String> klass = new ClassName("java.lang.String");
- String s = klass.newInstance(null);
+ String s = DeclarableTypeInstantiator.newInstance(klass, null);
assertThat(s.toString()).isEqualTo("");
}
@@ -108,7 +110,7 @@ public class ClassNameTest {
public void getInstanceWithProps() {
String json = "{\"k\":\"v\"}";
ClassName<MyCacheWriter> cacheWriter = new ClassName<>(MyCacheWriter.class.getName(), json);
- MyCacheWriter obj = cacheWriter.newInstance(null);
+ MyCacheWriter obj = DeclarableTypeInstantiator.newInstance(cacheWriter, null);
assertThat(obj.getProperties()).containsEntry("k", "v").containsOnlyKeys("k");
}
}
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunctionTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunctionTest.java
index 8f41f60..4a1492b 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunctionTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunctionTest.java
@@ -36,15 +36,18 @@ import org.mockito.ArgumentCaptor;
import org.apache.geode.cache.AttributesMutator;
import org.apache.geode.cache.CacheListener;
-import org.apache.geode.cache.CacheWriter;
import org.apache.geode.cache.CustomExpiry;
+import org.apache.geode.cache.Declarable;
import org.apache.geode.cache.EvictionAttributesMutator;
import org.apache.geode.cache.ExpirationAction;
import org.apache.geode.cache.ExpirationAttributes;
+import org.apache.geode.cache.Region;
import org.apache.geode.cache.configuration.DeclarableType;
import org.apache.geode.cache.configuration.RegionAttributesType;
import org.apache.geode.cache.configuration.RegionConfig;
import org.apache.geode.cache.execute.FunctionContext;
+import org.apache.geode.cache.util.CacheListenerAdapter;
+import org.apache.geode.cache.util.CacheWriterAdapter;
import org.apache.geode.internal.cache.AbstractRegion;
import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.cache.InternalCacheForClientAccess;
@@ -61,6 +64,19 @@ public class RegionAlterFunctionTest {
private EvictionAttributesMutator evictionMutator;
private AbstractRegion region;
+ public static class MyCustomExpiry implements CustomExpiry, Declarable {
+ @Override
+ public ExpirationAttributes getExpiry(Region.Entry entry) {
+ return null;
+ }
+ }
+
+ public static class MyCacheListener extends CacheListenerAdapter {
+ }
+
+ public static class MyCacheWriter extends CacheWriterAdapter {
+ }
+
@Before
public void setUp() throws Exception {
function = spy(RegionAlterFunction.class);
@@ -179,7 +195,7 @@ public class RegionAlterFunctionTest {
new RegionAttributesType.ExpirationAttributesType();
regionAttributes.setEntryIdleTime(expiration);
DeclarableType mockExpiry = mock(DeclarableType.class);
- when(mockExpiry.newInstance(any())).thenReturn(mock(CustomExpiry.class));
+ when(mockExpiry.getClassName()).thenReturn(MyCustomExpiry.class.getName());
expiration.setCustomExpiry(mockExpiry);
function.alterRegion(cache, config);
@@ -232,16 +248,18 @@ public class RegionAlterFunctionTest {
public void updateWithCacheListeners() {
// suppose region has one cacheListener, and we want to replace the oldOne one with the new one
CacheListener oldOne = mock(CacheListener.class);
- CacheListener newOne = mock(CacheListener.class);
when(region.getCacheListeners()).thenReturn(new CacheListener[] {oldOne});
DeclarableType newCacheListenerType = mock(DeclarableType.class);
- when(newCacheListenerType.newInstance(any())).thenReturn(newOne);
+ when(newCacheListenerType.getClassName()).thenReturn(MyCacheListener.class.getName());
regionAttributes.getCacheListeners().add(newCacheListenerType);
+ ArgumentCaptor<CacheListener> argument = ArgumentCaptor.forClass(CacheListener.class);
+
function.alterRegion(cache, config);
verify(mutator).removeCacheListener(oldOne);
- verify(mutator).addCacheListener(newOne);
+ verify(mutator).addCacheListener(argument.capture());
+ assertThat(argument.getValue()).isInstanceOf(MyCacheListener.class);
}
@Test
@@ -259,7 +277,7 @@ public class RegionAlterFunctionTest {
@Test
public void updateWithCacheWriter() {
DeclarableType newCacheWriterDeclarable = mock(DeclarableType.class);
- when(newCacheWriterDeclarable.newInstance(any())).thenReturn(mock(CacheWriter.class));
+ when(newCacheWriterDeclarable.getClassName()).thenReturn(MyCacheWriter.class.getName());
regionAttributes.setCacheWriter(newCacheWriterDeclarable);
function.alterRegion(cache, config);
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/configuration/domain/DeclarableTypeInstantiatorTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/configuration/domain/DeclarableTypeInstantiatorTest.java
new file mode 100644
index 0000000..0c9e1ca
--- /dev/null
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/configuration/domain/DeclarableTypeInstantiatorTest.java
@@ -0,0 +1,88 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package org.apache.geode.management.internal.configuration.domain;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.Mockito.mock;
+
+import java.util.Properties;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.Declarable;
+import org.apache.geode.cache.configuration.DeclarableType;
+import org.apache.geode.cache.configuration.ParameterType;
+
+public class DeclarableTypeInstantiatorTest {
+
+ private Cache cache;
+
+ public static class MyDeclarable implements Declarable {
+ Properties props;
+ Cache cache;
+
+ @Override
+ public void init(Properties props) {
+ this.props = props;
+ }
+
+ @Override
+ public void initialize(Cache cache, Properties props) {
+ init(props);
+ this.cache = cache;
+ }
+ }
+
+ public static class MyOuterDeclarable extends MyDeclarable {
+ }
+
+ @Before
+ public void setup() {
+ cache = mock(Cache.class);
+ }
+
+ @Test
+ public void createDeclarableInstanceFromDeclarableType() {
+ DeclarableType declarableType = new DeclarableType(MyDeclarable.class.getName(),
+ "{\"value1\":5,\"value2\":\"some string\"}");
+
+ MyDeclarable result = DeclarableTypeInstantiator.newInstance(declarableType, cache);
+ assertThat(result).isNotNull().isInstanceOf(MyDeclarable.class);
+
+ assertThat(result.props).isNotNull();
+ assertThat(result.props.getProperty("value1")).isEqualTo("5");
+ assertThat(result.props.getProperty("value2")).isEqualTo("some string");
+ }
+
+ @Test
+ public void createDeclarableInstancedFromNestedDeclarableType() {
+ DeclarableType declarableType = new DeclarableType(MyDeclarable.class.getName(),
+ "{\"value1\":5,\"value2\":\"some string\"}");
+ ParameterType parameterType = new ParameterType("inner-prop", declarableType);
+
+ DeclarableType outerDeclarable = new DeclarableType(MyOuterDeclarable.class.getName());
+ outerDeclarable.getParameters().add(parameterType);
+
+ MyOuterDeclarable result = DeclarableTypeInstantiator.newInstance(outerDeclarable, cache);
+ assertThat(result.props).isNotNull();
+ MyDeclarable innerDeclarable = (MyDeclarable) result.props.get("inner-prop");
+
+ assertThat(innerDeclarable.props.getProperty("value1")).isEqualTo("5");
+ assertThat(innerDeclarable.props.getProperty("value2")).isEqualTo("some string");
+ }
+}
diff --git a/geode-core/src/test/resources/expected-pom.xml b/geode-core/src/test/resources/expected-pom.xml
index f88ee96..89ce669 100644
--- a/geode-core/src/test/resources/expected-pom.xml
+++ b/geode-core/src/test/resources/expected-pom.xml
@@ -277,6 +277,12 @@
<scope>compile</scope>
</dependency>
<dependency>
+ <groupId>org.apache.geode</groupId>
+ <artifactId>geode-management</artifactId>
+ <version>1.9.0-SNAPSHOT</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
<groupId>org.fusesource.jansi</groupId>
<artifactId>jansi</artifactId>
<scope>runtime</scope>
diff --git a/geode-common/build.gradle b/geode-management/build.gradle
similarity index 69%
copy from geode-common/build.gradle
copy to geode-management/build.gradle
index 50fbd06..d89f506 100755
--- a/geode-common/build.gradle
+++ b/geode-management/build.gradle
@@ -17,9 +17,19 @@
apply from: "${project.projectDir}/../gradle/geode-dependency-management.gradle"
apply from: "${project.projectDir}/../gradle/publish.gradle"
-
+//versionManagement.applySpringDependencyManagement = false
dependencies {
- testCompile('junit:junit')
- testCompile('org.assertj:assertj-core')
+ compile('org.apache.commons:commons-lang3')
+ compile('com.fasterxml.jackson.core:jackson-databind')
+ compile('com.fasterxml.jackson.core:jackson-core')
+ compile('com.fasterxml.jackson.core:jackson-annotations')
+
+ compileOnly(project(':geode-common')) {
+ exclude module: 'junit'
+ }
+
+ testCompile(project(':geode-junit')) {
+ exclude module: 'geode-core'
+ }
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java
similarity index 98%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java
index 6653593..de48201 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java
@@ -36,10 +36,8 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.w3c.dom.Element;
import org.apache.geode.annotations.Experimental;
-import org.apache.geode.cache.Region;
import org.apache.geode.internal.config.VersionAdapter;
-
/**
* <p>
* Java class for anonymous complex type.
@@ -278,18 +276,18 @@ public class CacheConfig {
@XmlElement(name = "dynamic-region-factory", namespace = "http://geode.apache.org/schema/cache")
protected DynamicRegionFactoryType dynamicRegionFactory;
@XmlElement(name = "gateway-hub", namespace = "http://geode.apache.org/schema/cache")
- protected List<CacheConfig.GatewayHub> gatewayHubs;
+ protected List<GatewayHub> gatewayHubs;
@XmlElement(name = "gateway-sender", namespace = "http://geode.apache.org/schema/cache")
- protected List<CacheConfig.GatewaySender> gatewaySenders;
+ protected List<GatewaySender> gatewaySenders;
@XmlElement(name = "gateway-receiver", namespace = "http://geode.apache.org/schema/cache")
protected CacheConfig.GatewayReceiver gatewayReceiver;
@XmlElement(name = "gateway-conflict-resolver",
namespace = "http://geode.apache.org/schema/cache")
protected DeclarableType gatewayConflictResolver;
@XmlElement(name = "async-event-queue", namespace = "http://geode.apache.org/schema/cache")
- protected List<CacheConfig.AsyncEventQueue> asyncEventQueues;
+ protected List<AsyncEventQueue> asyncEventQueues;
@XmlElement(name = "cache-server", namespace = "http://geode.apache.org/schema/cache")
- protected List<CacheConfig.CacheServer> cacheServers;
+ protected List<CacheServer> cacheServers;
@XmlElement(name = "pool", namespace = "http://geode.apache.org/schema/cache")
protected List<PoolType> pools;
@XmlElement(name = "disk-store", namespace = "http://geode.apache.org/schema/cache")
@@ -331,6 +329,8 @@ public class CacheConfig {
@XmlJavaTypeAdapter(VersionAdapter.class)
protected String version;
+ public static final String SEPARATOR = "/";
+
public CacheConfig() {}
public CacheConfig(String version) {
@@ -405,9 +405,9 @@ public class CacheConfig {
*
*
*/
- public List<CacheConfig.GatewayHub> getGatewayHubs() {
+ public List<GatewayHub> getGatewayHubs() {
if (gatewayHubs == null) {
- gatewayHubs = new ArrayList<CacheConfig.GatewayHub>();
+ gatewayHubs = new ArrayList<GatewayHub>();
}
return this.gatewayHubs;
}
@@ -435,7 +435,7 @@ public class CacheConfig {
*
*
*/
- public List<CacheConfig.GatewaySender> getGatewaySenders() {
+ public List<GatewaySender> getGatewaySenders() {
if (gatewaySenders == null) {
gatewaySenders = new ArrayList<>();
}
@@ -509,9 +509,9 @@ public class CacheConfig {
*
*
*/
- public List<CacheConfig.AsyncEventQueue> getAsyncEventQueues() {
+ public List<AsyncEventQueue> getAsyncEventQueues() {
if (asyncEventQueues == null) {
- asyncEventQueues = new ArrayList<CacheConfig.AsyncEventQueue>();
+ asyncEventQueues = new ArrayList<AsyncEventQueue>();
}
return this.asyncEventQueues;
}
@@ -539,9 +539,9 @@ public class CacheConfig {
*
*
*/
- public List<CacheConfig.CacheServer> getCacheServers() {
+ public List<CacheServer> getCacheServers() {
if (cacheServers == null) {
- cacheServers = new ArrayList<CacheConfig.CacheServer>();
+ cacheServers = new ArrayList<CacheServer>();
}
return this.cacheServers;
}
@@ -1027,7 +1027,7 @@ public class CacheConfig {
}
public RegionConfig findRegionConfiguration(String regionPath) {
- if (regionPath.startsWith(Region.SEPARATOR)) {
+ if (regionPath.startsWith(SEPARATOR)) {
regionPath = regionPath.substring(1);
}
return findElement(getRegions(), regionPath);
@@ -1638,7 +1638,7 @@ public class CacheConfig {
public static class GatewayHub {
@XmlElement(name = "gateway", namespace = "http://geode.apache.org/schema/cache")
- protected List<CacheConfig.GatewayHub.Gateway> gateways;
+ protected List<Gateway> gateways;
@XmlAttribute(name = "id", required = true)
protected String id;
@XmlAttribute(name = "bind-address")
@@ -1679,9 +1679,9 @@ public class CacheConfig {
*
*
*/
- public List<CacheConfig.GatewayHub.Gateway> getGateway() {
+ public List<Gateway> getGateway() {
if (gateways == null) {
- gateways = new ArrayList<CacheConfig.GatewayHub.Gateway>();
+ gateways = new ArrayList<Gateway>();
}
return this.gateways;
}
@@ -1936,7 +1936,7 @@ public class CacheConfig {
public static class Gateway {
@XmlElement(name = "gateway-endpoint", namespace = "http://geode.apache.org/schema/cache")
- protected List<CacheConfig.GatewayHub.Gateway.GatewayEndpoint> gatewayEndpoints;
+ protected List<GatewayEndpoint> gatewayEndpoints;
@XmlElement(name = "gateway-listener", namespace = "http://geode.apache.org/schema/cache")
protected List<DeclarableType> gatewayListeners;
@XmlElement(name = "gateway-queue", namespace = "http://geode.apache.org/schema/cache")
@@ -1977,9 +1977,9 @@ public class CacheConfig {
*
*
*/
- public List<CacheConfig.GatewayHub.Gateway.GatewayEndpoint> getGatewayEndpoints() {
+ public List<GatewayEndpoint> getGatewayEndpoints() {
if (gatewayEndpoints == null) {
- gatewayEndpoints = new ArrayList<CacheConfig.GatewayHub.Gateway.GatewayEndpoint>();
+ gatewayEndpoints = new ArrayList<GatewayEndpoint>();
}
return this.gatewayEndpoints;
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/CacheElement.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/CacheElement.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/CacheElement.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/CacheElement.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/CacheTransactionManagerType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/CacheTransactionManagerType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/CacheTransactionManagerType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/CacheTransactionManagerType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/ClassNameType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/ClassNameType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/ClassNameType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/ClassNameType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/DeclarableType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/DeclarableType.java
similarity index 78%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/DeclarableType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/DeclarableType.java
index 47e4837..dad9722 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/DeclarableType.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/DeclarableType.java
@@ -32,13 +32,9 @@ import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.StringUtils;
import org.apache.geode.annotations.Experimental;
-import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.Declarable;
-import org.apache.geode.internal.ClassPathLoader;
import org.apache.geode.management.internal.cli.domain.ClassName;
/**
- *
* A "declarable" element specifies a Declarable object to be placed in a Region entry.
*
*
@@ -60,8 +56,6 @@ import org.apache.geode.management.internal.cli.domain.ClassName;
* </complexContent>
* </complexType>
* </pre>
- *
- *
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "declarable-type", namespace = "http://geode.apache.org/schema/cache",
@@ -102,10 +96,9 @@ public class DeclarableType extends ClassNameType implements Serializable {
* Gets the value of the parameter property.
*
* <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the parameter property.
+ * This accessor method returns a reference to the live list, not a snapshot. Therefore any
+ * modification you make to the returned list will be present inside the JAXB object. This is why
+ * there is not a <CODE>set</CODE> method for the parameter property.
*
* <p>
* For example, to add a new item, do as follows:
@@ -116,10 +109,7 @@ public class DeclarableType extends ClassNameType implements Serializable {
*
*
* <p>
- * Objects of the following type(s) are allowed in the list
- * {@link ParameterType }
- *
- *
+ * Objects of the following type(s) are allowed in the list {@link ParameterType }
*/
public List<ParameterType> getParameters() {
if (parameters == null) {
@@ -155,21 +145,4 @@ public class DeclarableType extends ClassNameType implements Serializable {
+ parameters.stream().map(Objects::toString).collect(Collectors.joining(",")) + "}";
}
- public <T> T newInstance(Cache cache) {
- try {
- Class<T> loadedClass = (Class<T>) ClassPathLoader.getLatest().forName(className);
- T object = loadedClass.newInstance();
- if (object instanceof Declarable) {
- Declarable declarable = (Declarable) object;
- Properties initProperties = new Properties();
- for (ParameterType parameter : parameters) {
- initProperties.put(parameter.getName(), parameter.newInstance(cache));
- }
- declarable.initialize(cache, initProperties);
- }
- return object;
- } catch (Exception e) {
- throw new RuntimeException("Error instantiating class: <" + className + ">", e);
- }
- }
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/DiskDirType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/DiskDirType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/DiskDirType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/DiskDirType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/DiskDirsType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/DiskDirsType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/DiskDirsType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/DiskDirsType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/DiskStoreType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/DiskStoreType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/DiskStoreType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/DiskStoreType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/DynamicRegionFactoryType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/DynamicRegionFactoryType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/DynamicRegionFactoryType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/DynamicRegionFactoryType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/EnumActionDestroyOverflow.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/EnumActionDestroyOverflow.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/EnumActionDestroyOverflow.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/EnumActionDestroyOverflow.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/EnumReadableWritable.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/EnumReadableWritable.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/EnumReadableWritable.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/EnumReadableWritable.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/FunctionServiceType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/FunctionServiceType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/FunctionServiceType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/FunctionServiceType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/JndiBindingsType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/JndiBindingsType.java
similarity index 97%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/JndiBindingsType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/JndiBindingsType.java
index 0b97867..67fbe44 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/JndiBindingsType.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/JndiBindingsType.java
@@ -109,7 +109,7 @@ import org.apache.geode.annotations.Experimental;
public class JndiBindingsType {
@XmlElement(name = "jndi-binding", namespace = "http://geode.apache.org/schema/cache")
- protected List<JndiBindingsType.JndiBinding> jndiBindings;
+ protected List<JndiBinding> jndiBindings;
/**
* Gets the value of the jndiBindings property.
@@ -134,9 +134,9 @@ public class JndiBindingsType {
*
*
*/
- public List<JndiBindingsType.JndiBinding> getJndiBindings() {
+ public List<JndiBinding> getJndiBindings() {
if (jndiBindings == null) {
- jndiBindings = new ArrayList<JndiBindingsType.JndiBinding>();
+ jndiBindings = new ArrayList<JndiBinding>();
}
return this.jndiBindings;
}
@@ -205,7 +205,7 @@ public class JndiBindingsType {
public static class JndiBinding implements CacheElement {
@XmlElement(name = "config-property", namespace = "http://geode.apache.org/schema/cache")
- protected List<JndiBindingsType.JndiBinding.ConfigProperty> configProperties;
+ protected List<ConfigProperty> configProperties;
@XmlAttribute(name = "blocking-timeout-seconds")
protected String blockingTimeoutSeconds;
@XmlAttribute(name = "conn-pooled-datasource-class")
@@ -260,9 +260,9 @@ public class JndiBindingsType {
*
*
*/
- public List<JndiBindingsType.JndiBinding.ConfigProperty> getConfigProperties() {
+ public List<ConfigProperty> getConfigProperties() {
if (configProperties == null) {
- configProperties = new ArrayList<JndiBindingsType.JndiBinding.ConfigProperty>();
+ configProperties = new ArrayList<ConfigProperty>();
}
return this.configProperties;
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/ObjectType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/ObjectType.java
similarity index 90%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/ObjectType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/ObjectType.java
index 60bbfdc..324a004 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/ObjectType.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/ObjectType.java
@@ -25,8 +25,6 @@ import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.geode.cache.Cache;
-
/**
* <p>
* Java class for anonymous complex type.
@@ -48,7 +46,6 @@ import org.apache.geode.cache.Cache;
* </pre>
*
* ObjectType represents either a string or an object represented by the DeclarableType
- *
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {"string", "declarable"})
@@ -70,7 +67,6 @@ public class ObjectType implements Serializable {
/**
* Gets the value of the string property.
- *
*/
public String getString() {
return string;
@@ -78,7 +74,6 @@ public class ObjectType implements Serializable {
/**
* Sets the value of the string property.
- *
*/
public void setString(String string) {
this.string = string;
@@ -87,9 +82,7 @@ public class ObjectType implements Serializable {
/**
* Gets the value of the declarable property.
*
- * possible object is
- * {@link DeclarableType }
- *
+ * possible object is {@link DeclarableType }
*/
public DeclarableType getDeclarable() {
return declarable;
@@ -98,9 +91,7 @@ public class ObjectType implements Serializable {
/**
* Sets the value of the declarable property.
*
- * allowed object is
- * {@link DeclarableType }
- *
+ * allowed object is {@link DeclarableType }
*/
public void setDeclarable(DeclarableType value) {
this.declarable = value;
@@ -135,15 +126,4 @@ public class ObjectType implements Serializable {
return "";
}
- public Object newInstance(Cache cache) {
- if (string != null) {
- return string;
- }
-
- if (declarable != null) {
- return declarable.newInstance(cache);
- }
-
- return null;
- }
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/ParameterType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/ParameterType.java
similarity index 96%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/ParameterType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/ParameterType.java
index e27e009..a8921d0 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/ParameterType.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/ParameterType.java
@@ -75,6 +75,11 @@ public class ParameterType extends ObjectType {
setString(value);
}
+ public ParameterType(String name, DeclarableType declarableType) {
+ this.name = name;
+ this.declarable = declarableType;
+ }
+
/**
* Gets the value of the name property.
*
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/PdxType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/PdxType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/PdxType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/PdxType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/PoolType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/PoolType.java
similarity index 98%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/PoolType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/PoolType.java
index 7a2267d..7aa810f 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/PoolType.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/PoolType.java
@@ -102,9 +102,9 @@ import org.apache.geode.annotations.Experimental;
public class PoolType {
@XmlElement(name = "locator", namespace = "http://geode.apache.org/schema/cache")
- protected List<PoolType.Locator> locators;
+ protected List<Locator> locators;
@XmlElement(name = "server", namespace = "http://geode.apache.org/schema/cache")
- protected List<PoolType.Server> servers;
+ protected List<Server> servers;
@XmlAttribute(name = "subscription-timeout-multiplier")
protected String subscriptionTimeoutMultiplier;
@XmlAttribute(name = "socket-connect-timeout")
@@ -171,9 +171,9 @@ public class PoolType {
*
*
*/
- public List<PoolType.Locator> getLocators() {
+ public List<Locator> getLocators() {
if (locators == null) {
- locators = new ArrayList<PoolType.Locator>();
+ locators = new ArrayList<Locator>();
}
return this.locators;
}
@@ -201,9 +201,9 @@ public class PoolType {
*
*
*/
- public List<PoolType.Server> getServers() {
+ public List<Server> getServers() {
if (servers == null) {
- servers = new ArrayList<PoolType.Server>();
+ servers = new ArrayList<Server>();
}
return this.servers;
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesDataPolicy.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesDataPolicy.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesDataPolicy.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesDataPolicy.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesIndexUpdateType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesIndexUpdateType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesIndexUpdateType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesIndexUpdateType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesMirrorType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesMirrorType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesMirrorType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesMirrorType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesScope.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesScope.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesScope.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesScope.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesType.java
similarity index 99%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesType.java
index 18265d0..fde2711 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/RegionAttributesType.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/RegionAttributesType.java
@@ -2234,7 +2234,7 @@ public class RegionAttributesType implements Serializable {
public static class MembershipAttributes implements Serializable {
@XmlElement(name = "required-role", namespace = "http://geode.apache.org/schema/cache")
- protected List<RegionAttributesType.MembershipAttributes.RequiredRole> requiredRoles;
+ protected List<RequiredRole> requiredRoles;
@XmlAttribute(name = "loss-action")
protected String lossAction;
@XmlAttribute(name = "resumption-action")
@@ -2263,9 +2263,9 @@ public class RegionAttributesType implements Serializable {
*
*
*/
- public List<RegionAttributesType.MembershipAttributes.RequiredRole> getRequiredRoles() {
+ public List<RequiredRole> getRequiredRoles() {
if (requiredRoles == null) {
- requiredRoles = new ArrayList<RegionAttributesType.MembershipAttributes.RequiredRole>();
+ requiredRoles = new ArrayList<RequiredRole>();
}
return this.requiredRoles;
}
@@ -2442,7 +2442,7 @@ public class RegionAttributesType implements Serializable {
protected List<DeclarableType> partitionListeners;
@XmlElement(name = "fixed-partition-attributes",
namespace = "http://geode.apache.org/schema/cache")
- protected List<RegionAttributesType.PartitionAttributes.FixedPartitionAttributes> fixedPartitionAttributes;
+ protected List<FixedPartitionAttributes> fixedPartitionAttributes;
@XmlAttribute(name = "local-max-memory")
protected String localMaxMemory;
@XmlAttribute(name = "recovery-delay")
@@ -2533,10 +2533,10 @@ public class RegionAttributesType implements Serializable {
*
*
*/
- public List<RegionAttributesType.PartitionAttributes.FixedPartitionAttributes> getFixedPartitionAttributes() {
+ public List<FixedPartitionAttributes> getFixedPartitionAttributes() {
if (fixedPartitionAttributes == null) {
fixedPartitionAttributes =
- new ArrayList<RegionAttributesType.PartitionAttributes.FixedPartitionAttributes>();
+ new ArrayList<FixedPartitionAttributes>();
}
return this.fixedPartitionAttributes;
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/RegionConfig.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/RegionConfig.java
similarity index 98%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/RegionConfig.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/RegionConfig.java
index e5a26c6..a39db22 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/RegionConfig.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/RegionConfig.java
@@ -153,9 +153,9 @@ public class RegionConfig implements CacheElement {
@XmlElement(name = "region-attributes", namespace = "http://geode.apache.org/schema/cache")
protected RegionAttributesType regionAttributes;
@XmlElement(name = "index", namespace = "http://geode.apache.org/schema/cache")
- protected List<RegionConfig.Index> indexes;
+ protected List<Index> indexes;
@XmlElement(name = "entry", namespace = "http://geode.apache.org/schema/cache")
- protected List<RegionConfig.Entry> entries;
+ protected List<Entry> entries;
@XmlAnyElement(lax = true)
protected List<CacheElement> regionElements;
@XmlElement(name = "region", namespace = "http://geode.apache.org/schema/cache")
@@ -203,7 +203,7 @@ public class RegionConfig implements CacheElement {
*
*
*/
- public List<RegionConfig.Index> getIndexes() {
+ public List<Index> getIndexes() {
if (indexes == null) {
indexes = new ArrayList<>();
}
@@ -233,9 +233,9 @@ public class RegionConfig implements CacheElement {
*
*
*/
- public List<RegionConfig.Entry> getEntries() {
+ public List<Entry> getEntries() {
if (entries == null) {
- entries = new ArrayList<RegionConfig.Entry>();
+ entries = new ArrayList<Entry>();
}
return this.entries;
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/ResourceManagerType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/ResourceManagerType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/ResourceManagerType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/ResourceManagerType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/SerializationRegistrationType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/SerializationRegistrationType.java
similarity index 94%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/SerializationRegistrationType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/SerializationRegistrationType.java
index ca0b793..4155d17 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/SerializationRegistrationType.java
+++ b/geode-management/src/main/java/org/apache/geode/cache/configuration/SerializationRegistrationType.java
@@ -86,9 +86,9 @@ import org.apache.geode.annotations.Experimental;
public class SerializationRegistrationType {
@XmlElement(name = "serializer", namespace = "http://geode.apache.org/schema/cache")
- protected List<SerializationRegistrationType.Serializer> serializers;
+ protected List<Serializer> serializers;
@XmlElement(name = "instantiator", namespace = "http://geode.apache.org/schema/cache")
- protected List<SerializationRegistrationType.Instantiator> instantiators;
+ protected List<Instantiator> instantiators;
/**
* Gets the value of the serializer property.
@@ -113,9 +113,9 @@ public class SerializationRegistrationType {
*
*
*/
- public List<SerializationRegistrationType.Serializer> getSerializers() {
+ public List<Serializer> getSerializers() {
if (serializers == null) {
- serializers = new ArrayList<SerializationRegistrationType.Serializer>();
+ serializers = new ArrayList<Serializer>();
}
return this.serializers;
}
@@ -143,9 +143,9 @@ public class SerializationRegistrationType {
*
*
*/
- public List<SerializationRegistrationType.Instantiator> getInstantiators() {
+ public List<Instantiator> getInstantiators() {
if (instantiators == null) {
- instantiators = new ArrayList<SerializationRegistrationType.Instantiator>();
+ instantiators = new ArrayList<Instantiator>();
}
return this.instantiators;
}
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/ServerType.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/ServerType.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/ServerType.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/ServerType.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/XSDRootElement.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/XSDRootElement.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/XSDRootElement.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/XSDRootElement.java
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/package-info.java b/geode-management/src/main/java/org/apache/geode/cache/configuration/package-info.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/cache/configuration/package-info.java
rename to geode-management/src/main/java/org/apache/geode/cache/configuration/package-info.java
diff --git a/geode-core/src/main/java/org/apache/geode/internal/config/VersionAdapter.java b/geode-management/src/main/java/org/apache/geode/internal/config/VersionAdapter.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/internal/config/VersionAdapter.java
rename to geode-management/src/main/java/org/apache/geode/internal/config/VersionAdapter.java
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/api/ClusterManagementResult.java b/geode-management/src/main/java/org/apache/geode/management/internal/api/ClusterManagementResult.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/management/internal/api/ClusterManagementResult.java
rename to geode-management/src/main/java/org/apache/geode/management/internal/api/ClusterManagementResult.java
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/api/ClusterManagementService.java b/geode-management/src/main/java/org/apache/geode/management/internal/api/ClusterManagementService.java
similarity index 100%
rename from geode-core/src/main/java/org/apache/geode/management/internal/api/ClusterManagementService.java
rename to geode-management/src/main/java/org/apache/geode/management/internal/api/ClusterManagementService.java
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/api/Status.java b/geode-management/src/main/java/org/apache/geode/management/internal/api/Status.java
similarity index 99%
rename from geode-core/src/main/java/org/apache/geode/management/internal/api/Status.java
rename to geode-management/src/main/java/org/apache/geode/management/internal/api/Status.java
index 1866dc2..097e4ce 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/api/Status.java
+++ b/geode-management/src/main/java/org/apache/geode/management/internal/api/Status.java
@@ -25,8 +25,6 @@ public class Status {
// needed for json deserialization
public Status() {}
- ;
-
public Status(Result status, String message) {
this.status = status;
this.message = message;
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/domain/ClassName.java b/geode-management/src/main/java/org/apache/geode/management/internal/cli/domain/ClassName.java
similarity index 83%
rename from geode-core/src/main/java/org/apache/geode/management/internal/cli/domain/ClassName.java
rename to geode-management/src/main/java/org/apache/geode/management/internal/cli/domain/ClassName.java
index bb78d6b..362a4ce 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/domain/ClassName.java
+++ b/geode-management/src/main/java/org/apache/geode/management/internal/cli/domain/ClassName.java
@@ -25,10 +25,6 @@ import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.StringUtils;
-import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.Declarable;
-import org.apache.geode.internal.ClassPathLoader;
-
/**
* This is mostly used for Gfsh command options that need to specify a className for instantiation.
*
@@ -59,7 +55,6 @@ public class ClassName<T> implements Serializable {
}
/**
- *
* @param className this class needs to have an empty param constructor
* @param jsonInitProperties this class needs to implement Declarable in order for these
* properties to be applied at initialization time
@@ -116,18 +111,4 @@ public class ClassName<T> implements Serializable {
&& this.getInitProperties().equals(that.getInitProperties());
}
- public T newInstance(Cache cache) {
- try {
- Class<T> loadedClass = (Class<T>) ClassPathLoader.getLatest().forName(className);
- T object = loadedClass.newInstance();
- if (object instanceof Declarable) {
- Declarable declarable = (Declarable) object;
- declarable.initialize(cache, initProperties);
- declarable.init(initProperties); // for backwards compatibility
- }
- return object;
- } catch (Exception e) {
- throw new RuntimeException("Error instantiating class: <" + className + ">", e);
- }
- }
}
diff --git a/geode-core/src/test/resources/expected-pom.xml b/geode-management/src/test/resources/expected-pom.xml
similarity index 76%
copy from geode-core/src/test/resources/expected-pom.xml
copy to geode-management/src/test/resources/expected-pom.xml
index f88ee96..ef3939a 100644
--- a/geode-core/src/test/resources/expected-pom.xml
+++ b/geode-management/src/test/resources/expected-pom.xml
@@ -18,7 +18,7 @@
-->
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.geode</groupId>
- <artifactId>geode-core</artifactId>
+ <artifactId>geode-management</artifactId>
<version>1.9.0-SNAPSHOT</version>
<name>Apache Geode</name>
<description>Apache Geode provides a database-like consistency model, reliable transaction processing and a shared-nothing architecture to maintain very low latency performance with high concurrency processing</description>
@@ -36,281 +36,25 @@
</scm>
<dependencies>
<dependency>
- <groupId>com.github.stephenc.findbugs</groupId>
- <artifactId>findbugs-annotations</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.jgroups</groupId>
- <artifactId>jgroups</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>antlr</groupId>
- <artifactId>antlr</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-annotations</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>commons-io</groupId>
- <artifactId>commons-io</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>commons-validator</groupId>
- <artifactId>commons-validator</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>commons-digester</groupId>
- <artifactId>commons-digester</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>com.sun.activation</groupId>
- <artifactId>javax.activation</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>com.sun.xml.bind</groupId>
- <artifactId>jaxb-impl</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>com.sun.istack</groupId>
- <artifactId>istack-commons-runtime</artifactId>
- <scope>compile</scope>
- <exclusions>
- <exclusion>
- <artifactId>*</artifactId>
- <groupId>*</groupId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
- <groupId>commons-modeler</groupId>
- <artifactId>commons-modeler</artifactId>
- <scope>compile</scope>
- <exclusions>
- <exclusion>
- <artifactId>commons-logging-api</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>commons-digester</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>xml-apis</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>mx4j-jmx</artifactId>
- <groupId>*</groupId>
- </exclusion>
- </exclusions>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>io.netty</groupId>
- <artifactId>netty-all</artifactId>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>it.unimi.dsi</groupId>
- <artifactId>fastutil</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>javax.mail</groupId>
- <artifactId>javax.mail-api</artifactId>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>javax.resource-api</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>mx4j</groupId>
- <artifactId>mx4j</artifactId>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>mx4j</groupId>
- <artifactId>mx4j-remote</artifactId>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>mx4j</groupId>
- <artifactId>mx4j-tools</artifactId>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>net.java.dev.jna</groupId>
- <artifactId>jna</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>net.sf.jopt-simple</groupId>
- <artifactId>jopt-simple</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.logging.log4j</groupId>
- <artifactId>log4j-api</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.logging.log4j</groupId>
- <artifactId>log4j-core</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>com.github.davidmoten</groupId>
- <artifactId>geo</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-webapp</artifactId>
- <version>9.4.12.v20180830</version>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-core</artifactId>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.springframework.shell</groupId>
- <artifactId>spring-shell</artifactId>
- <scope>compile</scope>
- <exclusions>
- <exclusion>
- <artifactId>cglib</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>spring-core</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>asm</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>spring-aop</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>guava</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>aopalliance</artifactId>
- <groupId>*</groupId>
- </exclusion>
- <exclusion>
- <artifactId>spring-context-support</artifactId>
- <groupId>*</groupId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.iq80.snappy</groupId>
- <artifactId>snappy</artifactId>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.apache.shiro</groupId>
- <artifactId>shiro-core</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>io.github.classgraph</groupId>
- <artifactId>classgraph</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>com.healthmarketscience.rmiio</groupId>
- <artifactId>rmiio</artifactId>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
- <groupId>org.apache.geode</groupId>
- <artifactId>geode-common</artifactId>
- <version>1.9.0-SNAPSHOT</version>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-core</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
- <groupId>org.apache.geode</groupId>
- <artifactId>geode-json</artifactId>
- <version>1.9.0-SNAPSHOT</version>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
<scope>compile</scope>
</dependency>
- <dependency>
- <groupId>org.fusesource.jansi</groupId>
- <artifactId>jansi</artifactId>
- <scope>runtime</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <scope>runtime</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.logging.log4j</groupId>
- <artifactId>log4j-slf4j-impl</artifactId>
- <scope>runtime</scope>
- <exclusions>
- <exclusion>
- <artifactId>slf4j-api</artifactId>
- <groupId>*</groupId>
- </exclusion>
- </exclusions>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.apache.logging.log4j</groupId>
- <artifactId>log4j-jcl</artifactId>
- <scope>runtime</scope>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.apache.logging.log4j</groupId>
- <artifactId>log4j-jul</artifactId>
- <scope>runtime</scope>
- <optional>true</optional>
- </dependency>
</dependencies>
<dependencyManagement>
<dependencies>
@@ -710,6 +454,11 @@
<version>6.6.2</version>
</dependency>
<dependency>
+ <groupId>org.apache.geode</groupId>
+ <artifactId>geode-management</artifactId>
+ <version>1.9.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
diff --git a/gradle/geode-dependency-management.gradle b/gradle/geode-dependency-management.gradle
index 3a27c35..ba68afe 100644
--- a/gradle/geode-dependency-management.gradle
+++ b/gradle/geode-dependency-management.gradle
@@ -67,7 +67,7 @@ class GeodeDependencyManagementPlugin implements Plugin<Project> {
entry('geode-wan')
entry('geode-web')
entry('geode-web-api')
- entry('geode-management-rest-api')
+ entry('geode-management')
}
// informal, inter-group dependencySet
diff --git a/settings.gradle b/settings.gradle
index d584f0c..374d3e6 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -31,6 +31,7 @@ include 'geode-core'
include 'geode-web'
include 'geode-web-api'
include 'geode-web-management'
+include 'geode-management'
include 'geode-pulse'
include 'geode-pulse:geode-pulse-test'
include 'geode-assembly'