MetadataService is used to  process with meta data for system

|| *Method* || *Return* || *Prototype* || *Desription* ||
| *getMetadataList* | {{List<String>}} | getMetadataList(String repository) throws Exception; |  Get all NodeType in repository with NodeType=exo:metadata{example}{example}@param repository: repository name {example}{example}@return: ArrayList of NodeType |
| *getAllMetadatasNodeType* | {{List<NodeType>}} | getAllMetadatasNodeType(String repository) throws Exception ; |  Get all NodeType in repository with NodeType = exo:metadata{example}{example} @param repository:  repository name {example}{example} @return: ArrayList of NodeType |
| *addMetadata* | {{String}} | addMetadata(String nodetype, boolean isDialog, String role, String content, boolean isAddNew, String repository) throws Exception; |  Add new nodetype and set property  EXO_ROLES_PROP, EXO_TEMPLATE_FILE_PROP for dialog template node or view template node if node doesn't exist. Set property  EXO_ROLES_PROP, EXO_TEMPLATE_FILE_PROP for dialog template node or view template node if node exists{example}{example} @param nodetype: Node name for processing{example}{example} @param isDialog: true for dialog template{example}{example} @param role: permission{example}{example}param content: content of template{example}{example} @param isAddNew: false if nodetype exists in repository, true if not{example}{example} @param repository: repository name{example}{example} @return path to node if node exists, otherwise return null{example}{example} @throws Exception |
| *removeMetadata* | {{void}} | removeMetadata(String nodetype, String repository) throws Exception; | Remove node named nodetype below baseMetadataPath{example}{example} @param nodetype: name of node {example}{example} @param repository: repository name  |
| *getExternalMetadataType* | {{List<String>}} | getExternalMetadataType(String repository) throws Exception;| Get all NodeType name that contains property that is not autocreated and name of NodeType differs from exo:metadata {example}{example}@param repository: repository name{example}{example}@return: ArrayList of metadata type  |
| *getMetadataTemplate* | {{String}} | getMetadataTemplate(String name, boolean isDialog, String repository) throws Exception; |  Get content of dial{example}{example}og template node or view template in repository{example}{example} @param name: Node name {example}{example} @param isDialog: true: Get dialog template content {example}{example}false: Get view template content{example}{example} @param repository: repository name{example}{example} @return: content of template |
| *getMetadataPath* | {{String}} | getMetadataPath(String name, boolean isDialog, String repository) throws Exception; |  Get path to dialog template or view tempate node{example}{example} @param name: Node name   {example}{example} @param isDialog: true: Get dialog template content{example}{example}false: Get view template content{example}{example} @param repository: repository name{example}{example} @return: path to template node |
| *getMetadataRoles* | {{String}} | getMetadataRoles(String name, boolean isDialog, String repository) throws Exception; | Get permission of template node{example}{example}@param name: Node name {example}{example}@param isDialog: true: Get dialog template content{example}{example}false: Get view template content{example}{example}@param repository: repository name{example}{example}@return: String of permission  |
| *hasMetadata* | {{boolean}} | hasMetadata(String name, String repository) throws Exception; |  Check node with a given name or not below baseMetadataPath path in repositorys {example}{example} @param name: Node name {example}{example} @param repository: repository name{example}{example} @return true : This node  name<br>{example}{example} false: this node name does not exist. |
| *init* | {{void}} | init(String repository) throws Exception; | Call all available lists of TemplatePlugin to add some predefine template to repository{example}{example}@repository: repository name{example}{example} @throws Exception |
