public override async Task <TReturnType> InvokeAsyncGeneric <TReturnType>(MethodInfo method, object[] args) { var serializedRequest = SerializeRequest(method, args); var lambdaRequest = new LambdaRequest(_serviceMap.GetKey <TContract>(), serializedRequest); var serializedResponse = await _lambdaService.ExecuteRequest(lambdaRequest); var responseBytes = Convert.FromBase64String(serializedResponse); //This would happen at the client var deserializedObject = _serializer.ResponseSerializer.DeserializeResponse <TReturnType>(method, responseBytes); return(deserializedObject); }
/// <summary> /// A simple function that takes a string and does a ToUpper /// </summary> /// <param name="input"></param> /// <param name="context"></param> /// <returns></returns> public async Task <string> FunctionHandler(LambdaRequest input, ILambdaContext context) { return(await _service.ExecuteRequest(input)); }