예제 #1
0
        public override Task <GetCanonicalTypeResponse> GetCanonicalType(
            GetCanonicalTypeRequest request, ServerCallContext context)
        {
            var type          = typeStore.GetObject(request.Type.Id);
            var canonicalType = type.GetCanonicalType();
            var response      = new GetCanonicalTypeResponse();

            if (canonicalType != null)
            {
                response.Type = GrpcFactoryUtils.CreateType(
                    canonicalType, typeStore.AddObject(canonicalType));
            }
            return(Task.FromResult(response));
        }
예제 #2
0
        public SbType GetCanonicalType()
        {
            GetCanonicalTypeResponse response = null;

            if (connection.InvokeRpc(() => {
                response =
                    client.GetCanonicalType(new GetCanonicalTypeRequest {
                    Type = grpcSbType
                });
            }))
            {
                if (response.Type != null && response.Type.Id != 0)
                {
                    return(typeFactory.Create(connection, response.Type));
                }
            }
            return(null);
        }