internal RequestMetadata FromSoapMessage(Message message) { string typeName = SoapContentTypeHeader.ReadHeader(message); Type targetType = GetRequestType(typeName); return(RequestMetadata.FromSoapMessage(message, targetType)); }
private void GetOneWay(RequestMetadata metadata) { var service = (IGetOneWay <TRequest>)_creator(); var request = metadata.GetRequest <TRequest>(); service.GetOneWay(request); }
public void ProcessOneWay(RequestMetadata metadata) { switch (metadata.OperationType) { case OperationType.Get: GetOneWay(metadata); break; case OperationType.Post: PostOneWay(metadata); break; case OperationType.Put: PutOneWay(metadata); break; case OperationType.Delete: DeleteOneWay(metadata); break; default: string message = string.Format("Invalid operation type: {0}", metadata.OperationType); throw Error.InvalidOperation(message); } }
private void Delete(RequestMetadata metadata) { var service = (IDelete <TRequest>)_creator(); var request = metadata.GetRequest <TRequest>(); service.Delete(request); }
public void Process(RequestMetadata metadata) { switch (metadata.OperationType) { case OperationType.Get: Get(metadata); break; case OperationType.Post: Post(metadata); break; case OperationType.Put: Put(metadata); break; case OperationType.Delete: Delete(metadata); break; default: string message = string.Format("Invalid operation type: {0}", metadata.OperationType); throw new InvalidOperationException(message); } }
private void Put(RequestMetadata metadata) { var service = (IPut <TRequest>)_creator(); var request = metadata.GetRequest <TRequest>(); service.Put(request); }
private Message Get(RequestMetadata metadata) { var service = (IGet <TRequest>)_creator(); var request = metadata.GetRequest <TRequest>(); object result = service.Get(request); return(metadata.CreateResponse(result)); }
internal RequestMetadata FromRestMessage(Message message) { UriTemplateMatch templateMatch = WebOperationContext.Current.IncomingRequest.UriTemplateMatch; NameValueCollection queryParams = templateMatch.QueryParameters; string typeName = UrlSerializer.FromQueryParams(queryParams).GetTypeValue(); Type targetType = GetRequestType(typeName); return(RequestMetadata.FromRestMessage(message, targetType)); }
public Message Process(RequestMetadata metadata) { switch (metadata.OperationType) { case OperationType.Get: return(Get(metadata)); case OperationType.Post: return(Post(metadata)); case OperationType.Put: return(Put(metadata)); case OperationType.Delete: return(Delete(metadata)); default: string message = string.Format("Invalid operation type: {0}", metadata.OperationType); throw Error.InvalidOperation(message); } }