Github user yanghua commented on the issue:

    https://github.com/apache/flink/pull/5573
  
    OK, base of @aljoscha 's opinion, I describe the implementation detail 
before coding : 
    
    * define a `AccumulatorRepresentationsQueryParameter` class which extends 
`MessageQueryParameter` and contains to two representation mode 
(***stringified***  and ***serialized***)
    
    * define a `JobAccumulatorsMessageParameters` class which extends 
`MessageParameters`, and the `getQueryParameters` method will return the 
`AccumulatorRepresentationsQueryParameter`
    
    * refactor `JobAccumulatorsHeaders#getUnresolvedMessageParameters` return 
`JobAccumulatorsMessageParameters`'s instance
    
    * refactor `JobAccumulatorsHandler#handleRequest` it will query specific 
accumulator's representation base of 
`AccumulatorRepresentationsQueryParameter`, and the `JobAccumulatorsInfo` will 
be reused for both representations
    
    * in `RestClusterClient` class , let `getAccumulators` return stringified 
accumulators(`Map<String, Object>`) and `getSerializedAccumulators` return 
serialized accumulators(`Map<String, SerializedValue<Object>>`)
    
    @tillrohrmann and @GJL  hope for your opinions, Thanks.



---

Reply via email to