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

Diff of /dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/AddressSearch.java

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

revision 2608 by torben, Wed Jul 15 06:52:05 2015 UTC revision 2776 by torben, Thu Nov 19 15:30:36 2015 UTC
# Line 44  public class AddressSearch { Line 44  public class AddressSearch {
44                    
45          private DatabaseLayer db;          private DatabaseLayer db;
46                    
         ServiceConfig config;  
47                    
48          StreetnameHelper levenshteinHelper;          StreetnameHelper levenshteinHelper;
49          StreetnameHelper googleHelper;          StreetnameHelper googleHelper;
# Line 52  public class AddressSearch { Line 51  public class AddressSearch {
51                    
52                    
53          public AddressSearch(DatabaseLayer db, ServiceConfig config) {          public AddressSearch(DatabaseLayer db, ServiceConfig config) {
                 this.config = config;  
54                                    
55                  this.db = db;                  this.db = db;
56                                    
# Line 61  public class AddressSearch { Line 59  public class AddressSearch {
59                  osmHelper = new OSMStreetnameHelper( config );                  osmHelper = new OSMStreetnameHelper( config );
60          }          }
61                    
62            public Address getAddressSafe(int gadeid, String husnr)  throws Exception {
63                    
64                    Map<String,Address> gade = searchGadeidentAdresser.get(gadeid);
65                    
66                    if (gade == null) {
67                            throw new Exception("GadeID ikke fundet");
68                    }
69                    
70                    Address addr = gade.get(husnr);
71                    
72                    if (addr == null) {
73                            throw new Exception("Adresse ikke ikke fundet");
74                    }
75                                    
76                    return addr;
77            }
78            
79                    
80          public SearchResult search(String postnrStr, String adresse)  {          public SearchResult search(String postnrStr, String adresse)  {
81                                    
# Line 441  public class AddressSearch { Line 456  public class AddressSearch {
456                                    
457                  ////////////////////////////////////////////////////////////////////////////////////                  ////////////////////////////////////////////////////////////////////////////////////
458                  long stop = System.currentTimeMillis();                  long stop = System.currentTimeMillis();
459                  System.out.println("Build, stage3 elapsed: " + (stop-start4) );                  System.out.println("Build, stage4 elapsed: " + (stop-start4) );
460                  System.out.println("Build -- Gathering statistics");                  System.out.println("Build -- Gathering statistics");
461                                                                    
462                  for (Address addr : alleAdresser) {                  for (Address addr : alleAdresser) {
# Line 506  public class AddressSearch { Line 521  public class AddressSearch {
521                                  return ".." + targetAddress.rute;                                  return ".." + targetAddress.rute;
522                          } else if (eb.afstand < 0.701) {                          } else if (eb.afstand < 0.701) {
523                                  return "..." + targetAddress.rute;                                  return "..." + targetAddress.rute;
524                          } else if (eb.afstand < 0.501) {                          } else if (eb.afstand < 1.001) {
525                                  return "...." + targetAddress.rute;                                  return "...." + targetAddress.rute;
526                          }                          }
527                          break;                                            break;                  
# Line 532  public class AddressSearch { Line 547  public class AddressSearch {
547                                  return "...." + targetAddress.rute;                                  return "...." + targetAddress.rute;
548                          }                          }
549                          break;                          break;
550                    default:
551                            System.out.println("Ukendt transport type: " + eb );
552                  }                                }              
553                  return null;                  return null;
554          }          }
# Line 547  public class AddressSearch { Line 564  public class AddressSearch {
564                  return result;                  return result;
565          }          }
566                    
567            public List<Address> get100PctAddresses() {
568                    List<Address> result = new ArrayList<Address>(120000);
569                    for (Address a : alleAdresser) {
570                            if ( a.daekningsType == DaekningsType.DAEKNING_100PCT) {
571                                    result.add(a);
572                            }
573                    }
574                    Collections.sort(result );
575                    return result;
576            }
577            
578          ///////////////////////////////////////////////////////////          ///////////////////////////////////////////////////////////
579          private String calculateExtendedBkKoreliste(ExtendedBean eb, Address orgAddress, Address targetAddress) {          private String calculateExtendedBkKoreliste(ExtendedBean eb, Address orgAddress, Address targetAddress) {
580                  String inject;                  String inject;
# Line 585  public class AddressSearch { Line 613  public class AddressSearch {
613                  aliasSet.add(vejnavn.replace("gl", "gammel") );                  aliasSet.add(vejnavn.replace("gl", "gammel") );
614                  aliasSet.add(vejnavn.replace("gammel", "gl") );                  aliasSet.add(vejnavn.replace("gammel", "gl") );
615                                    
616                    aliasSet.add(vejnavn.replace("gl", "gamle") );
617                    aliasSet.add(vejnavn.replace("gamle", "gl") );
618                    
619                  aliasSet.add(vejnavn.replace("lille", "ll") );                  aliasSet.add(vejnavn.replace("lille", "ll") );
620                  aliasSet.add(vejnavn.replace("ll ", "lille") );                  aliasSet.add(vejnavn.replace("ll ", "lille") );
621                  aliasSet.add(vejnavn.replace("ll.", "lille") );                  aliasSet.add(vejnavn.replace("ll.", "lille") );
# Line 640  public class AddressSearch { Line 671  public class AddressSearch {
671                  aliasSet.add(vejnavn.replace("christians", "chr") );                  aliasSet.add(vejnavn.replace("christians", "chr") );
672                  aliasSet.add(vejnavn.replace("kristian", "kr") );                  aliasSet.add(vejnavn.replace("kristian", "kr") );
673                  aliasSet.add(vejnavn.replace("kristians", "kr") );                  aliasSet.add(vejnavn.replace("kristians", "kr") );
674    
675                    aliasSet.add(vejnavn.replace("mylius", "myl") );
676                    aliasSet.add(vejnavn.replace("myl", "mylius") );
677                                    
678                                    
679                  // alternative stavninger                  // alternative stavninger
# Line 756  public class AddressSearch { Line 790  public class AddressSearch {
790                    
791          public Set<Entry<String,Integer>> getVejnavne(short postnr) {          public Set<Entry<String,Integer>> getVejnavne(short postnr) {
792                  Map<String,Integer> map = searchPostnrVejnavnGadeid.get(postnr);                  Map<String,Integer> map = searchPostnrVejnavnGadeid.get(postnr);
793                  TreeMap<String,Integer> newMap = new TreeMap<String,Integer>();                  
794                  for (Entry<String,Integer> entry : map.entrySet() ) {                  TreeMap<String,Integer> newMap = new TreeMap<String,Integer>( map );//Lav et nyt TreeMap for at sikre sortering
                         newMap.put(entry.getKey(), entry.getValue());  
                 }  
795                                    
796                  return newMap.entrySet();                  return newMap.entrySet();
797          }          }

Legend:
Removed from v.2608  
changed lines
  Added in v.2776

  ViewVC Help
Powered by ViewVC 1.1.20