package org.atomnuke.atom.xml; /** * * @author zinic */ public enum AtomElement { // States, yo FEED("feed"), ENTRY("entry"), CONTENT("content"), AUTHOR("author"), CATEGORY("category"), CONTRIBUTOR("contributor"), GENERATOR("generator"), ICON("icon"), ID("id"), LINK("link"), LOGO("logo"), PUBLISHED("published"), RIGHTS("rights"), SOURCE("source"), SUBTITLE("subtitle"), SUMMARY("summary"), TITLE("title"), UPDATED("updated"), NAME("name"), EMAIL("email"), URI("uri"), EXTENDED(null); public static final AtomElement[] ROOT_ELEMENTS = new AtomElement[]{ FEED, ENTRY }; public static final AtomElement[] ENTRY_ELEMENTS = new AtomElement[]{ SOURCE, AUTHOR, CONTRIBUTOR, CONTENT, CATEGORY, LINK, ID, NAME, EMAIL, URI, PUBLISHED, UPDATED, RIGHTS, TITLE, SUMMARY }; public static final AtomElement[] FEED_ELEMENTS = new AtomElement[]{ ENTRY, AUTHOR, CONTRIBUTOR, GENERATOR, CATEGORY, LINK, ID, ICON, LOGO, NAME, EMAIL, URI, UPDATED, RIGHTS, TITLE, SUBTITLE, SUMMARY }; public static final AtomElement[] SOURCE_ELEMENTS = new AtomElement[]{ AUTHOR, GENERATOR, CATEGORY, LINK, ID, ICON, LOGO, NAME, EMAIL, URI, UPDATED, RIGHTS, TITLE, SUBTITLE, SUMMARY }; public static AtomElement find(String elementName, AtomElement[] elements) { for (int i = 0; i < elements.length; i++) { if (elements[i].elementName().equals(elementName)) { return elements[i]; } } return EXTENDED; } private final String elementName; private AtomElement(String elementName) { this.elementName = elementName; } public String elementName() { return elementName; } }