Github user galen-pivotal commented on a diff in the pull request:

    https://github.com/apache/geode/pull/719#discussion_r134634705
  
    --- Diff: 
geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/registry/OperationContextRegistry.java
 ---
    @@ -47,41 +48,57 @@ private void addContexts() {
         operationContexts.put(RequestAPICase.GETREQUEST,
             new OperationContext<>(ClientProtocol.Request::getGetRequest,
                 new GetRequestOperationHandler(),
    -            opsResp -> 
ClientProtocol.Response.newBuilder().setGetResponse(opsResp)));
    +            opsResp -> 
ClientProtocol.Response.newBuilder().setGetResponse(opsResp),
    +            new ResourcePermission(ResourcePermission.Resource.DATA,
    +                ResourcePermission.Operation.READ)));
     
         operationContexts.put(RequestAPICase.GETALLREQUEST,
             new OperationContext<>(ClientProtocol.Request::getGetAllRequest,
                 new GetAllRequestOperationHandler(),
    -            opsResp -> 
ClientProtocol.Response.newBuilder().setGetAllResponse(opsResp)));
    +            opsResp -> 
ClientProtocol.Response.newBuilder().setGetAllResponse(opsResp),
    +            new ResourcePermission(ResourcePermission.Resource.DATA,
    +                ResourcePermission.Operation.READ)));
     
         operationContexts.put(RequestAPICase.PUTREQUEST,
             new OperationContext<>(ClientProtocol.Request::getPutRequest,
                 new PutRequestOperationHandler(),
    -            opsResp -> 
ClientProtocol.Response.newBuilder().setPutResponse(opsResp)));
    +            opsResp -> 
ClientProtocol.Response.newBuilder().setPutResponse(opsResp),
    +            new ResourcePermission(ResourcePermission.Resource.DATA,
    +                ResourcePermission.Operation.WRITE)));
     
         operationContexts.put(RequestAPICase.PUTALLREQUEST,
             new OperationContext<>(ClientProtocol.Request::getPutAllRequest,
                 new PutAllRequestOperationHandler(),
    -            opsResp -> 
ClientProtocol.Response.newBuilder().setPutAllResponse(opsResp)));
    +            opsResp -> 
ClientProtocol.Response.newBuilder().setPutAllResponse(opsResp),
    +            new ResourcePermission(ResourcePermission.Resource.DATA,
    +                ResourcePermission.Operation.WRITE)));
     
         operationContexts.put(RequestAPICase.REMOVEREQUEST,
             new OperationContext<>(ClientProtocol.Request::getRemoveRequest,
                 new RemoveRequestOperationHandler(),
    -            opsResp -> 
ClientProtocol.Response.newBuilder().setRemoveResponse(opsResp)));
    +            opsResp -> 
ClientProtocol.Response.newBuilder().setRemoveResponse(opsResp),
    +            new ResourcePermission(ResourcePermission.Resource.DATA,
    +                ResourcePermission.Operation.WRITE)));
     
         operationContexts.put(RequestAPICase.GETREGIONNAMESREQUEST,
             new 
OperationContext<>(ClientProtocol.Request::getGetRegionNamesRequest,
                 new GetRegionNamesRequestOperationHandler(),
    -            opsResp -> 
ClientProtocol.Response.newBuilder().setGetRegionNamesResponse(opsResp)));
    +            opsResp -> 
ClientProtocol.Response.newBuilder().setGetRegionNamesResponse(opsResp),
    +            new ResourcePermission(ResourcePermission.Resource.DATA,
    +                ResourcePermission.Operation.READ)));
     
         operationContexts.put(RequestAPICase.GETREGIONREQUEST,
             new OperationContext<>(ClientProtocol.Request::getGetRegionRequest,
                 new GetRegionRequestOperationHandler(),
    -            opsResp -> 
ClientProtocol.Response.newBuilder().setGetRegionResponse(opsResp)));
    +            opsResp -> 
ClientProtocol.Response.newBuilder().setGetRegionResponse(opsResp),
    +            new ResourcePermission(ResourcePermission.Resource.DATA,
    +                ResourcePermission.Operation.READ)));
     
    -    operationContexts.put(RequestAPICase.GETAVAILABLESERVERSREQUEST, new 
OperationContext<>(
    -        ClientProtocol.Request::getGetAvailableServersRequest,
    -        new GetAvailableServersOperationHandler(),
    -        opsResp -> 
ClientProtocol.Response.newBuilder().setGetAvailableServersResponse(opsResp)));
    +    operationContexts.put(RequestAPICase.GETAVAILABLESERVERSREQUEST,
    --- End diff --
    
    This is one that should be authorized for either read or write... is read a 
subset of write? I don't know.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to