package org.openhab.habdroid.model;
import android.os.Parcel;
import android.os.Parcelable;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
public class OpenHAB1Sitemap extends OpenHABSitemap {
public OpenHAB1Sitemap(Node startNode) {
if (startNode.hasChildNodes()) {
NodeList childNodes = startNode.getChildNodes();
for (int i = 0; i < childNodes.getLength(); i ++) {
Node childNode = childNodes.item(i);
if (childNode.getNodeName().equals("name")) {
this.setName(childNode.getTextContent());
} else if (childNode.getNodeName().equals("label")) {
this.setLabel(childNode.getTextContent());
} else if (childNode.getNodeName().equals("link")) {
this.setLink(childNode.getTextContent());
} else if (childNode.getNodeName().equals("icon")) {
this.setIcon(childNode.getTextContent());
} else if (childNode.getNodeName().equals("homepage")) {
if (childNode.hasChildNodes()) {
NodeList homepageNodes = childNode.getChildNodes();
for (int j = 0; j < homepageNodes.getLength(); j++) {
Node homepageChildNode = homepageNodes.item(j);
if (homepageChildNode.getNodeName().equals("link")) {
this.setHomepageLink(homepageChildNode.getTextContent());
} else if (homepageChildNode.getNodeName().equals("leaf")) {
if (homepageChildNode.getTextContent().equals("true")) {
setLeaf(true);
} else {
setLeaf(false);
}
}
}
}
}
}
}
}
public static final Parcelable.Creator<OpenHABSitemap> CREATOR = new Parcelable.Creator<OpenHABSitemap>() {
public OpenHABSitemap createFromParcel(Parcel in) {
return new OpenHAB1Sitemap(in);
}
public OpenHABSitemap[] newArray(int size) {
return new OpenHAB1Sitemap[size];
}
};
public OpenHAB1Sitemap(Parcel in) {
super(in);
}
@Override
public String getIconPath() {
return String.format("images/%s.png", getIcon());
}
}