class PartitionWatcher extends AbstractWatcher<PartitionEvent> {

        private PartitionWatcher(Listener listener) {
            super(listener,
                  () -> WatchCreateRequest
                          .newBuilder()
                          .setWatchType(WatchType.WATCH_TYPE_PARTITION_CHANGE)
                          .build()
            );
        }

        @Override
        public void onNext(WatchResponse watchResponse) {<FILL_FUNCTION_BODY>}
    }

            WatchPartitionResponse res = watchResponse.getPartitionResponse();
            PartitionEvent event = new PartitionEvent(res.getGraph(), res.getPartitionId(),
                                                      PartitionEvent.ChangeType.grpcTypeOf(
                                                              res.getChangeType()));
            this.listener.onNext(event);
        
<no_super_class>