- return this.<RemoveMeterOutput, Void>handleServiceCall( PRIMARY_CONNECTION,
- new Function<DataCrate<RemoveMeterOutput>,ListenableFuture<RpcResult<Void>>>() {
- @Override
- public ListenableFuture<RpcResult<Void>> apply(final DataCrate<RemoveMeterOutput> data) {
- return convertAndSend(input, data);
- }
- });
- }
-
- <T> ListenableFuture<RpcResult<Void>> convertAndSend(final Meter iputMeter, final DataCrate<T> data) {
- final MeterModInputBuilder ofMeterModInput = MeterConvertor.toMeterModInput(iputMeter, version);
- Xid xid = deviceContext.getNextXid();
- ofMeterModInput.setXid(xid.getValue());
- data.getRequestContext().setXid(xid);
- return JdkFutureAdapters.listenInPoolThread(provideConnectionAdapter(data.getiDConnection()).meterMod(ofMeterModInput.build()));
+ removeMeter.getDeviceContext().getDeviceMeterRegistry().markToBeremoved(input.getMeterId());
+ return removeMeter.handleServiceCall(input);