private static BossResponse OAuthFind(PlaceByFullyParsedAddress request, string consumerKey, string consumerSecret, int retry = 0) { try { using (var oAuth = new OAuthClient()) { var json = oAuth.Get(request.GetUri(), consumerKey, consumerSecret); var bossContainer = JsonConvert.DeserializeObject <BossContainer>(json); if (bossContainer != null) { return(bossContainer.BossResponse); } throw new InvalidOperationException("Unable to parse BOSS GEO Response. Raw JSON:\r\n" + json); } } catch (ProtocolException ex) { if (retry < RetryLimit && ex.InnerException is WebException) { return(OAuthFind(request, consumerKey, consumerSecret, ++retry)); } throw; } catch (CommunicationException ex) { if (retry < RetryLimit && ex.Message == "Server Error") { return(OAuthFind(request, consumerKey, consumerSecret, ++retry)); } throw; } }
private Response ChannelFindByFullyParsedAddress(PlaceByFullyParsedAddress request, int retry = 0) { try { return(Channel.FindByFullyParsedAddress(request.House, request.Street, request.UnitType, request.Unit, request.CrossStreet, request.Postal, request.Neighborhood, request.City, request.County, request.StateOrProvince, request.Country, request.Locale, request.Start, request.Count, request.Offset, request.GetFlagsAsString(), request.GetGFlagsAsString(), request.AppId)); } catch (ProtocolException ex) { if (retry < RetryLimit && ex.InnerException is WebException) { return(ChannelFindByFullyParsedAddress(request, ++retry)); } throw; } catch (CommunicationException ex) { if (retry < RetryLimit && ex.Message == "Server Error") { return(ChannelFindByFullyParsedAddress(request, ++retry)); } throw; } }
public ResultSet Find(PlaceByFullyParsedAddress request, string consumerKey, string consumerSecret) { if (request == null) throw new ArgumentNullException("request"); EnsureContractsAreSatisfied(request); var response = OAuthFind(request, consumerKey, consumerSecret); return response.PlaceFinder; }
public void Yahoo_PlaceFinder_PlaceBy_ShouldPreserveCount() { var request = new PlaceByFullyParsedAddress { Count = 5, }; request.Count.ShouldEqual(5); }
public void Yahoo_PlaceFinder_PlaceBy_ShouldPreserveCount() { var request = new PlaceByFullyParsedAddress { Count = 5, }; request.Count.ShouldEqual(5); }
public void Yahoo_PlaceFinder_PlaceByFullyParsedAddress_ShouldPreserveUnitType() { var it = new PlaceByFullyParsedAddress { UnitType = "unit type", }; it.ShouldNotBeNull(); it.UnitType.ShouldEqual("unit type"); }
public void Yahoo_PlaceFinder_PlaceByFullyParsedAddress_ShouldPreserveNeighborhood() { var it = new PlaceByFullyParsedAddress { Neighborhood = "neighborhood", }; it.ShouldNotBeNull(); it.Neighborhood.ShouldEqual("neighborhood"); }
public void Yahoo_PlaceFinder_PlaceByFullyParsedAddress_ShouldPreserveCrossStreet() { var it = new PlaceByFullyParsedAddress { CrossStreet = "cross street", }; it.ShouldNotBeNull(); it.CrossStreet.ShouldEqual("cross street"); }
public void Yahoo_PlaceFinder_PlaceBy_ShouldPreserveAppId() { var it = new PlaceByFullyParsedAddress { AppId = "app id" }; it.ShouldNotBeNull(); it.AppId.ShouldEqual("app id"); }
public void Yahoo_PlaceFinder_PlaceByFullyParsedAddress_ShouldPreserveNeighborhood() { var it = new PlaceByFullyParsedAddress { Neighborhood = "neighborhood", }; it.ShouldNotBeNull(); it.Neighborhood.ShouldEqual("neighborhood"); }
public void Yahoo_PlaceFinder_PlaceByFullyParsedAddress_ShouldPreserveUnitType() { var it = new PlaceByFullyParsedAddress { UnitType = "unit type", }; it.ShouldNotBeNull(); it.UnitType.ShouldEqual("unit type"); }
public void Yahoo_PlaceFinder_PlaceBy_ShouldPreserveAppId() { var it = new PlaceByFullyParsedAddress { AppId = "app id" }; it.ShouldNotBeNull(); it.AppId.ShouldEqual("app id"); }
public void Yahoo_PlaceFinder_PlaceByFullyParsedAddress_ShouldPreserveCrossStreet() { var it = new PlaceByFullyParsedAddress { CrossStreet = "cross street", }; it.ShouldNotBeNull(); it.CrossStreet.ShouldEqual("cross street"); }
public ResultSet Find(PlaceByFullyParsedAddress request, string consumerKey, string consumerSecret) { if (request == null) { throw new ArgumentNullException("request"); } EnsureContractsAreSatisfied(request); var response = OAuthFind(request, consumerKey, consumerSecret); return(response.PlaceFinder); }
public ResultSet Find(PlaceByFullyParsedAddress request) { if (request == null) { throw new ArgumentNullException("request"); } EnsureContractsAreSatisfied(request); var response = ChannelFindByFullyParsedAddress(request); return(response.ResultSet); }
public void Yahoo_PlaceFinder_PlaceFinderClient_FindBFullyParsedAddress_ShouldReturn1Result_ForYahooExample1() { using (var client = new PlaceFinderClient()) { var request = new PlaceByFullyParsedAddress { House = "701", Street = "First Ave.", Postal = "94089", City = "Sunnyvale", County = "Santa Clara", StateOrProvince = "CA", Country = "USA", }; var results = client.Find(request); results.ShouldNotBeNull(); results.Results.ShouldNotBeNull(); results.Results.Count.ShouldEqual(1); } }
public void Yahoo_PlaceFinder_PlaceFinderClient_FindBFullyParsedAddress_ShouldReturn1Result_ForYahooExample1() { using (var client = new PlaceFinderClient()) { var request = new PlaceByFullyParsedAddress { House = "701", Street = "First Ave.", Postal = "94089", City = "Sunnyvale", County = "Santa Clara", StateOrProvince = "CA", Country = "USA", }; var results = client.Find(request, ConsumerKey, ConsumerSecret); results.ShouldNotBeNull(); results.Results.ShouldNotBeNull(); results.Count.ShouldEqual(1); } }
internal static Uri GetUri(this PlaceByFullyParsedAddress request) { const string template = "house={house}&street={street}&unittype={unitType}&unit={unit}" + "&xstreet={crossStreet}&postal={postal}&neighborhood={neighborhood}&city={city}&county={county}&state={state}&country={country}"; var urlBuilder = new StringBuilder(GetBaseUrl(request, template)); urlBuilder.Replace("{house}", request.House); urlBuilder.Replace("{street}", request.Street); urlBuilder.Replace("{unitType}", request.UnitType); urlBuilder.Replace("{unit}", request.Unit); urlBuilder.Replace("{crossStreet}", request.CrossStreet); urlBuilder.Replace("{postal}", request.Postal); urlBuilder.Replace("{neighborhood}", request.Neighborhood); urlBuilder.Replace("{city}", request.City); urlBuilder.Replace("{county}", request.County); urlBuilder.Replace("{state}", request.StateOrProvince); urlBuilder.Replace("{country}", request.Country); return(new Uri(urlBuilder.ToString())); }
private static BossResponse OAuthFind(PlaceByFullyParsedAddress request, string consumerKey, string consumerSecret, int retry = 0) { try { using (var oAuth = new OAuthClient()) { var json = oAuth.Get(request.GetUri(), consumerKey, consumerSecret); var bossContainer = JsonConvert.DeserializeObject<BossContainer>(json); if (bossContainer != null) return bossContainer.BossResponse; throw new InvalidOperationException("Unable to parse BOSS GEO Response. Raw JSON:\r\n" + json); } } catch (ProtocolException ex) { if (retry < RetryLimit && ex.InnerException is WebException) return OAuthFind(request, consumerKey, consumerSecret, ++retry); throw; } catch (CommunicationException ex) { if (retry < RetryLimit && ex.Message == "Server Error") return OAuthFind(request, consumerKey, consumerSecret, ++retry); throw; } }