/[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 2298 by torben, Sun Feb 15 11:00:48 2015 UTC revision 2321 by torben, Tue Feb 17 09:06:42 2015 UTC
# Line 1  Line 1 
1  package dk.daoas.daoadresseservice;  package dk.daoas.daoadresseservice;
2    
3  import java.io.IOException;  import java.io.IOException;
4    import java.net.URLEncoder;
5  import java.util.List;  import java.util.List;
6    
7  import com.google.code.geocoder.Geocoder;  import com.google.code.geocoder.Geocoder;
# Line 10  import com.google.code.geocoder.model.Ge Line 11  import com.google.code.geocoder.model.Ge
11  import com.google.code.geocoder.model.GeocoderRequest;  import com.google.code.geocoder.model.GeocoderRequest;
12  import com.google.code.geocoder.model.GeocoderResult;  import com.google.code.geocoder.model.GeocoderResult;
13  import com.google.code.geocoder.model.GeocoderStatus;  import com.google.code.geocoder.model.GeocoderStatus;
14    import com.google.gson.Gson;
15    
16    import dk.daoas.daoadresseservice.beans.OSMAddress;
17    import dk.daoas.daoadresseservice.util.HttpUtil;
18    
19  public class GeocodeHelper {  public class GeocodeHelper {
20                    
21                    
22            
23    
24    
25          public static void main(String[] args) throws IOException {                      public static void main(String[] args) throws IOException {
26                  System.out.println(  GeocodeHelper.googleHelper(2800, "Chr. Xs Alle") );                  int post = 8700;
27                    String vej = "Enebarvej";
28                    
29                    long start1 = System.currentTimeMillis();
30                    System.out.println( "Google:" +  GeocodeHelper.googleHelper(post, vej) );              
31                    long stop1 = System.currentTimeMillis();
32                    
33                    long start2 = System.currentTimeMillis();
34                    System.out.println( "OSM:" +  GeocodeHelper.openstreetmapHelper(post, vej) );
35                    long stop2 = System.currentTimeMillis();
36                    
37                    System.out.println("Google: " + (stop1-start1));
38                    System.out.println("OSM: " + (stop2-start2));
39            }
40            
41            public static String openstreetmapHelper(int postnr, String vejnavn) {
42                    
43                    try {
44                                    
45                            String encVej = URLEncoder.encode(vejnavn, "UTF-8");
46                            
47                            String url = "http://nominatim.openstreetmap.org/search?country=DK&street=" + encVej + "&postalcode=" + postnr + "&format=json&addressdetails=1";
48                            //String url = "http://nominatim.openstreetmap.org/search?country=DK&street=" + encVej + "&format=json&addressdetails=1";
49                            //System.out.println (url);
50                            
51                            String json = HttpUtil.getContentString(url, 1000);
52                            //System.out.println(json);
53                            
54                            Gson gson = new Gson();
55                            OSMAddress adrList[] = gson.fromJson(json, OSMAddress[].class);
56                            
57                            //System.out.println("Count: " + adrList.length);
58                            if (adrList.length != 1)
59                                    return null;
60                                    
61                            if (adrList[0].address != null) {
62                                    return adrList[0].address.road;
63                            }
64    
65                            
66                    } catch (Exception e) {
67                            System.out.println( "Error: " + e.getMessage() );
68                    }                                                              
69                    return null;
70          }          }
71                    
72            
73            
74          public static String googleHelper(int postnr, String vejnavn) {          public static String googleHelper(int postnr, String vejnavn) {
75                  try {                  try {
76                          //Todo: Load api key from context config                          //Todo: Load api key from context config

Legend:
Removed from v.2298  
changed lines
  Added in v.2321

  ViewVC Help
Powered by ViewVC 1.1.20