public async Task <IActionResult> Create([FromBody] CreateContactInfoRequest contactInfoRequest) { var contactInfo = new ContactInfo { ContactId = contactInfoRequest.ContactId, Content = contactInfoRequest.Content, Type = contactInfoRequest.Type, }; await _contactInfoService.CreateAsync(contactInfo); var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var getLocation = $"{baseUrl}/{APIRoutes.ContactInfoControllerRoutes.Get.Replace("{contactInfoId}", contactInfo.Id.ToString())}"; var contactInfoResponse = new ContactInfoResponse { Id = contactInfo.Id, ContactId = contactInfo.ContactId, Content = contactInfo.Content, Type = contactInfo.Type, }; await _redisCacheService .DeleteCachedResponseAsync( new string[] { HttpContext.Request.Path, APIRoutes.ContactInfoControllerRoutes.GetAll }); return(Created(getLocation, contactInfoResponse)); }
protected override void ProcessDataNode(XmlDocument doc, XmlNamespaceManager namespaces) { base.ProcessDataNode(doc, namespaces); namespaces.AddNamespace("n", "http://www.nominet.org.uk/epp/xml/std-notifications-1.0"); var registrarChangeNode = doc.SelectSingleNode("/ns:epp/ns:response/ns:resData/n:rcData", namespaces); if (registrarChangeNode != null) { var originatorNode = registrarChangeNode.SelectSingleNode("n:orig", namespaces); if (originatorNode != null) { Originator = originatorNode.InnerText; } var registrarNode = registrarChangeNode.SelectSingleNode("n:registrarTag", namespaces); if (registrarNode != null) { RegistrarTag = registrarNode.InnerText; } // Added by Brian Wojtczak, Fasthosts var caseNode = registrarChangeNode.SelectSingleNode("n:caseId", namespaces); if (caseNode != null) { CaseId = caseNode.InnerText; } var domainListNode = registrarChangeNode.SelectSingleNode("n:domainListData", namespaces); if (domainListNode != null) { namespaces.AddNamespace("domain", "urn:ietf:params:xml:ns:domain-1.0"); var domainNodes = domainListNode.SelectNodes("domain:infData", namespaces); if (domainNodes != null) { DomainList = new List <Domain>(); foreach (XmlNode node in domainNodes) { var domainRes = new DomainInfoResponse(node.OuterXml); DomainList.Add(domainRes.Domain); } } } namespaces.AddNamespace("contact", "urn:ietf:params:xml:ns:contact-1.0"); var contactNode = registrarChangeNode.SelectSingleNode("contact:infData", namespaces); if (contactNode != null) { var contactRes = new ContactInfoResponse(contactNode.OuterXml); Contact = contactRes.Contact; } } }
public void TestContactInfoResponse() { var eppResponse = new ContactInfoResponse(ToBytes(@"<?xml version=""1.0"" encoding=""UTF-8"" standalone=""no""?> <epp xmlns=""urn:ietf:params:xml:ns:epp-1.0""> <response> <result code=""1000""> <msg>Command completed successfully</msg> </result> <resData> <contact:infData xmlns:contact=""urn:ietf:params:xml:ns:contact-1.0""> <contact:id>11aabb</contact:id> <contact:roid>roid1</contact:roid> .CA Registry Guide for Registrars: Version 4.02 Contacts Contact Check <contact:status s=""ok""/> <contact:postalInfo type=""loc""> <contact:name>Contact Middle-name LastName</contact:name> <contact:addr> <contact:street>123 Everywhere Street</contact:street> <contact:city>Ottawa</contact:city> <contact:sp>ON</contact:sp> <contact:pc>K1R7S8</contact:pc> <contact:cc>CA</contact:cc> </contact:addr> </contact:postalInfo> <contact:email>[email protected]</contact:email> <contact:clID>123</contact:clID> <contact:crID>456</contact:crID> <contact:crDate>2010-01-07T18:18:53.0Z</contact:crDate> </contact:infData> </resData> <extension> <cira:ciraInfo xmlns:cira=""urn:ietf:params:xml:ns:cira-1.0""> <cira:language>en</cira:language> <cira:cprCategory>CCT</cira:cprCategory> <cira:individual>Y</cira:individual> <cira:ciraAgreementVersion>2.0</cira:ciraAgreementVersion> <cira:agreementTimestamp>2010-01-26T18:18:53.0Z</cira:agreementTimestamp> <cira:originatingIpAddress>192.168.45.59</cira:originatingIpAddress> <cira:whoisDisplaySetting>PRIVATE</cira:whoisDisplaySetting> </cira:ciraInfo> </extension> <trID> <svTRID>CIRA-000108-0000000004</svTRID> </trID> </response> </epp> ")); PrintResponse(eppResponse); }
public async Task <ActionResult <ContactInfoResponse> > Post(ContactInfoRequest requestObject) { IFlurlResponse response = await $"{URLConstants.ContactAPIURL}/api/contacts".PostJsonAsync(requestObject); if (response.StatusCode >= 500) { return(StatusCode(500)); } else if (response.StatusCode >= 400) { return(StatusCode(400)); } ContactInfoResponse responseObject = await response.GetJsonAsync <ContactInfoResponse>(); return(CreatedAtAction("Post", responseObject)); }
public void TestContactInfoResponse1() { byte[] input = File.ReadAllBytes("ContactInfoResponse1.xml"); var response = new ContactInfoResponse(input); var contact = response.Contact; Assert.AreEqual("1000", response.Code); Assert.AreEqual("Command completed successfully", response.Message); Assert.AreEqual("sh8013", contact.Id); Assert.AreEqual("+1.7035555555", contact.Voice.Value); Assert.AreEqual("1234", contact.Voice.Extension); Assert.AreEqual("+1.7035555556", contact.Fax.Value); Assert.AreEqual("*****@*****.**", contact.Email); Assert.AreEqual("int", contact.PostalInfo.m_type); Assert.AreEqual("John Doe", contact.PostalInfo.m_name); Assert.AreEqual("Example Inc.", contact.PostalInfo.m_org); Assert.AreEqual("123 Example Dr.", contact.PostalInfo.m_address.Street1); Assert.AreEqual("Suite 100", contact.PostalInfo.m_address.Street2); Assert.IsNull(contact.PostalInfo.m_address.Street3); Assert.AreEqual("Dulles", contact.PostalInfo.m_address.City); Assert.AreEqual("VA", contact.PostalInfo.m_address.StateProvince); Assert.AreEqual("20166-6503", contact.PostalInfo.m_address.PostalCode); Assert.AreEqual("US", contact.PostalInfo.m_address.CountryCode); Assert.AreEqual("SH8013-REP", contact.Roid); Assert.IsTrue(contact.StatusList.Contains("linked")); Assert.IsTrue(contact.StatusList.Contains("clientDeleteProhibited")); Assert.AreEqual("ClientY", contact.ClId); Assert.AreEqual("ClientX", contact.CrId); Assert.AreEqual("ClientX", contact.UpId); Assert.AreEqual("1999-04-03T22:00:00.0Z", contact.CrDate); Assert.AreEqual("1999-12-03T09:00:00.0Z", contact.UpDate); Assert.AreEqual("2000-04-08T09:00:00.0Z", contact.TrDate); Assert.AreEqual("2fooBAR", contact.Password); Assert.AreEqual(Contact.DiscloseFlags.All & ~Contact.DiscloseFlags.Voice & ~Contact.DiscloseFlags.Email, contact.DiscloseMask); Assert.AreEqual("ABC-12345", response.ClientTransactionId); Assert.AreEqual("54322-XYZ", response.ServerTransactionId); }
public static ContactInfoResponse DAOToResponse(ContactInfoDAO data) { ContactInfoResponse response = new ContactInfoResponse(); response.ContactInfoId = data.ContactInfoId; response.Email = data.Email; response.Name = data.Name; response.Telephone = data.Telephone; if (data.TelephoneAlt != null) { response.TelephoneAlt = data.TelephoneAlt; } response.Street = data.Street; response.City = data.City; response.Country = data.Country; response.PostalCode = data.PostalCode; return(response); }
public async Task <ActionResult <ContactInfoResponse> > GetById(long id) { IFlurlResponse response = await $"{URLConstants.ContactAPIURL}/api/contacts/{id}".GetAsync(); if (response.StatusCode == 404) { return(NotFound()); } else if (response.StatusCode >= 500) { return(StatusCode(500)); } else if (response.StatusCode >= 400) { return(StatusCode(400)); } ContactInfoResponse responseObject = await response.GetJsonAsync <ContactInfoResponse>(); return(Ok(responseObject)); }