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

Annotation of /dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/LevenshteinStreetnameHelper.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3126 - (hide annotations) (download)
Wed Oct 19 09:53:49 2016 UTC (7 years, 7 months ago) by torben
File size: 1385 byte(s)
Make use of Levenshtein configurable
1 torben 2411 package dk.daoas.daoadresseservice;
2    
3     import org.apache.commons.lang3.StringUtils;
4    
5 torben 3126 import dk.daoas.daoadresseservice.admin.ServiceConfig;
6 torben 2411 import dk.daoas.daoadresseservice.beans.SearchRequest;
7     import dk.daoas.daoadresseservice.beans.SearchResult;
8    
9     public class LevenshteinStreetnameHelper implements StreetnameHelper {
10 torben 3126
11     ServiceConfig conf;
12 torben 2943
13 torben 3126 public LevenshteinStreetnameHelper(ServiceConfig conf) {
14     this.conf = conf;
15 torben 2411 }
16    
17     @Override
18     public String proposeStreetName(SearchRequest request, SearchResult result) {
19 torben 3126 if (conf.useLevenshtein == false)
20     return null;
21 torben 2411
22     result.levenshtein = true;
23    
24     for(String vej : request.streetNames.keySet() ) {
25 torben 2550 if ( StringUtils.getLevenshteinDistance(result.vasketVejnavn, vej) == 1) {
26 torben 2639 System.out.println("Levenstein: " + result.vasketVejnavn + "->" + vej + " distance=1");
27     result.levenshteinDistance = 1;
28 torben 2411 return vej;
29     }
30     }
31    
32 torben 2686 /*
33     Distance=2 laver også false positives - så udkommenter denne sektion indtil at den er mere robust
34 torben 2600 //prøv igen med distance=2
35     for(String vej : request.streetNames.keySet() ) {
36     if ( StringUtils.getLevenshteinDistance(result.vasketVejnavn, vej) == 2) {
37 torben 2639 System.out.println("Levenstein: " + result.vasketVejnavn + "->" + vej + " distance=2");
38     result.levenshteinDistance = 2;
39 torben 2600 return vej;
40     }
41 torben 2686 }*/
42 torben 2600
43 torben 2411 return null;
44     }
45    
46     }

  ViewVC Help
Powered by ViewVC 1.1.20