package kmlframework.kml; import java.util.ArrayList; import java.util.List; import kmlframework.atom.AtomAuthor; import kmlframework.atom.AtomLink; public abstract class Feature extends KmlObject { private String name; private Boolean visibility; private Boolean open; private AtomAuthor atomAuthor; private AtomLink atomLink; private String address; private String xalAddressDeatails; private String phoneNumber; private String snippet; private Integer snippetMaxLines; private String description; private AbstractView abstractView; private TimePrimitive timePrimitive; private String styleUrl; private List<StyleSelector> styleSelectors; private Region region; private ExtendedData extendedData; public Feature() {} public Feature(String name, Boolean visibility, Boolean open, AtomAuthor atomAuthor, AtomLink atomLink, String address, String xalAddressDetails, String phoneNumber, String snippet, Integer snippetMaxLines,String description, AbstractView abstractView, TimePrimitive timePrimitive, String styleUrl, List<StyleSelector> styleSelectors, Region region, ExtendedData extendedData) { this.name = name; this.visibility = visibility; this.open = open; this.atomAuthor = atomAuthor; this.atomLink = atomLink; this.address = address; this.xalAddressDeatails = xalAddressDetails; this.phoneNumber = phoneNumber; this.snippet = snippet; this.snippetMaxLines = snippetMaxLines; this.description = description; this.abstractView = abstractView; this.timePrimitive = timePrimitive; this.styleUrl = styleUrl; this.styleSelectors = styleSelectors; this.region = region; this.extendedData = extendedData; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Boolean isVisibility() { return visibility; } public void setVisibility(Boolean visibility) { this.visibility = visibility; } public boolean isOpen() { return open; } public void setOpen(boolean open) { this.open = open; } public AtomAuthor getAtomAuthor() { return atomAuthor; } public void setAtomAuthor(AtomAuthor atomAuthor) { this.atomAuthor = atomAuthor; } public AtomLink getAtomLink() { return atomLink; } public void setAtomLink(AtomLink link) { this.atomLink = link; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String getXalAddressDeatails() { return xalAddressDeatails; } public void setXalAddressDeatails(String xalAddressDeatails) { this.xalAddressDeatails = xalAddressDeatails; } public String getPhoneNumber() { return phoneNumber; } public void setPhoneNumber(String phoneNumber) { this.phoneNumber = phoneNumber; } public String getSnippet() { return snippet; } public void setSnippet(String snippet) { this.snippet = snippet; } public Integer getSnippetMaxLines() { return snippetMaxLines; } public void setSnippetMaxLines(Integer snippetMaxLines) { this.snippetMaxLines = snippetMaxLines; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public AbstractView getAbstractView() { return abstractView; } public void setAbstractView(AbstractView abstractView) { this.abstractView = abstractView; } public String getStyleUrl() { return styleUrl; } public void setStyleUrl(String styleUrl) { this.styleUrl = styleUrl; } public List<StyleSelector> getStyleSelectors() { return styleSelectors; } public void setStyleSelectors(List<StyleSelector> styleSelectors) { this.styleSelectors = styleSelectors; } public void addStyleSelector(StyleSelector styleSelector) { if (styleSelectors == null) { styleSelectors = new ArrayList<StyleSelector>(); } styleSelectors.add(styleSelector); } public TimePrimitive getTimePrimitive() { return timePrimitive; } public void setTimePrimitive(TimePrimitive timePrimitive) { this.timePrimitive = timePrimitive; } public Region getRegion() { return region; } public void setRegion(Region region) { this.region = region; } public ExtendedData getExtendedData() { return extendedData; } public void setExtendedData(ExtendedData extendedData) { this.extendedData = extendedData; } public void writeInner(Kml kml) throws KmlException { if (name != null) { kml.println("<name>" + name + "</name>"); } if (visibility != null) { kml.println("<visibility>" + booleanToInt(visibility) + "</visibility>"); } if (open != null) { kml.println("<open>" + booleanToInt(open) + "</open>"); } if (atomAuthor != null) { atomAuthor.write(kml); } if (atomLink != null) { atomLink.write(kml); } if (address != null) { kml.println("<address>" + address + "</address>"); } if (xalAddressDeatails != null) { kml.println("<xal:AddressDetails>" + xalAddressDeatails + "</xal:AddressDetails>"); } if (phoneNumber != null) { kml.println("<phoneNumber>" + phoneNumber + "</phoneNumber>"); } if (snippet != null) { kml.println("<snippet maxLines=\"" + (snippetMaxLines != null ? snippetMaxLines : "2" ) + "\">" + snippet + "</snippet>"); } if (description != null) { kml.println("<description>" + description + "</description>"); } if (abstractView != null) { abstractView.write(kml); } if (timePrimitive != null) { timePrimitive.write(kml); } if (styleUrl!= null) { kml.println("<styleUrl>" + styleUrl + "</styleUrl>"); } if (styleSelectors != null) { for (StyleSelector styleSelector : styleSelectors) { styleSelector.write(kml); } } if (region != null) { region.write(kml); } if (extendedData != null) { extendedData.write(kml); } } }