import 'dart:core'; import 'package:fis_jsonrpc/client_base.dart'; import 'package:fis_common/json_convert.dart'; import 'lock.m.dart'; class LockService extends JsonRpcClientBase { LockService( String host, { String serviceName = "ILockService", Map? headers, int? timeout, }) : super( host, serviceName, headers: headers, timeout: timeout, ) { /// 注册响应实体反序列化处理器 FJsonConvert.setDecoder((map) => ApplyLockResult.fromJson(map)); FJsonConvert.setDecoder((map) => ReleaseLockResult.fromJson(map)); } Future applyLockAsync(ApplyLockRequest request) async { var rpcRst = await call("ApplyLockAsync", request); var result = ApplyLockResult.fromJson(rpcRst as Map); return result; } Future releaseLockAsync(ReleaseLockRequest request) async { var rpcRst = await call("ReleaseLockAsync", request); var result = ReleaseLockResult.fromJson(rpcRst as Map); return result; } }