OsmAnd/OsmAnd-java/src/net/osmand/data/Amenity.java

112 lines
2.3 KiB
Java
Raw Normal View History

package net.osmand.data;
2013-11-10 16:54:28 +01:00
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;
public class Amenity extends MapObject {
2013-11-24 19:45:00 +01:00
public static final String WEBSITE = "website";
public static final String PHONE = "phone";
public static final String DESCRIPTION = "description";
public static final String OPENING_HOURS = "opening_hours";
private static final long serialVersionUID = 132083949926339552L;
private String subType;
private AmenityType type;
2013-11-10 16:54:28 +01:00
// duplicate for fast access
private String openingHours;
2013-11-10 16:54:28 +01:00
private Map<String, String> additionalInfo;
public Amenity(){
}
public AmenityType getType(){
return type;
}
public String getSubType(){
return subType;
}
public void setType(AmenityType type) {
this.type = type;
}
public void setSubType(String subType) {
this.subType = subType;
}
public String getOpeningHours() {
2013-11-10 16:54:28 +01:00
// getAdditionalInfo("opening_hours");
return openingHours;
}
2013-11-10 16:54:28 +01:00
public String getAdditionalInfo(String key){
if(additionalInfo == null) {
return null;
}
return additionalInfo.get(key);
}
public Map<String, String> getAdditionalInfo() {
if(additionalInfo == null) {
return Collections.emptyMap();
}
return additionalInfo;
}
public void setAdditionalInfo(Map<String, String> additionalInfo) {
this.additionalInfo = additionalInfo;
2013-11-24 19:45:00 +01:00
openingHours = additionalInfo.get(OPENING_HOURS);
2013-11-10 16:54:28 +01:00
}
2013-11-13 14:13:48 +01:00
2013-11-10 16:54:28 +01:00
public void setAdditionalInfo(String tag, String value) {
if(this.additionalInfo == null){
this.additionalInfo = new LinkedHashMap<String, String>();
}
2013-11-20 10:34:31 +01:00
this.additionalInfo.put(tag, value);
2013-11-24 19:45:00 +01:00
if(OPENING_HOURS.equals(tag)) {
2013-11-13 14:13:48 +01:00
this.openingHours = value;
}
2013-11-10 16:54:28 +01:00
}
@Override
public String toString() {
return type.toString() + " : " + subType + " "+ getName();
}
public String getSite() {
2013-11-24 19:45:00 +01:00
return getAdditionalInfo(WEBSITE);
}
public void setSite(String site) {
2013-11-24 19:45:00 +01:00
setAdditionalInfo(WEBSITE, site);
}
public String getPhone() {
2013-11-24 19:45:00 +01:00
return getAdditionalInfo(PHONE);
}
public void setPhone(String phone) {
2013-11-24 19:45:00 +01:00
setAdditionalInfo(PHONE, phone);
}
public String getDescription() {
2013-11-24 19:45:00 +01:00
return getAdditionalInfo(DESCRIPTION);
}
public void setDescription(String description) {
2013-11-24 19:45:00 +01:00
setAdditionalInfo(DESCRIPTION, description);
}
2013-11-13 14:13:48 +01:00
public void setOpeningHours(String openingHours) {
2013-11-24 19:45:00 +01:00
setAdditionalInfo(OPENING_HOURS, openingHours);
2013-11-13 14:13:48 +01:00
}
}