package org.easysoa.registry.types; import java.util.List; import org.easysoa.registry.types.ids.SoaNodeId; public interface SoaNode extends Document { public static final String ABSTRACT_DOCTYPE = "SoaNode"; public static final String SCHEMA = "soanode"; public static final String XPATH_SOANAME = "soan:name"; /** copied from subProject TODO */ ///public static final String XPATH_SUBPROJECT = "subproject:subproject"; ////public static final String XPATH_PARENT_SUBPROJECTS = "subproject:parentSubprojects"; //// only on subProject TODO /** subproject + parentSubproject(s)'s visibleSubprojects, copied from subproject, computed once there TODO */ ///public static final String XPATH_VISIBLE_SUBPROJECTS = "subproject:visibleSubprojects"; public static final String XPATH_ISPLACEHOLDER = "soan:isplaceholder"; public static final String XPATH_PARENTSIDS = "soan:parentIds"; public static final String XPATH_UUID = "ecm:uuid"; public static final String FACET = "SoaNode"; SoaNodeId getSoaNodeId() throws Exception; String getSoaName() throws Exception; boolean isPlaceholder() throws Exception; void setIsPlaceholder(boolean isPlaceholder) throws Exception; List<SoaNodeId> getParentIds() throws Exception; void setParentIds(List<SoaNodeId> parentIds) throws Exception; SoaNodeId getParentOfType(String doctype) throws Exception; List<SoaNodeId> getParentsOfType(String doctype) throws Exception; }