public void Write(string xmlNamespace, string name, IMwsObject value) { if (value != null) { value.WriteFragmentTo(this); } }
public void Write(string namespc, string name, IMwsObject mwsObject) { if (mwsObject != null) { BeginObject(name, namespc, false); if (namespc == String.Empty) { WriteAttribute("xmlns", namespc); } mwsObject.WriteFragmentTo(this); EndObject(name); } }
/// <summary> /// Creates a MwsCall and sends the request. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="type"></param> /// <param name="requestData"></param> /// <returns></returns> public T Call <T>( IMwsRequestType <T> type, IMwsObject requestData) where T : IMwsObject { try { var servicePath = type.ServicePath; var operationName = type.OperationName; var mc = NewCall(servicePath, operationName); requestData.WriteFragmentTo(mc); var responseReader = mc.Invoke(); var rhmd = mc.GetResponseMetadataHeader(); var response = MwsUtil.NewInstance <T>(); type.SetResponseHeaderMetadata(response, rhmd); response.ReadFragmentFrom(responseReader); return(response); } catch (Exception e) { throw type.WrapException(e); } }
public void SetResponseHeaderMetadata(IMwsObject response, MwsResponseHeaderMetadata rhmd) { ((IMWSResponse)response).ResponseHeaderMetadata = new ResponseHeaderMetadata(rhmd); }