001 // License: GPL. Copyright 2007 by Dave Hansen and others 002 package org.openstreetmap.josm.data.osm; 003 004 import java.util.Set; 005 import java.util.TreeSet; 006 007 /** 008 * A simple class to keep helper functions for merging TIGER data 009 * 010 * @author daveh 011 * 012 */ 013 public class TigerUtils { 014 015 public static boolean isTigerTag(String tag) 016 { 017 if (tag.indexOf("tiger:") == -1) 018 return false; 019 return true; 020 } 021 022 public static boolean tagIsInt(String name) { 023 if (name.equals("tiger:tlid")) 024 return true; 025 return false; 026 } 027 028 public static Object tagObj(String name) { 029 if (tagIsInt(name)) 030 return new Integer(name); 031 return name; 032 } 033 034 public static String combineTags(String name, Set<String> values) { 035 TreeSet<Object> resultSet = new TreeSet<Object>(); 036 for (String value: values) { 037 for (String part: value.split(":")) { 038 resultSet.add(tagObj(part)); 039 } 040 } 041 String combined = ""; 042 for (Object part : resultSet) { 043 if (combined.length() > 0) 044 combined += ":"; 045 combined += part; 046 } 047 return combined; 048 } 049 050 public static String combineTags(String name, String t1, String t2) { 051 Set<String> set = new TreeSet<String>(); 052 set.add(t1); 053 set.add(t2); 054 return TigerUtils.combineTags(name, set); 055 } 056 }