public void Write(string xmlNamespace, string name, IMwsObject value)
 {
     if (value != null)
     {
         value.WriteFragmentTo(this);
     }
 }
Beispiel #2
0
 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);
 }