This is an automated email from the ASF dual-hosted git repository.

jinmeiliao 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 14bdcc6  GEODE-6966: add default jqFilter for the json result (#4060)
14bdcc6 is described below

commit 14bdcc610d62cc24986592482bbde46cc83332dc
Author: Jinmei Liao <[email protected]>
AuthorDate: Mon Sep 23 08:43:28 2019 -0700

    GEODE-6966: add default jqFilter for the json result (#4060)
    
    * add the filter for list members
---
 .../geode/management/internal/rest/ManagementLoggingFilter.java    | 5 ++++-
 .../internal/rest/controllers/ManagementControllerAdvice.java      | 2 +-
 .../internal/rest/controllers/MemberManagementController.java      | 7 ++++++-
 3 files changed, 11 insertions(+), 3 deletions(-)

diff --git 
a/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/ManagementLoggingFilter.java
 
b/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/ManagementLoggingFilter.java
index 3e43dc1..b3392b3 100644
--- 
a/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/ManagementLoggingFilter.java
+++ 
b/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/ManagementLoggingFilter.java
@@ -27,6 +27,8 @@ import org.springframework.web.filter.OncePerRequestFilter;
 import org.springframework.web.util.ContentCachingRequestWrapper;
 import org.springframework.web.util.ContentCachingResponseWrapper;
 
+import 
org.apache.geode.management.internal.rest.controllers.ManagementControllerAdvice;
+
 public class ManagementLoggingFilter extends OncePerRequestFilter {
 
   // Because someone is going to want to disable this.
@@ -82,7 +84,8 @@ public class ManagementLoggingFilter extends 
OncePerRequestFilter {
     String responsePattern = "Management Response: Status=%s; response=%s";
     String payload = 
getContentAsString(wrappedResponse.getContentAsByteArray(),
         wrappedResponse.getCharacterEncoding());
-    logger.info(String.format(responsePattern, response.getStatus(), payload));
+    logger.info(String.format(responsePattern, response.getStatus(),
+        ManagementControllerAdvice.removeClassFromJsonText(payload)));
   }
 
   private String getContentAsString(byte[] buf, String encoding) {
diff --git 
a/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/ManagementControllerAdvice.java
 
b/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/ManagementControllerAdvice.java
index b432060..73ad7ec 100644
--- 
a/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/ManagementControllerAdvice.java
+++ 
b/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/ManagementControllerAdvice.java
@@ -83,7 +83,7 @@ public class ManagementControllerAdvice implements 
ResponseBodyAdvice<Object> {
     }
   }
 
-  static String removeClassFromJsonText(String json) {
+  public static String removeClassFromJsonText(String json) {
     // remove entire key and object if class was the only attribute present
     // otherwise remove just the class attribute
     return json
diff --git 
a/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/MemberManagementController.java
 
b/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/MemberManagementController.java
index 6683c4b..6c38d9c 100644
--- 
a/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/MemberManagementController.java
+++ 
b/geode-web-management/src/main/java/org/apache/geode/management/internal/rest/controllers/MemberManagementController.java
@@ -19,6 +19,8 @@ import static 
org.apache.geode.management.configuration.Member.MEMBER_ENDPOINT;
 import static 
org.apache.geode.management.internal.rest.controllers.AbstractManagementController.MANAGEMENT_API_VERSION;
 
 import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.Extension;
+import io.swagger.annotations.ExtensionProperty;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.stereotype.Controller;
@@ -47,7 +49,10 @@ public class MemberManagementController extends 
AbstractManagementController {
     return clusterManagementService.get(config);
   }
 
-  @ApiOperation(value = "list members")
+  @ApiOperation(value = "list members",
+      extensions = {@Extension(properties = {
+          @ExtensionProperty(name = "jqFilter",
+              value = ".result[] | .runtimeInfo[] | 
{name:.memberName,status:.status}")})})
   @PreAuthorize("@securityService.authorize('CLUSTER', 'READ')")
   @RequestMapping(method = RequestMethod.GET, value = MEMBER_ENDPOINT)
   @ResponseBody

Reply via email to