private static void WriteDevice(string environment, LiveDevice device) { var deviceFile = DeviceIdManager.GetDeviceFile(environment); if (deviceFile.Directory != null && !deviceFile.Directory.Exists) { deviceFile.Directory.Create(); } using (var fileStream = deviceFile.Open(FileMode.CreateNew, FileAccess.Write, FileShare.None)) { DeviceIdManager.Serialize <LiveDevice>(fileStream, device); } }
private static DeviceRegistrationResponse ExecuteRegistrationRequest(string url, DeviceRegistrationRequest registrationRequest) { var webRequest = WebRequest.Create(url); webRequest.ContentType = "application/soap+xml; charset=UTF-8"; webRequest.Method = "POST"; webRequest.Timeout = 180000; using (var requestStream = webRequest.GetRequestStream()) { DeviceIdManager.Serialize <DeviceRegistrationRequest>(requestStream, registrationRequest); } DeviceRegistrationResponse result; try { using (var response = webRequest.GetResponse()) { using (var responseStream = response.GetResponseStream()) { result = DeviceIdManager.Deserialize <DeviceRegistrationResponse>(responseStream); } } } catch (WebException ex) { if (ex.Response != null) { using (var responseStream2 = ex.Response.GetResponseStream()) { return(DeviceIdManager.Deserialize <DeviceRegistrationResponse>(responseStream2)); } } throw; } return(result); }