ingo@945: package de.intevation.flys.artifacts.model; ingo@945: felix@1890: import org.apache.log4j.Logger; felix@1890: ingo@945: import org.w3c.dom.Document; ingo@945: import org.w3c.dom.Element; ingo@945: import org.w3c.dom.Node; ingo@945: ingo@945: import de.intevation.artifacts.ArtifactNamespaceContext; ingo@945: sascha@1061: import de.intevation.artifactdatabase.state.DefaultFacet; ingo@945: import de.intevation.artifactdatabase.state.Facet; ingo@945: ingo@945: import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator; ingo@945: ingo@945: ingo@945: public class ManagedFacetAdapter extends ManagedFacet { ingo@945: ingo@945: protected Facet facet; ingo@945: sascha@1061: public ManagedFacetAdapter() { sascha@1061: } ingo@945: felix@1890: felix@1890: protected Logger logger = Logger.getLogger(ManagedFacetAdapter.class); felix@1890: ingo@1715: public ManagedFacetAdapter( ingo@1715: Facet facet, ingo@1715: String uuid, ingo@1715: int pos, ingo@1715: int active, ingo@1715: int visible ingo@1715: ) { ingo@945: super( ingo@945: facet.getName(), ingo@945: facet.getIndex(), ingo@945: facet.getDescription(), ingo@945: uuid, ingo@945: pos, ingo@1715: active, ingo@1715: visible); ingo@945: ingo@945: this.facet = facet; ingo@945: } ingo@945: ingo@945: ingo@945: @Override ingo@945: public Node toXML(Document doc) { ingo@945: ElementCreator ec = new ElementCreator( ingo@945: doc, ingo@945: ArtifactNamespaceContext.NAMESPACE_URI, ingo@945: ArtifactNamespaceContext.NAMESPACE_PREFIX); ingo@945: ingo@945: Element e = (Element) facet.toXML(doc); ingo@945: ec.addAttr(e, "artifact", getArtifact(), true); ingo@945: ec.addAttr(e, "facet", getName(), true); ingo@945: ec.addAttr(e, "pos", String.valueOf(getPosition()), true); ingo@945: ec.addAttr(e, "active", String.valueOf(getActive()), true); ingo@1715: ec.addAttr(e, "visible", String.valueOf(getVisible()), true); ingo@945: ingo@945: return e; ingo@945: } sascha@1061: sascha@1061: @Override sascha@1061: public Facet deepCopy() { sascha@1061: ManagedFacetAdapter copy = new ManagedFacetAdapter(); sascha@1061: copy.set((DefaultFacet)this); sascha@1061: copy.set((ManagedFacet)this); sascha@1061: copy.facet = facet.deepCopy(); sascha@1061: return facet; sascha@1061: } ingo@945: } sascha@3083: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :