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 2016/03/10 20:40:17 UTC
[3/3] incubator-geode git commit: GEODE-17: New definitions of
Resource and OperationCode for JMX and CLI commands
GEODE-17: New definitions of Resource and OperationCode for JMX and CLI commands
Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/575660a0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/575660a0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/575660a0
Branch: refs/heads/feature/GEODE-17-2
Commit: 575660a01eb215082c8a4c2d465131c6aeae7098
Parents: 38de960
Author: Jens Deppe <jd...@pivotal.io>
Authored: Thu Mar 10 11:38:10 2016 -0800
Committer: Jens Deppe <jd...@pivotal.io>
Committed: Thu Mar 10 11:38:10 2016 -0800
----------------------------------------------------------------------
.../cache/operations/OperationContext.java | 131 ++++---
.../gemfire/management/CacheServerMXBean.java | 15 +-
.../gemfire/management/DiskStoreMXBean.java | 13 +-
.../DistributedLockServiceMXBean.java | 1 -
.../management/DistributedSystemMXBean.java | 26 +-
.../management/GatewayReceiverMXBean.java | 7 +-
.../gemfire/management/GatewaySenderMXBean.java | 13 +-
.../gemfire/management/LockServiceMXBean.java | 9 +-
.../gemfire/management/ManagerMXBean.java | 14 +-
.../gemfire/management/MemberMXBean.java | 24 +-
.../gemfire/management/RegionMXBean.java | 1 -
.../internal/cli/commands/ClientCommands.java | 7 +-
.../internal/cli/commands/ConfigCommands.java | 10 +-
.../CreateAlterDestroyRegionCommands.java | 9 +-
.../internal/cli/commands/DataCommands.java | 59 ++--
.../internal/cli/commands/DeployCommands.java | 8 +-
.../cli/commands/DiskStoreCommands.java | 78 ++---
.../cli/commands/DurableClientCommands.java | 48 +--
...ExportImportSharedConfigurationCommands.java | 24 +-
.../internal/cli/commands/FunctionCommands.java | 10 +-
.../internal/cli/commands/GfshHelpCommands.java | 20 +-
.../internal/cli/commands/IndexCommands.java | 42 ++-
.../cli/commands/LauncherLifecycleCommands.java | 98 +++---
.../internal/cli/commands/MemberCommands.java | 6 +-
.../cli/commands/MiscellaneousCommands.java | 103 +++---
.../internal/cli/commands/PDXCommands.java | 29 +-
.../internal/cli/commands/QueueCommands.java | 26 +-
.../internal/cli/commands/RegionCommands.java | 31 +-
.../internal/cli/commands/ShellCommands.java | 95 +++--
.../internal/cli/commands/StatusCommands.java | 20 +-
.../internal/cli/commands/WanCommands.java | 347 +++++++++----------
.../internal/security/AccessControlMXBean.java | 4 +-
.../internal/security/CLIOperationContext.java | 26 ++
.../management/internal/security/Resource.java | 27 +-
.../internal/security/ResourceConstants.java | 2 +-
.../internal/security/ResourceOperation.java | 8 +-
.../security/ResourceOperationContext.java | 31 +-
.../extension/mock/MockExtensionCommands.java | 28 +-
.../internal/cli/CommandManagerJUnitTest.java | 57 ++-
.../internal/cli/GfshParserJUnitTest.java | 54 ++-
.../shell/GfshExecutionStrategyJUnitTest.java | 41 +--
.../CacheServerMBeanSecurityJUnitTest.java | 3 +
.../security/MemberMBeanSecurityJUnitTest.java | 3 +
...tionCodesForDataCommandsIntegrationTest.java | 6 +-
...tionCodesForDistributedSystemMXBeanTest.java | 6 +-
.../management/internal/security/auth3.json | 4 +-
.../internal/security/cacheServer.json | 9 +-
47 files changed, 834 insertions(+), 799 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/cache/operations/OperationContext.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/cache/operations/OperationContext.java b/geode-core/src/main/java/com/gemstone/gemfire/cache/operations/OperationContext.java
index fad9ff5..4ac460c 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/cache/operations/OperationContext.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/cache/operations/OperationContext.java
@@ -41,97 +41,82 @@ public abstract class OperationContext {
* @since 5.5
*/
public enum OperationCode {
- DESTROY,
- INVALIDATE,
- REGISTER_INTEREST,
- UNREGISTER_INTEREST,
- CONTAINS_KEY,
- KEY_SET,
- EXECUTE_CQ,
- STOP_CQ,
+ ALL,
+ ALTER,
+ ALTER_RUNTIME,
+ BACKUP,
+ BECOME_LOCK_GRANTOR,
CLOSE_CQ,
- REGION_CLEAR,
- REGION_CREATE,
- REGION_DESTROY,
- PUTALL,
- GET_DURABLE_CQS,
- REMOVEALL,
- RESOURCE,
- MANAGE,
- LIST,
+ COMPACT,
+ COMPACT_DISKSTORE, // TODO: Do we need this?
+ CONFIGURE,
+ CONTAINS_KEY,
+ CREATE,
+ CREATE_MANAGER, // TODO: Do we need this?
CREATE_QUERY,
- UPDATE_QUERY,
+ CREATE_REGION, // TODO: Do we need this?
+ DELETE,
DELETE_QUERY,
- ALTER_REGION,
- ALTER_RUNTIME,
- BACKUP_DISKSTORE,
- CHANGE_ALERT_LEVEL,
- CLOSE_DURABLE_CLIENT,
- CLOSE_DURABLE_CQ,
- COMPACT_DISKSTORE,
- CONFIGURE_PDX,
- CREATE_AEQ,
- CREATE_DISKSTORE,
- CREATE_GW_RECEIVER,
- CREATE_GW_SENDER,
- CREATE_INDEX,
- CREATE_REGION,
DEPLOY,
- DESTROY_DISKSTORE,
- DESTROY_FUNCTION,
- DESTROY_INDEX,
- DESTROY_REGION,
+ DESTROY,
+ DESTROY_INDEX, // TODO: Do we need this?
+ EXECUTE,
+ EXECUTE_CQ,
EXECUTE_FUNCTION,
- EXPORT_CONFIG,
- EXPORT_DATA,
+ EXPORT,
+ EXPORT_DATA, // TODO: Do we need this?
EXPORT_LOGS,
- EXPORT_OFFLINE_DISKSTORE,
EXPORT_STACKTRACE,
+ FLUSH,
GC,
GET,
- IMPORT_CONFIG,
- IMPORT_DATA,
- LIST_DS,
- LOAD_BALANCE_GW_SENDER,
- LOCATE_ENTRY,
+ GET_DURABLE_CQS,
+ IMPORT,
+ IMPORT_DATA, // TODO: Do we need this?
+ INVALIDATE,
+ KEY_SET,
+ LIST,
+ LIST_DS, // TODO: Do we need this?
+ LOCATE_ENTRY, // TODO: Do we need this?
+ MANAGE, // TODO: Do we need this?
NETSTAT,
- PAUSE_GW_SENDER,
+ PAUSE,
+ PROCESS_COMMAND,
PUT,
+ PUTALL,
QUERY,
REBALANCE,
- REMOVE,
- RENAME_PDX,
- RESUME_GW_SENDER,
- REVOKE_MISSING_DISKSTORE,
+ REGION_CLEAR,
+ REGION_CREATE,
+ REGION_DESTROY,
+ REGISTER_INTEREST,
+ REMOVEALL,
+ RENAME,
+ RESOURCE,
+ RESUME,
+ REVOKE_MISSING,
+ ROLL,
+ SET_ALERT_LEVEL,
+ SET_DISK_USAGE_CRITICAL,
+ SET_DISK_USAGE_WARNING,
+ SET_PULSE_URL,
+ SET_QUERY_RESULT_LIMIT,
+ SET_QUERY_COLLECTION_DEPTH,
+ SET_STATUS_MESSAGE,
SHOW_DEADLOCKS,
SHOW_LOG,
SHOW_METRICS,
- SHOW_MISSING_DISKSTORES,
- SHOW_SUBSCRIPTION_QUEUE_SIZE,
+ SHOW_MISSING,
SHUTDOWN,
- STOP_GW_RECEIVER,
- STOP_GW_SENDER,
+ START,
+ STATUS,
+ STOP,
+ STOP_CONTINUOUS_QUERY, // TODO: Do we need this?
+ STOP_CQ,
UNDEPLOY,
- BACKUP_MEMBERS,
- ROLL_DISKSTORE,
- FORCE_COMPACTION,
- FORCE_ROLL,
- FLUSH_DISKSTORE,
- START_GW_RECEIVER,
- START_GW_SENDER,
- BECOME_LOCK_GRANTOR,
- START_MANAGER,
- STOP_MANAGER,
- CREATE_MANAGER,
- STOP_CONTINUOUS_QUERY,
- SET_DISK_USAGE,
- CREATE_HDFS_STORE,
- ALTER_HDFS_STORE,
- DESTROY_HDFS_STORE,
- PULSE_DASHBOARD,
- PULSE_DATABROWSER,
- PULSE_WEBGFSH,
- PULSE_ADMIN;
+ UNREGISTER_INTEREST,
+ UPDATE_QUERY,
+ VALIDATE;
/**
* Returns true if this is a entry get operation.
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java
index 7c3aa18..4ebe07b 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java
@@ -18,9 +18,10 @@ package com.gemstone.gemfire.management;
import com.gemstone.gemfire.cache.server.CacheServer;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
* MBean that provides access to information and management functionality for a
* {@link CacheServer}.
@@ -282,7 +283,7 @@ public interface CacheServerMXBean {
* @param indexName
* Name of the index to be removed.
*/
- @ResourceOperation(resource=Resource.REGION, operation=ResourceConstants.DESTROY_INDEX)
+ @ResourceOperation(resource = Resource.INDEX, operation = OperationCode.DESTROY)
public void removeIndex(String indexName) throws Exception;
/**
@@ -299,8 +300,8 @@ public interface CacheServerMXBean {
* target cache server - other copies of the CQ on other servers are
* not affected. Using the client side CQ methods to modify a CQ.
*/
- @Deprecated
- @ResourceOperation(resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.QUERY)
+ @Deprecated
+ @ResourceOperation(resource = Resource.CONTINUOUS_QUERY, operation = OperationCode.EXECUTE)
public void executeContinuousQuery(String queryName) throws Exception;
/**
@@ -314,7 +315,7 @@ public interface CacheServerMXBean {
* not affected. Using the client side CQ methods to modify a CQ.
*/
@Deprecated
- @ResourceOperation(resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.STOP_CONTINUOUS_QUERY)
+ @ResourceOperation(resource = Resource.CONTINUOUS_QUERY, operation = OperationCode.STOP)
public void stopContinuousQuery(String queryName) throws Exception;
/**
@@ -327,7 +328,7 @@ public interface CacheServerMXBean {
* not affected. Using the client side CQ methods to modify a CQ.
*/
@Deprecated
- @ResourceOperation(resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.STOP_CONTINUOUS_QUERY)
+ @ResourceOperation(resource = Resource.CONTINUOUS_QUERY, operation = OperationCode.STOP)
public void closeAllContinuousQuery(String regionName) throws Exception;
@@ -341,7 +342,7 @@ public interface CacheServerMXBean {
* not affected. Using the client side CQ methods to modify a CQ.
*/
@Deprecated
- @ResourceOperation(resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.STOP_CONTINUOUS_QUERY)
+ @ResourceOperation(resource = Resource.CONTINUOUS_QUERY, operation = OperationCode.STOP)
public void closeContinuousQuery(String queryName) throws Exception;
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java
index a8a4ded..f30a613 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java
@@ -17,10 +17,11 @@
package com.gemstone.gemfire.management;
import com.gemstone.gemfire.cache.DiskStore;
+import com.gemstone.gemfire.cache.operations.OperationContext;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
/**
* MBean that provides access to information and management functionality for a
@@ -160,7 +161,7 @@ public interface DiskStoreMXBean {
* compaction is true then the application will wait for the other op-logs to
* be compacted and additional space is available.
*/
- @ResourceOperation(resource=Resource.DISKSTORE, operation=ResourceConstants.FORCE_ROLL)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationContext.OperationCode.ROLL)
public void forceRoll();
/**
@@ -174,14 +175,14 @@ public interface DiskStoreMXBean {
* that no op-logs were ready to be compacted or that a compaction was
* already in progress.
*/
- @ResourceOperation(resource=Resource.DISKSTORE, operation=ResourceConstants.FORCE_COMPACTION)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.COMPACT)
public boolean forceCompaction();
/**
* Causes any data that is currently in the asynchronous queue to be written
* to disk. Does not return until the flush is complete.
*/
- @ResourceOperation(resource=Resource.DISKSTORE, operation=ResourceConstants.FLUSH_DISKSTORE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.FLUSH)
public void flush();
/**
@@ -207,7 +208,7 @@ public interface DiskStoreMXBean {
*
* @param warningPercent the warning percent
*/
- @ResourceOperation(resource=Resource.DISKSTORE, operation=ResourceConstants.SET_DISK_USAGE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.SET_DISK_USAGE_WARNING)
public void setDiskUsageWarningPercentage(float warningPercent);
/**
@@ -215,6 +216,6 @@ public interface DiskStoreMXBean {
*
* @param criticalPercent the critical percent
*/
- @ResourceOperation(resource=Resource.DISKSTORE, operation=ResourceConstants.SET_DISK_USAGE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.SET_DISK_USAGE_CRITICAL)
public void setDiskUsageCriticalPercentage(float criticalPercent);
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java
index 7387eb4..8efa646 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java
@@ -20,7 +20,6 @@ import java.util.Map;
import com.gemstone.gemfire.distributed.DistributedLockService;
-
/**
* MBean that provides access to information for a named instance of {@link DistributedLockService}.
* Since any number of DistributedLockService objects can be created by a member there may be 0 or
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java
index 9bd84f0..8af5df7 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java
@@ -16,18 +16,18 @@
*/
package com.gemstone.gemfire.management;
-import java.util.Map;
-
-import javax.management.ObjectName;
-
import com.gemstone.gemfire.cache.DiskStore;
import com.gemstone.gemfire.cache.Region;
import com.gemstone.gemfire.distributed.DistributedMember;
import com.gemstone.gemfire.distributed.DistributedSystem;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import javax.management.ObjectName;
+import java.util.Map;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
* MBean that provides access to information and management operations for a
* {@link DistributedSystem}.
@@ -160,7 +160,7 @@ public interface DistributedSystemMXBean {
* Minimum level for alerts to be delivered.
* Must be one of: WARNING, ERROR, SEVERE or NONE.
*/
- @ResourceOperation( resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.CHANGE_ALERT_LEVEL)
+ @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation = OperationCode.SET_ALERT_LEVEL)
public void changeAlertLevel(String alertLevel) throws Exception;
/**
@@ -243,7 +243,7 @@ public interface DistributedSystemMXBean {
* path of the directory for baseline backup.
* @return The results of the backup request.
*/
- @ResourceOperation( resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.BACKUP_MEMBERS)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.BACKUP)
public DiskBackupStatus backupAllMembers(String targetDirPath, String baselineDirPath)
throws Exception;
@@ -328,7 +328,7 @@ public interface DistributedSystemMXBean {
*
* @return List of names of all distributed members that were shutdown.
*/
- @ResourceOperation( resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.SHUTDOWN)
+ @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation = OperationCode.SHUTDOWN)
public String[] shutDownAllMembers() throws Exception;
/**
@@ -348,7 +348,7 @@ public interface DistributedSystemMXBean {
* UUID of the disk store to remove
* @return True if the request is successful, false otherwise.
*/
- @ResourceOperation( resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.REVOKE_MISSING_DISKSTORE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.REVOKE_MISSING)
public boolean revokeMissingDiskStores(String diskStoreId)
throws Exception;
@@ -624,7 +624,7 @@ public interface DistributedSystemMXBean {
* will be set.
* @return a JSON formated string containing data and its type
*/
- @ResourceOperation( resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.QUERY)
+ @ResourceOperation(resource = Resource.QUERY, operation = OperationCode.QUERY)
public String queryData(String queryString, String members, int limit) throws Exception;
/**
@@ -654,7 +654,7 @@ public interface DistributedSystemMXBean {
* will be set.
* @return a byte[] which is a compressed JSON string.
*/
- @ResourceOperation( resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.QUERY)
+ @ResourceOperation(resource = Resource.QUERY, operation = OperationCode.QUERY)
public byte[] queryDataForCompressedResult(String queryString, String members, int limit) throws Exception;
@@ -680,7 +680,7 @@ public interface DistributedSystemMXBean {
*/
public int getQueryResultSetLimit();
- @ResourceOperation( resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.QUERY)
+ @ResourceOperation(resource = Resource.QUERY, operation = OperationCode.SET_QUERY_RESULT_LIMIT)
public void setQueryResultSetLimit(int queryResultSetLimit);
/**
@@ -690,6 +690,6 @@ public interface DistributedSystemMXBean {
*/
public int getQueryCollectionsDepth();
- @ResourceOperation( resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.QUERY)
+ @ResourceOperation(resource = Resource.QUERY, operation = OperationCode.SET_QUERY_COLLECTION_DEPTH)
public void setQueryCollectionsDepth(int queryCollectionsDepth);
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java
index 359e92e..7e16123 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java
@@ -18,9 +18,10 @@ package com.gemstone.gemfire.management;
import com.gemstone.gemfire.cache.wan.GatewayReceiver;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
* MBean that provides access to information and management functionality for a
* {@link GatewayReceiver}.
@@ -92,13 +93,13 @@ public interface GatewayReceiverMXBean {
/**
* Starts the gateway receiver.
*/
- @ResourceOperation(resource=Resource.GATEWAY_RECEIVER, operation=ResourceConstants.START_GW_RECEIVER)
+ @ResourceOperation(resource = Resource.GATEWAY_RECEIVER, operation = OperationCode.START)
public void start() throws Exception;
/**
* Stops the gateway receiver.
*/
- @ResourceOperation(resource=Resource.GATEWAY_RECEIVER, operation=ResourceConstants.STOP_GW_RECEIVER)
+ @ResourceOperation(resource = Resource.GATEWAY_RECEIVER, operation = OperationCode.STOP)
public void stop() throws Exception;
/**
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java
index 0f8642a..7b25a8f 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java
@@ -18,9 +18,10 @@ package com.gemstone.gemfire.management;
import com.gemstone.gemfire.cache.wan.GatewaySender;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
* MBean that provides access to information and management functionality for a
* {@link GatewaySender}.
@@ -174,31 +175,31 @@ public interface GatewaySenderMXBean {
* configuration cannot be changed.
*
*/
- @ResourceOperation(resource=Resource.GATEWAY_SENDER, operation=ResourceConstants.START_GW_SENDER)
+ @ResourceOperation(resource = Resource.GATEWAY_SENDER, operation = OperationCode.START)
public void start();
/**
* Stops this GatewaySender.
*/
- @ResourceOperation(resource=Resource.GATEWAY_SENDER, operation=ResourceConstants.STOP_GW_SENDER)
+ @ResourceOperation(resource=Resource.GATEWAY_SENDER, operation=OperationCode.STOP)
public void stop();
/**
* Pauses this GatewaySender.
*/
- @ResourceOperation(resource=Resource.GATEWAY_SENDER, operation=ResourceConstants.PAUSE_GW_SENDER)
+ @ResourceOperation(resource = Resource.GATEWAY_SENDER, operation = OperationCode.PAUSE)
public void pause();
/**
* Resumes this paused GatewaySender.
*/
- @ResourceOperation(resource=Resource.GATEWAY_SENDER, operation=ResourceConstants.RESUME_GW_SENDER)
+ @ResourceOperation(resource = Resource.GATEWAY_SENDER, operation = OperationCode.RESUME)
public void resume();
/**
* Rebalances this GatewaySender.
*/
- @ResourceOperation(resource=Resource.GATEWAY_SENDER, operation=ResourceConstants.LOAD_BALANCE_GW_SENDER)
+ @ResourceOperation(resource = Resource.GATEWAY_SENDER, operation = OperationCode.REBALANCE)
public void rebalance();
/**
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java
index 067a799..f6a10a7 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java
@@ -16,13 +16,14 @@
*/
package com.gemstone.gemfire.management;
-import java.util.Map;
-
import com.gemstone.gemfire.distributed.internal.locks.DLockService;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import java.util.Map;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
* MBean that provides access to information and management functionality for a
* {@link DLockService}. Since any number of DLockService objects can be created
@@ -72,7 +73,7 @@ public interface LockServiceMXBean {
/**
* Requests that this member become the granter.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.BECOME_LOCK_GRANTOR)
+ @ResourceOperation(resource = Resource.LOCK_SERVICE, operation = OperationCode.BECOME_LOCK_GRANTOR)
public void becomeLockGrantor();
/**
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java
index 62a5f52..8ae28c3 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java
@@ -16,13 +16,13 @@
*/
package com.gemstone.gemfire.management;
-import javax.management.JMException;
-
import com.gemstone.gemfire.management.internal.Manager;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import javax.management.JMException;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
/**
* MBean that provides access to information and management functionality for a
@@ -46,7 +46,7 @@ public interface ManagerMXBean {
*
* @return True if the manager service was successfully started, false otherwise.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.START_MANAGER)
+ @ResourceOperation(resource = Resource.MANAGER, operation = OperationCode.START)
public boolean start() throws JMException;
/**
@@ -54,7 +54,7 @@ public interface ManagerMXBean {
*
* @return True if the manager service was successfully stopped, false otherwise.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.STOP_MANAGER)
+ @ResourceOperation(resource = Resource.MANAGER, operation = OperationCode.STOP)
public boolean stop() throws JMException;
/**
@@ -68,7 +68,7 @@ public interface ManagerMXBean {
* @param pulseURL
* The URL for the Pulse application.
*/
- @ResourceOperation(resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.MANAGER, operation = OperationCode.SET_PULSE_URL)
public void setPulseURL(String pulseURL);
/**
@@ -85,6 +85,6 @@ public interface ManagerMXBean {
* @param message
* The status message.
*/
- @ResourceOperation(resource=Resource.DISTRIBUTED_SYSTEM, operation=ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.MANAGER, operation = OperationCode.SET_STATUS_MESSAGE)
public void setStatusMessage(String message);
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java
index c4316ae..4e95664 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java
@@ -16,13 +16,13 @@
*/
package com.gemstone.gemfire.management;
-import java.util.Map;
-
import com.gemstone.gemfire.distributed.DistributedMember;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import java.util.Map;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
/**
* MBean that provides access to information and management functionality for a
@@ -148,7 +148,7 @@ public interface MemberMXBean {
* @param numberOfLines
* Number of lines to return, up to a maximum of 100.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.SHOW_LOG)
+ @ResourceOperation(resource = Resource.MEMBER, operation = OperationCode.SHOW_LOG)
public String showLog(int numberOfLines);
/**
@@ -164,22 +164,22 @@ public interface MemberMXBean {
*
* @return A list of names of the disk stores that were compacted.
*/
- @ResourceOperation(resource=Resource.DISKSTORE, operation=ResourceConstants.COMPACT_DISKSTORE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.COMPACT)
public String[] compactAllDiskStores();
/**
* Creates a Manager MBean on this member.
*
- * @return True if the Manager MBean was successfully create, false otherwise.
+ * @return True if the Manager MBean was successfully created, false otherwise.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.CREATE_MANAGER)
+ @ResourceOperation(resource = Resource.MANAGER, operation = OperationCode.CREATE)
public boolean createManager();
/**
* Shuts down the member. This is an asynchronous call and it will
* return immediately without waiting for a result.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.SHUTDOWN)
+ @ResourceOperation(resource = Resource.MEMBER, operation = OperationCode.SHUTDOWN)
public void shutDownMember();
/**
@@ -200,7 +200,7 @@ public interface MemberMXBean {
*
* @return Result of the execution in JSON format.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.MEMBER, operation = OperationCode.PROCESS_COMMAND)
String processCommand(String commandString);
/**
@@ -212,7 +212,7 @@ public interface MemberMXBean {
* Environmental properties to use during command execution.
* @return Result of the execution in JSON format.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.MEMBER, operation = OperationCode.PROCESS_COMMAND)
String processCommand(String commandString, Map<String, String> env);
/**
@@ -226,7 +226,7 @@ public interface MemberMXBean {
* Binary data specific to the command being executed.
* @return Result of the execution in JSON format.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.MEMBER, operation = OperationCode.PROCESS_COMMAND)
String processCommand(String commandString, Map<String, String> env, Byte[][] binaryData);
/**
@@ -283,7 +283,7 @@ public interface MemberMXBean {
/**
* Returns the status.
*/
- @ResourceOperation(resource=Resource.MEMBER, operation=ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.MEMBER, operation = OperationCode.STATUS)
public String status();
/**
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java
index 9ab31b5..dbeb148 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java
@@ -21,7 +21,6 @@ import com.gemstone.gemfire.cache.CacheWriter;
import com.gemstone.gemfire.cache.EvictionAlgorithm;
import com.gemstone.gemfire.cache.Region;
-
/**
* MBean that provides access to information and management functionality for a
* local {@link Region}.
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java
index b205b5c..5d69fa8 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java
@@ -53,9 +53,10 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
*
* @author ajayp
@@ -70,7 +71,7 @@ public class ClientCommands implements CommandMarker {
@CliCommand(value = CliStrings.LIST_CLIENTS, help = CliStrings.LIST_CLIENT__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_LIST })
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.CLIENT, operation = OperationCode.LIST)
public Result listClient() {
Result result = null;
@@ -154,7 +155,7 @@ public class ClientCommands implements CommandMarker {
@CliCommand(value = CliStrings.DESCRIBE_CLIENT, help = CliStrings.DESCRIBE_CLIENT__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_LIST })
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.CLIENT, operation= OperationCode.LIST)
public Result describeClient(
@CliOption(key = CliStrings.DESCRIBE_CLIENT__ID, mandatory = true, help = CliStrings.DESCRIBE_CLIENT__ID__HELP) String clientId) {
Result result = null;
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java
index 651630a..e302b6d 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java
@@ -65,6 +65,9 @@ import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
import com.gemstone.gemfire.management.internal.security.Resource;
import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/****
*
* @author David Hoots
@@ -83,7 +86,7 @@ public class ConfigCommands implements CommandMarker {
@CliCommand(value = { CliStrings.DESCRIBE_CONFIG }, help = CliStrings.DESCRIBE_CONFIG__HELP)
@CliMetaData(shellOnly = false, relatedTopic = {CliStrings.TOPIC_GEMFIRE_CONFIG})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.CLUSTER_CONFIGURTION, operation= OperationCode.LIST)
public Result describeConfig(
@CliOption (key = CliStrings.DESCRIBE_CONFIG__MEMBER,
optionContext = ConverterHint.ALL_MEMBER_IDNAME,
@@ -197,7 +200,7 @@ public class ConfigCommands implements CommandMarker {
*/
@CliCommand(value = { CliStrings.EXPORT_CONFIG }, help = CliStrings.EXPORT_CONFIG__HELP)
@CliMetaData(interceptor = "com.gemstone.gemfire.management.internal.cli.commands.ConfigCommands$Interceptor", relatedTopic = {CliStrings.TOPIC_GEMFIRE_CONFIG})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.EXPORT_CONFIG)
+ @ResourceOperation(resource = Resource.CLUSTER_CONFIGURTION, operation = OperationCode.EXPORT)
public Result exportConfig(
@CliOption(key = { CliStrings.EXPORT_CONFIG__MEMBER },
optionContext = ConverterHint.ALL_MEMBER_IDNAME,
@@ -253,7 +256,7 @@ public class ConfigCommands implements CommandMarker {
@CliCommand(value = { CliStrings.ALTER_RUNTIME_CONFIG }, help = CliStrings.ALTER_RUNTIME_CONFIG__HELP)
@CliMetaData(relatedTopic = {CliStrings.TOPIC_GEMFIRE_CONFIG})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.ALTER_RUNTIME)
+ @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation = OperationCode.ALTER_RUNTIME)
public Result alterRuntimeConfig(
@CliOption (key = {CliStrings.ALTER_RUNTIME_CONFIG__MEMBER},
optionContext = ConverterHint.ALL_MEMBER_IDNAME,
@@ -429,6 +432,7 @@ public class ConfigCommands implements CommandMarker {
return ResultBuilder.createGemFireErrorResult(CliStrings.format(CliStrings.EXCEPTION_CLASS_AND_MESSAGE, e.getClass(), e.getMessage()));
}
}
+
@CliAvailabilityIndicator({ CliStrings.DESCRIBE_CONFIG, CliStrings.EXPORT_CONFIG, CliStrings.ALTER_RUNTIME_CONFIG})
public boolean configCommandsAvailable() {
boolean isAvailable = true; // always available on server
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
index 6286bdd..6ee840a 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
@@ -84,9 +84,10 @@ import com.gemstone.gemfire.management.internal.cli.util.RegionPath;
import com.gemstone.gemfire.management.internal.configuration.SharedConfigurationWriter;
import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
*
* @author Abhishek Chaudhari
@@ -112,7 +113,7 @@ public class CreateAlterDestroyRegionCommands extends AbstractCommandsSupport {
@CliCommand (value = CliStrings.CREATE_REGION, help = CliStrings.CREATE_REGION__HELP)
@CliMetaData (relatedTopic = CliStrings.TOPIC_GEMFIRE_REGION, writesToSharedConfiguration = true)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.CREATE_REGION)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.CREATE)
public Result createRegion(
@CliOption (key = CliStrings.CREATE_REGION__REGION,
mandatory = true,
@@ -441,7 +442,7 @@ public class CreateAlterDestroyRegionCommands extends AbstractCommandsSupport {
@CliCommand (value = CliStrings.ALTER_REGION, help = CliStrings.ALTER_REGION__HELP)
@CliMetaData (relatedTopic = CliStrings.TOPIC_GEMFIRE_REGION, writesToSharedConfiguration = true)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.ALTER_REGION)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.ALTER)
public Result alterRegion(
@CliOption (key = CliStrings.ALTER_REGION__REGION,
mandatory = true,
@@ -1000,7 +1001,7 @@ public class CreateAlterDestroyRegionCommands extends AbstractCommandsSupport {
@CliCommand(value = { CliStrings.DESTROY_REGION }, help = CliStrings.DESTROY_REGION__HELP)
@CliMetaData(shellOnly = false, relatedTopic = CliStrings.TOPIC_GEMFIRE_REGION, writesToSharedConfiguration = true)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.DESTROY_REGION)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.DESTROY)
public Result destroyRegion(
@CliOption(key = CliStrings.DESTROY_REGION__REGION,
optionContext = ConverterHint.REGIONPATH,
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java
index f091fd5..45ecb7f 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java
@@ -16,26 +16,6 @@
*/
package com.gemstone.gemfire.management.internal.cli.commands;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-import java.util.concurrent.Callable;
-import java.util.concurrent.CancellationException;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.Future;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;
-
-import org.springframework.shell.core.CommandMarker;
-import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
-import org.springframework.shell.core.annotation.CliCommand;
-import org.springframework.shell.core.annotation.CliOption;
-
import com.gemstone.gemfire.LogWriter;
import com.gemstone.gemfire.cache.Cache;
import com.gemstone.gemfire.cache.CacheClosedException;
@@ -77,8 +57,27 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import org.springframework.shell.core.CommandMarker;
+import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.StringTokenizer;
+import java.util.concurrent.Callable;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.Future;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
/**
*
@@ -99,7 +98,7 @@ public class DataCommands implements CommandMarker {
@CliCommand(value = CliStrings.REBALANCE, help = CliStrings.REBALANCE__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_DATA,
CliStrings.TOPIC_GEMFIRE_REGION })
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.REBALANCE)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.REBALANCE)
public Result rebalance(
@CliOption(key = CliStrings.REBALANCE__INCLUDEREGION, unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE, help = CliStrings.REBALANCE__INCLUDEREGION__HELP) String[] includeRegions,
@CliOption(key = CliStrings.REBALANCE__EXCLUDEREGION, unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE, help = CliStrings.REBALANCE__EXCLUDEREGION__HELP) String[] excludeRegions,
@@ -836,7 +835,7 @@ public class DataCommands implements CommandMarker {
@CliCommand(value = CliStrings.EXPORT_DATA, help = CliStrings.EXPORT_DATA__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_DATA,
CliStrings.TOPIC_GEMFIRE_REGION })
- @ResourceOperation(resource = Resource.REGION, operation= ResourceConstants.EXPORT_DATA)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.EXPORT)
public Result exportData(
@CliOption(key = CliStrings.EXPORT_DATA__REGION, mandatory = true, optionContext = ConverterHint.REGIONPATH, help = CliStrings.EXPORT_DATA__REGION__HELP) String regionName,
@CliOption(key = CliStrings.EXPORT_DATA__FILE, unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE, mandatory = true, help = CliStrings.EXPORT_DATA__FILE__HELP) String filePath,
@@ -892,7 +891,7 @@ public class DataCommands implements CommandMarker {
@CliCommand(value = CliStrings.IMPORT_DATA, help = CliStrings.IMPORT_DATA__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_DATA,
CliStrings.TOPIC_GEMFIRE_REGION })
- @ResourceOperation(resource = Resource.REGION, operation= ResourceConstants.IMPORT_DATA)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.IMPORT)
public Result importData(
@CliOption(key = CliStrings.IMPORT_DATA__REGION, optionContext = ConverterHint.REGIONPATH, mandatory = true, help = CliStrings.IMPORT_DATA__REGION__HELP) String regionName,
@CliOption(key = CliStrings.IMPORT_DATA__FILE, mandatory = true, unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE, help = CliStrings.IMPORT_DATA__FILE__HELP) String filePath,
@@ -948,7 +947,7 @@ public class DataCommands implements CommandMarker {
@CliMetaData(shellOnly = false, relatedTopic = {
CliStrings.TOPIC_GEMFIRE_DATA, CliStrings.TOPIC_GEMFIRE_REGION })
@CliCommand(value = { CliStrings.PUT }, help = CliStrings.PUT__HELP)
- @ResourceOperation(resource = Resource.REGION, operation= ResourceConstants.PUT)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.PUT)
public Result put(
@CliOption(key = { CliStrings.PUT__KEY }, mandatory = true, help = CliStrings.PUT__KEY__HELP) String key,
@CliOption(key = { CliStrings.PUT__VALUE }, mandatory = true, help = CliStrings.PUT__VALUE__HELP) String value,
@@ -1016,7 +1015,7 @@ public class DataCommands implements CommandMarker {
@CliMetaData(shellOnly = false, relatedTopic = {
CliStrings.TOPIC_GEMFIRE_DATA, CliStrings.TOPIC_GEMFIRE_REGION })
@CliCommand(value = { CliStrings.GET }, help = CliStrings.GET__HELP)
- @ResourceOperation(resource = Resource.REGION, operation= ResourceConstants.GET)
+ @ResourceOperation(resource = Resource.REGION, operation= OperationCode.GET)
public Result get(
@CliOption(key = { CliStrings.GET__KEY }, mandatory = true, help = CliStrings.GET__KEY__HELP) String key,
@CliOption(key = { CliStrings.GET__REGIONNAME }, mandatory = true, help = CliStrings.GET__REGIONNAME__HELP, optionContext = ConverterHint.REGIONPATH) String regionPath,
@@ -1071,7 +1070,7 @@ public class DataCommands implements CommandMarker {
@CliMetaData(shellOnly = false, relatedTopic = {
CliStrings.TOPIC_GEMFIRE_DATA, CliStrings.TOPIC_GEMFIRE_REGION })
@CliCommand(value = { CliStrings.LOCATE_ENTRY }, help = CliStrings.LOCATE_ENTRY__HELP)
- @ResourceOperation(resource = Resource.REGION, operation= ResourceConstants.LOCATE_ENTRY)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.GET)
public Result locateEntry(
@CliOption(key = { CliStrings.LOCATE_ENTRY__KEY }, mandatory = true, help = CliStrings.LOCATE_ENTRY__KEY__HELP) String key,
@CliOption(key = { CliStrings.LOCATE_ENTRY__REGIONNAME }, mandatory = true, help = CliStrings.LOCATE_ENTRY__REGIONNAME__HELP, optionContext = ConverterHint.REGIONPATH) String regionPath,
@@ -1119,7 +1118,7 @@ public class DataCommands implements CommandMarker {
@CliMetaData(shellOnly = false, relatedTopic = {
CliStrings.TOPIC_GEMFIRE_DATA, CliStrings.TOPIC_GEMFIRE_REGION })
@CliCommand(value = { CliStrings.REMOVE }, help = CliStrings.REMOVE__HELP)
- @ResourceOperation(resource = Resource.REGION, operation= ResourceConstants.REMOVE)
+ @ResourceOperation(resource = Resource.REGION, operation = OperationCode.DELETE)
public Result remove(
@CliOption(key = { CliStrings.REMOVE__KEY }, help = CliStrings.REMOVE__KEY__HELP) String key,
@CliOption(key = { CliStrings.REMOVE__REGION }, mandatory = true, help = CliStrings.REMOVE__REGION__HELP, optionContext = ConverterHint.REGIONPATH) String regionPath,
@@ -1174,10 +1173,10 @@ public class DataCommands implements CommandMarker {
CliStrings.TOPIC_GEMFIRE_DATA, CliStrings.TOPIC_GEMFIRE_REGION })
@MultiStepCommand
@CliCommand(value = { CliStrings.QUERY }, help = CliStrings.QUERY__HELP)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.QUERY)
+ @ResourceOperation(resource = Resource.QUERY, operation = OperationCode.QUERY)
public Object query(
@CliOption(key = CliStrings.QUERY__QUERY, help = CliStrings.QUERY__QUERY__HELP, mandatory = true) final String query,
- @CliOption(key = CliStrings.QUERY__STEPNAME, mandatory = false, help = "Stpe name", unspecifiedDefaultValue = CliStrings.QUERY__STEPNAME__DEFAULTVALUE) String stepName,
+ @CliOption(key = CliStrings.QUERY__STEPNAME, mandatory = false, help = "Step name", unspecifiedDefaultValue = CliStrings.QUERY__STEPNAME__DEFAULTVALUE) String stepName,
@CliOption(key = CliStrings.QUERY__INTERACTIVE, mandatory = false, help = CliStrings.QUERY__INTERACTIVE__HELP, unspecifiedDefaultValue = "true") final boolean interactive) {
if (!CliUtil.isGfshVM()
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java
index 23cc687..547e854 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java
@@ -53,6 +53,8 @@ import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
import org.springframework.shell.core.annotation.CliCommand;
import org.springframework.shell.core.annotation.CliOption;
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
* Commands for deploying, un-deploying and listing files deployed using the command line shell.
* <p/>
@@ -79,7 +81,7 @@ public final class DeployCommands extends AbstractCommandsSupport implements Com
*/
@CliCommand(value = { CliStrings.DEPLOY }, help = CliStrings.DEPLOY__HELP)
@CliMetaData(interceptor = "com.gemstone.gemfire.management.internal.cli.commands.DeployCommands$Interceptor", relatedTopic={CliStrings.TOPIC_GEMFIRE_CONFIG}, writesToSharedConfiguration=true)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.DEPLOY)
+ @ResourceOperation(resource = Resource.FUNCTION, operation = OperationCode.DEPLOY)
public final Result deploy(
@CliOption(key = { CliStrings.DEPLOY__GROUP }, help = CliStrings.DEPLOY__GROUP__HELP, optionContext=ConverterHint.MEMBERGROUP)
@CliMetaData (valueSeparator = ",")
@@ -162,7 +164,7 @@ public final class DeployCommands extends AbstractCommandsSupport implements Com
*/
@CliCommand(value = { CliStrings.UNDEPLOY }, help = CliStrings.UNDEPLOY__HELP)
@CliMetaData(relatedTopic={CliStrings.TOPIC_GEMFIRE_CONFIG}, writesToSharedConfiguration=true)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.UNDEPLOY)
+ @ResourceOperation(resource = Resource.FUNCTION, operation = OperationCode.UNDEPLOY)
public final Result undeploy(
@CliOption(key = { CliStrings.UNDEPLOY__GROUP },
help = CliStrings.UNDEPLOY__GROUP__HELP,
@@ -233,7 +235,7 @@ public final class DeployCommands extends AbstractCommandsSupport implements Com
*/
@CliCommand(value = { CliStrings.LIST_DEPLOYED }, help = CliStrings.LIST_DEPLOYED__HELP)
@CliMetaData(relatedTopic={CliStrings.TOPIC_GEMFIRE_CONFIG})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.FUNCTION, operation= OperationCode.LIST)
public final Result listDeployed(
@CliOption(key = { CliStrings.LIST_DEPLOYED__GROUP },
help = CliStrings.LIST_DEPLOYED__GROUP__HELP)
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java
index a825f97..6a15930 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java
@@ -16,29 +16,6 @@
*/
package com.gemstone.gemfire.management.internal.cli.commands;
-import java.io.BufferedReader;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.PrintStream;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-
-import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
-import org.springframework.shell.core.annotation.CliCommand;
-import org.springframework.shell.core.annotation.CliOption;
-
import com.gemstone.gemfire.GemFireIOException;
import com.gemstone.gemfire.SystemFailure;
import com.gemstone.gemfire.admin.BackupStatus;
@@ -95,8 +72,31 @@ import com.gemstone.gemfire.management.internal.configuration.SharedConfiguratio
import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
import com.gemstone.gemfire.management.internal.messages.CompactRequest;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
+import java.io.BufferedReader;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.PrintStream;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
/**
* The DiskStoreCommands class encapsulates all GemFire Disk Store commands in Gfsh.
@@ -125,7 +125,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.BACKUP_DISK_STORE, help=CliStrings.BACKUP_DISK_STORE__HELP)
@CliMetaData(relatedTopic={ CliStrings.TOPIC_GEMFIRE_DISKSTORE })
- @ResourceOperation(resource = Resource.DISKSTORE, operation= ResourceConstants.BACKUP_DISKSTORE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.BACKUP)
public Result backupDiskStore(
@CliOption(key=CliStrings.BACKUP_DISK_STORE__DISKDIRS,
@@ -220,7 +220,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value = CliStrings.LIST_DISK_STORE, help = CliStrings.LIST_DISK_STORE__HELP)
@CliMetaData(shellOnly = false, relatedTopic = { CliStrings.TOPIC_GEMFIRE_DISKSTORE })
- @ResourceOperation(resource = Resource.DISKSTORE, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.LIST)
public Result listDiskStore() {
try {
Set<DistributedMember> dataMembers = getNormalMembers(getCache());
@@ -289,7 +289,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.CREATE_DISK_STORE, help=CliStrings.CREATE_DISK_STORE__HELP)
@CliMetaData(shellOnly=false, relatedTopic={CliStrings.TOPIC_GEMFIRE_DISKSTORE}, writesToSharedConfiguration=true)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.CREATE_DISKSTORE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.CREATE)
public Result createDiskStore(@CliOption(key=CliStrings.CREATE_DISK_STORE__NAME,
mandatory=true,
optionContext = ConverterHint.DISKSTORE_ALL,
@@ -430,7 +430,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.COMPACT_DISK_STORE, help=CliStrings.COMPACT_DISK_STORE__HELP)
@CliMetaData(shellOnly=false, relatedTopic={CliStrings.TOPIC_GEMFIRE_DISKSTORE})
- @ResourceOperation(resource = Resource.DISKSTORE, operation= ResourceConstants.COMPACT_DISKSTORE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.COMPACT)
public Result compactDiskStore(@CliOption(key=CliStrings.COMPACT_DISK_STORE__NAME,
mandatory=true,
optionContext = ConverterHint.DISKSTORE_ALL,
@@ -560,9 +560,9 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.COMPACT_OFFLINE_DISK_STORE, help=CliStrings.COMPACT_OFFLINE_DISK_STORE__HELP)
@CliMetaData(shellOnly=true, relatedTopic={CliStrings.TOPIC_GEMFIRE_DISKSTORE})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE_OFFLINE, operation = OperationCode.COMPACT)
public Result compactOfflineDiskStore(
- @CliOption(key=CliStrings.COMPACT_OFFLINE_DISK_STORE__NAME,
+ @CliOption(key=CliStrings.COMPACT_OFFLINE_DISK_STORE__NAME,
mandatory=true,
help=CliStrings.COMPACT_OFFLINE_DISK_STORE__NAME__HELP)
String diskStoreName,
@@ -704,7 +704,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.UPGRADE_OFFLINE_DISK_STORE, help=CliStrings.UPGRADE_OFFLINE_DISK_STORE__HELP)
@CliMetaData(shellOnly=true, relatedTopic={CliStrings.TOPIC_GEMFIRE_DISKSTORE})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE_OFFLINE, operation = OperationCode.ALL)
public Result upgradeOfflineDiskStore(
@CliOption(key=CliStrings.UPGRADE_OFFLINE_DISK_STORE__NAME,
mandatory=true,
@@ -874,7 +874,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value = CliStrings.DESCRIBE_DISK_STORE, help = CliStrings.DESCRIBE_DISK_STORE__HELP)
@CliMetaData(shellOnly = false, relatedTopic = { CliStrings.TOPIC_GEMFIRE_DISKSTORE })
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.LIST)
public Result describeDiskStore(@CliOption(key = CliStrings.DESCRIBE_DISK_STORE__MEMBER, mandatory = true, optionContext = ConverterHint.MEMBERIDNAME, help = CliStrings.DESCRIBE_DISK_STORE__MEMBER__HELP)
final String memberName,
@CliOption(key = CliStrings.DESCRIBE_DISK_STORE__NAME, mandatory = true, optionContext = ConverterHint.DISKSTORE_ALL, help = CliStrings.DESCRIBE_DISK_STORE__NAME__HELP)
@@ -1001,7 +1001,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value = CliStrings.REVOKE_MISSING_DISK_STORE, help = CliStrings.REVOKE_MISSING_DISK_STORE__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_DISKSTORE })
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.REVOKE_MISSING_DISKSTORE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.REVOKE_MISSING)
public Result revokeMissingDiskStore(
@CliOption(key = CliStrings.REVOKE_MISSING_DISK_STORE__ID, mandatory = true, help = CliStrings.REVOKE_MISSING_DISK_STORE__ID__HELP)
String id) {
@@ -1028,7 +1028,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value = CliStrings.SHOW_MISSING_DISK_STORE, help = CliStrings.SHOW_MISSING_DISK_STORE__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_DISKSTORE })
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.SHOW_MISSING)
public Result showMissingDiskStore() {
try {
@@ -1067,7 +1067,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.DESCRIBE_OFFLINE_DISK_STORE, help=CliStrings.DESCRIBE_OFFLINE_DISK_STORE__HELP)
@CliMetaData(shellOnly=true, relatedTopic={CliStrings.TOPIC_GEMFIRE_DISKSTORE})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE_OFFLINE, operation = OperationCode.LIST)
public Result describeOfflineDiskStore(
@CliOption (key=CliStrings.DESCRIBE_OFFLINE_DISK_STORE__DISKSTORENAME,
mandatory=true,
@@ -1116,7 +1116,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.EXPORT_OFFLINE_DISK_STORE, help=CliStrings.EXPORT_OFFLINE_DISK_STORE__HELP)
@CliMetaData(shellOnly=true, relatedTopic={CliStrings.TOPIC_GEMFIRE_DISKSTORE})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE_OFFLINE, operation = OperationCode.EXPORT)
public Result exportOfflineDiskStore(
@CliOption (key=CliStrings.EXPORT_OFFLINE_DISK_STORE__DISKSTORENAME,
mandatory=true,
@@ -1165,7 +1165,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.VALIDATE_DISK_STORE, help=CliStrings.VALIDATE_DISK_STORE__HELP)
@CliMetaData(shellOnly=true, relatedTopic = {CliStrings.TOPIC_GEMFIRE_DISKSTORE}) //offline command
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.VALIDATE)
public Result validateDiskStore(
@CliOption(key=CliStrings.VALIDATE_DISK_STORE__NAME, mandatory=true,
help=CliStrings.VALIDATE_DISK_STORE__NAME__HELP)
@@ -1247,7 +1247,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.ALTER_DISK_STORE, help=CliStrings.ALTER_DISK_STORE__HELP)
@CliMetaData(shellOnly=true, relatedTopic={CliStrings.TOPIC_GEMFIRE_DISKSTORE})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISKSTORE_OFFLINE, operation = OperationCode.ALTER)
public Result alterOfflineDiskStore(
@CliOption (key=CliStrings.ALTER_DISK_STORE__DISKSTORENAME,
mandatory=true,
@@ -1379,7 +1379,7 @@ public class DiskStoreCommands extends AbstractCommandsSupport {
@CliCommand(value=CliStrings.DESTROY_DISK_STORE, help=CliStrings.DESTROY_DISK_STORE__HELP)
@CliMetaData(shellOnly=false, relatedTopic={CliStrings.TOPIC_GEMFIRE_DISKSTORE}, writesToSharedConfiguration=true)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.DESTROY_DISKSTORE)
+ @ResourceOperation(resource = Resource.DISKSTORE, operation = OperationCode.DESTROY)
public Result destroyDiskStore(
@CliOption (key=CliStrings.DESTROY_DISK_STORE__NAME,
mandatory=true,
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java
index e6de2ec..d05e95c 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java
@@ -16,32 +16,13 @@
*/
package com.gemstone.gemfire.management.internal.cli.commands;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeMap;
-import java.util.TreeSet;
-
-import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
-import org.springframework.shell.core.annotation.CliCommand;
-import org.springframework.shell.core.annotation.CliOption;
-
-import com.gemstone.gemfire.cache.Cache;
-import com.gemstone.gemfire.cache.CacheFactory;
import com.gemstone.gemfire.cache.execute.ResultCollector;
import com.gemstone.gemfire.distributed.DistributedMember;
-import com.gemstone.gemfire.internal.lang.StringUtils;
-import com.gemstone.gemfire.management.cli.Result;
-import com.gemstone.gemfire.management.internal.cli.CliUtil;
import com.gemstone.gemfire.management.cli.CliMetaData;
import com.gemstone.gemfire.management.cli.ConverterHint;
+import com.gemstone.gemfire.management.cli.Result;
+import com.gemstone.gemfire.management.internal.cli.CliUtil;
import com.gemstone.gemfire.management.internal.cli.domain.DurableCqNamesResult;
-import com.gemstone.gemfire.management.internal.cli.domain.IndexDetails.IndexStatisticsDetails;
import com.gemstone.gemfire.management.internal.cli.domain.MemberResult;
import com.gemstone.gemfire.management.internal.cli.domain.SubscriptionQueueSizeResult;
import com.gemstone.gemfire.management.internal.cli.functions.CloseDurableClientFunction;
@@ -50,15 +31,24 @@ import com.gemstone.gemfire.management.internal.cli.functions.GetSubscriptionQue
import com.gemstone.gemfire.management.internal.cli.functions.ListDurableCqNamesFunction;
import com.gemstone.gemfire.management.internal.cli.i18n.CliStrings;
import com.gemstone.gemfire.management.internal.cli.result.CommandResultException;
-import com.gemstone.gemfire.management.internal.cli.result.CompositeResultData;
import com.gemstone.gemfire.management.internal.cli.result.ErrorResultData;
import com.gemstone.gemfire.management.internal.cli.result.InfoResultData;
import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
-import com.gemstone.gemfire.management.internal.cli.result.ResultData;
import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeMap;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
/**
* The DurableClientCommands class encapsulates all GemFire shell (Gfsh) commands related to
@@ -77,7 +67,7 @@ public class DurableClientCommands extends AbstractCommandsSupport {
@CliCommand(value = CliStrings.LIST_DURABLE_CQS, help = CliStrings.LIST_DURABLE_CQS__HELP)
@CliMetaData(shellOnly = false)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.CONTINUOUS_QUERY, operation = OperationCode.LIST)
public Result listDurableClientCqs(
@CliOption (key = CliStrings.LIST_DURABLE_CQS__DURABLECLIENTID,
mandatory=true,
@@ -154,7 +144,7 @@ public class DurableClientCommands extends AbstractCommandsSupport {
@CliCommand(value = CliStrings.COUNT_DURABLE_CQ_EVENTS, help = CliStrings.COUNT_DURABLE_CQ_EVENTS__HELP)
@CliMetaData(shellOnly = false)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.CONTINUOUS_QUERY, operation = OperationCode.LIST)
public Result countDurableCqEvents(
@CliOption (key = CliStrings.COUNT_DURABLE_CQ_EVENTS__DURABLE__CLIENT__ID,
mandatory=true,
@@ -206,7 +196,7 @@ public class DurableClientCommands extends AbstractCommandsSupport {
@CliCommand(value = CliStrings.CLOSE_DURABLE_CLIENTS, help = CliStrings.CLOSE_DURABLE_CLIENTS__HELP)
@CliMetaData(shellOnly = false)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.CLOSE_DURABLE_CLIENT)
+ @ResourceOperation(resource = Resource.CONTINUOUS_QUERY, operation= OperationCode.STOP)
public Result closeDurableClient(
@CliOption (key = CliStrings.CLOSE_DURABLE_CLIENTS__CLIENT__ID,
mandatory=true,
@@ -245,8 +235,8 @@ public class DurableClientCommands extends AbstractCommandsSupport {
@CliCommand(value = CliStrings.CLOSE_DURABLE_CQS, help = CliStrings.CLOSE_DURABLE_CQS__HELP)
@CliMetaData(shellOnly = false)
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.CLOSE_DURABLE_CQ)
- public Result closeDurableCqs(
+ @ResourceOperation(resource = Resource.CONTINUOUS_QUERY, operation = OperationCode.STOP)
+ public Result closeDurableCqs(
@CliOption (key = CliStrings.CLOSE_DURABLE_CQS__DURABLE__CLIENT__ID,
mandatory=true,
help = CliStrings.CLOSE_DURABLE_CQS__DURABLE__CLIENT__ID__HELP
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java
index 60eea3e..ef21179 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java
@@ -16,14 +16,6 @@
*/
package com.gemstone.gemfire.management.internal.cli.commands;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
import com.gemstone.gemfire.cache.execute.ResultCollector;
import com.gemstone.gemfire.distributed.DistributedMember;
import com.gemstone.gemfire.internal.cache.GemFireCacheImpl;
@@ -44,13 +36,21 @@ import com.gemstone.gemfire.management.internal.cli.result.InfoResultData;
import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-
import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
import org.springframework.shell.core.annotation.CliCommand;
import org.springframework.shell.core.annotation.CliOption;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/****
* Commands for the shared configuration
* @author bansods
@@ -65,7 +65,7 @@ public class ExportImportSharedConfigurationCommands extends AbstractCommandsSup
@CliCommand(value = { CliStrings.EXPORT_SHARED_CONFIG }, help = CliStrings.EXPORT_SHARED_CONFIG__HELP)
@CliMetaData(interceptor = "com.gemstone.gemfire.management.internal.cli.commands.ExportImportSharedConfigurationCommands$ExportInterceptor", readsSharedConfiguration=true, relatedTopic = {CliStrings.TOPIC_GEMFIRE_CONFIG})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.EXPORT_CONFIG)
+ @ResourceOperation(resource = Resource.CLUSTER_CONFIGURTION, operation = OperationCode.EXPORT)
public Result exportSharedConfig(
@CliOption(key = { CliStrings.EXPORT_SHARED_CONFIG__FILE},
mandatory = true,
@@ -116,7 +116,7 @@ public class ExportImportSharedConfigurationCommands extends AbstractCommandsSup
@CliCommand(value = { CliStrings.IMPORT_SHARED_CONFIG }, help = CliStrings.IMPORT_SHARED_CONFIG__HELP)
@CliMetaData(interceptor = "com.gemstone.gemfire.management.internal.cli.commands.ExportImportSharedConfigurationCommands$ImportInterceptor", writesToSharedConfiguration=true, relatedTopic = {CliStrings.TOPIC_GEMFIRE_CONFIG})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.IMPORT_CONFIG)
+ @ResourceOperation(resource = Resource.CLUSTER_CONFIGURTION, operation = OperationCode.IMPORT)
@SuppressWarnings("unchecked")
public Result importSharedConfig(
@CliOption(key = { CliStrings.IMPORT_SHARED_CONFIG__ZIP},
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java
index 9a61b1b..c18d0e3 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java
@@ -15,6 +15,7 @@
* limitations under the License.
*/
package com.gemstone.gemfire.management.internal.cli.commands;
+
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
@@ -64,9 +65,10 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
+
/**
* @author David Hoots
*
@@ -82,7 +84,7 @@ public class FunctionCommands implements CommandMarker {
@CliCommand(value = CliStrings.EXECUTE_FUNCTION, help = CliStrings.EXECUTE_FUNCTION__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_FUNCTION })
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.EXECUTE_FUNCTION)
+ @ResourceOperation(resource = Resource.FUNCTION, operation = OperationCode.EXECUTE)
public Result executeFunction(
//TODO: Add optioncontext for functionID
@CliOption(key = CliStrings.EXECUTE_FUNCTION__ID,
@@ -455,7 +457,7 @@ public class FunctionCommands implements CommandMarker {
@CliCommand(value = CliStrings.DESTROY_FUNCTION, help = CliStrings.DESTROY_FUNCTION__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_FUNCTION } ,
interceptor = "com.gemstone.gemfire.management.internal.cli.commands.FunctionCommands$Interceptor")
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.DESTROY_FUNCTION)
+ @ResourceOperation(resource = Resource.FUNCTION, operation = OperationCode.DESTROY)
//TODO: Add optioncontext for functionId
public Result destroyFunction(
@CliOption(key = CliStrings.DESTROY_FUNCTION__ID,
@@ -579,7 +581,7 @@ public class FunctionCommands implements CommandMarker {
@CliCommand(value = CliStrings.LIST_FUNCTION, help = CliStrings.LIST_FUNCTION__HELP)
@CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_FUNCTION })
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.FUNCTION, operation = OperationCode.LIST)
public Result listFunction(
@CliOption(key = CliStrings.LIST_FUNCTION__MATCHES,
help = CliStrings.LIST_FUNCTION__MATCHES__HELP)String matches,
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/575660a0/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/GfshHelpCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/GfshHelpCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/GfshHelpCommands.java
index d946ffb..a144362 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/GfshHelpCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/GfshHelpCommands.java
@@ -16,13 +16,6 @@
*/
package com.gemstone.gemfire.management.internal.cli.commands;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-
-import org.springframework.shell.core.CommandMarker;
-import org.springframework.shell.core.annotation.CliCommand;
-
import com.gemstone.gemfire.management.cli.CliMetaData;
import com.gemstone.gemfire.management.cli.ConverterHint;
import com.gemstone.gemfire.management.cli.Result;
@@ -36,8 +29,15 @@ import com.gemstone.gemfire.management.internal.cli.result.CompositeResultData.S
import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
import com.gemstone.gemfire.management.internal.security.Resource;
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
import com.gemstone.gemfire.management.internal.security.ResourceOperation;
+import org.springframework.shell.core.CommandMarker;
+import org.springframework.shell.core.annotation.CliCommand;
+
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import static com.gemstone.gemfire.cache.operations.OperationContext.OperationCode;
/**
*
@@ -54,7 +54,7 @@ public class GfshHelpCommands implements CommandMarker{
@CliCommand(value = CliStrings.HELP, help = CliStrings.HELP__HELP)
@CliMetaData(shellOnly=true, relatedTopic = {CliStrings.TOPIC_GEMFIRE_HELP})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation = OperationCode.ALL)
public Result obtainHelp(
@CliArgument(name = CliStrings.HELP__COMMAND,
argumentContext = CliStrings.PARAM_CONTEXT_HELP,
@@ -67,7 +67,7 @@ public class GfshHelpCommands implements CommandMarker{
@CliCommand(value = CliStrings.HINT, help = CliStrings.HINT__HELP)
@CliMetaData(shellOnly=true, relatedTopic = {CliStrings.TOPIC_GEMFIRE_HELP})
- @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation= ResourceConstants.LIST_DS)
+ @ResourceOperation(resource = Resource.DISTRIBUTED_SYSTEM, operation = OperationCode.ALL)
public Result hint(
@CliArgument(name = CliStrings.HINT__TOPICNAME,
argumentContext = ConverterHint.HINTTOPIC,