/[projects]/dao/DaoAdresseService/src/dk/daoas/daoadresseservice/GeocodeHelper.java
ViewVC logotype

Diff of /dao/DaoAdresseService/src/dk/daoas/daoadresseservice/GeocodeHelper.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2353 by torben, Mon Feb 23 15:53:36 2015 UTC revision 2361 by torben, Tue Feb 24 11:27:10 2015 UTC
# Line 16  import com.google.gson.Gson; Line 16  import com.google.gson.Gson;
16  import dk.daoas.daoadresseservice.admin.ServiceConfig;  import dk.daoas.daoadresseservice.admin.ServiceConfig;
17  import dk.daoas.daoadresseservice.beans.OSMAddress;  import dk.daoas.daoadresseservice.beans.OSMAddress;
18  import dk.daoas.daoadresseservice.util.HttpUtil;  import dk.daoas.daoadresseservice.util.HttpUtil;
19    import dk.daoas.daoadresseservice.util.TimingHelper;
20  import dk.thoerup.circuitbreaker.CircuitBreaker;  import dk.thoerup.circuitbreaker.CircuitBreaker;
21  import dk.thoerup.circuitbreaker.CircuitBreakerManager;  import dk.thoerup.circuitbreaker.CircuitBreakerManager;
22  import dk.thoerup.circuitbreaker.CircuitInvocation;  import dk.thoerup.circuitbreaker.CircuitInvocation;
# Line 85  public class GeocodeHelper { Line 86  public class GeocodeHelper {
86                                    
87                  @Override                  @Override
88                  public String proceed() throws Exception {                  public String proceed() throws Exception {
89                            //TimingHelper timer = new TimingHelper();
90                          String encVej = URLEncoder.encode(vejnavn, "UTF-8");                          String encVej = URLEncoder.encode(vejnavn, "UTF-8");
91                                                    
92                          String url = "http://nominatim.openstreetmap.org/search?country=DK&street=" + encVej + "&postalcode=" + postnr + "&format=json&addressdetails=1";                          String url = "http://nominatim.openstreetmap.org/search?country=DK&street=" + encVej + "&postalcode=" + postnr + "&format=json&addressdetails=1";
# Line 97  public class GeocodeHelper { Line 99  public class GeocodeHelper {
99                          Gson gson = new Gson();                          Gson gson = new Gson();
100                          OSMAddress adrList[] = gson.fromJson(json, OSMAddress[].class);                          OSMAddress adrList[] = gson.fromJson(json, OSMAddress[].class);
101                                                    
102                            //timer.printElapsed("OSM elapsed");
103                            
104                          //System.out.println("Count: " + adrList.length);                          //System.out.println("Count: " + adrList.length);
105                          if (adrList.length != 1)                          if (adrList.length != 1)
106                                  return null;                                  return null;
# Line 131  public class GeocodeHelper { Line 135  public class GeocodeHelper {
135                          } else {                          } else {
136                                  geocoder = new Geocoder();                                  geocoder = new Geocoder();
137                          }                          }
138                                                    //TimingHelper timer = new TimingHelper();
139                                                    
140                          String search = vejnavn + ", " + postnr + ", Denmark";                          String search = vejnavn + ", " + postnr + ", Denmark";
141                          GeocoderRequest geocoderRequest = new GeocoderRequestBuilder().setAddress(search).setLanguage("en").getGeocoderRequest();                          GeocoderRequest geocoderRequest = new GeocoderRequestBuilder().setAddress(search).setLanguage("en").getGeocoderRequest();
142                          GeocodeResponse geocoderResponse = geocoder.geocode(geocoderRequest);                          GeocodeResponse geocoderResponse = geocoder.geocode(geocoderRequest);
143                                                                                    
144                            //timer.printElapsed("Google elapsed");
145                                                    
146                          //System.out.println( "Status: >" + geocoderResponse.getStatus() + "<");                          //System.out.println( "Status: >" + geocoderResponse.getStatus() + "<");
147                          if (  geocoderResponse.getStatus() != GeocoderStatus.OK) {                          if (  geocoderResponse.getStatus() != GeocoderStatus.OK) {                              
                                 System.out.println("Google responded with " + geocoderResponse.getStatus() );  
148                                                                    
149                                  if (geocoderResponse.getStatus() == GeocoderStatus.ZERO_RESULTS) {                                  if (geocoderResponse.getStatus() == GeocoderStatus.ZERO_RESULTS) {
150                                          return null;                                          return null;
151                                  } else {                                  } else {
152                                            System.out.println("Google responded with " + geocoderResponse.getStatus() );
153                                          //Hvis det er alvorlige fejl skal vi afbryde med exception og trigger circuitbreakeren                                          //Hvis det er alvorlige fejl skal vi afbryde med exception og trigger circuitbreakeren
154                                          throw new Exception("Google responded with " + geocoderResponse.getStatus() );                                          throw new Exception("Google responded with " + geocoderResponse.getStatus() );
155                                  }                                  }

Legend:
Removed from v.2353  
changed lines
  Added in v.2361

  ViewVC Help
Powered by ViewVC 1.1.20