_Package org.exoplatform.services.cms.folksonomy.NewFolksonomyService_;

|| *Method* || *Return* || *Prototype* || *Description* ||
| *addPrivateTag*(String\[\] tagsName, Node documentNode, String repository, String workspace, String userName) throws Exception ; |{{tagNames}}: The array of tag name as the children of tree.{example}{example}{{documentNode}}: Tag this node by creating a folksonomy link to the node in the tag.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.{example}{example}{{userName}}: The username. | void |Add a private tag to a document. A folksonomy link will be created in a tag node. |
| *addGroupsTag*(String\[\] tagsName, Node documentNode,String repository, String workspace, String\[\] roles) throws Exception ; |{{tagNames}}: The array of tag name as the children of tree.{example}{example}{{documentNode}}: Tag this node by creating a folksonomy link to the node in tag.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.{example}{example}{{roles}}: The user roles. | void | Add a group tag to a document. A folksonomy link will be created in a tag node.|
|*addPublicTag*(String treePath, String\[\] tagsName, Node documentNode, String repository, String workspace) throws Exception ;|{example}{example}{{treePath}}: The path of folksonomy tree.{example}{example}{{tagNames}}: The array of the tag name as the children of tree.{example}{example}{{documentNode}}: Tag this node by creating a folksonomy link to the node in the tag.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.| void | Add a public tag to a document. A folksonomy link will be created in a tag node. |
| *addSiteTag*(String siteName, String\[\] tagsName, Node node, String repository, String workspace) throws Exception ; |{{siteName}}: The portal name.{example}{example}{{treePath}}: The path of folksonomy tree.{example}{example}{{tagNames}}: The array of the tag name as the children of tree.{example}{example}{{documentNode}}: Tag this node by creating a folksonomy link to the node in tag.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.| void  | Add a site tag to a document. A folksonomy link will be created in a tag node. |
| *getAllPrivateTags*(String userName, String repository, String workspace) throws Exception ;|{{userName}}: The user name.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.   | List<Node> |Get all private tags.|
| *getAllPublicTags*(String treePath, String repository, String workspace) throws Exception ; |{{treePath}}: The folksonomy tree path.{example}{example}{{repository}}: The repository name. {example}{example}{{workspace}}: The workspace name. | List<Node> | Get all public tags. |
| *getAllGroupTags*String\[\] roles, String repository, String workspace) throws Exception ; |{{roles}}: The roles of user.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.   | List<Node> | Get all tags by groups.|
| *getAllGroupTags*(String role, String repository, String workspace) throws Exception ; |{{role}}: The role of user.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name. | List<Node> | Get all tags by a group. |
| *getAllSiteTags*(String siteName, String repository, String workspace) throws Exception ;| {{siteName}}: The portal name.{example}{example}{{treePath}}: Folksonomy tree path.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.| List<Node> | Get all tags of Site.|
| *getAllDocumentsByTag*(String tagPath, String repository, String workspace, SessionProvider sessionProvider) throws Exception ; | {example}{example} {{treeName}}: The name of folksonomy tree.{example}{example}{{tagName}}: The name of a tag.{example}{example}{{repository}}: The repository name.| List<Node>| Get all documents which are stored in a tag and return a list of documents in a tag. |
| *getTagStyle*(String tagPath, String repository, String workspace) throws Exception ; | {{tagPath}}{example}{example}{{workspace}}: The workspace name. {example}{example}{{repository}}: The repository name. | String | Get {noformat}HTML_STYLE_PROP{noformat} property in styleName node in the repository.|
| *addTagStyle*(String styleName, String tagRange, String htmlStyle, String repository, String workspace) throws Exception ; | {{styleName}}: The style name.{example}{example}{{tagRate}}: The range of tag numbers.{example}{example}{{htmlStyle}}: The tag style.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.| void | Update the properties {noformat}TAG_RATE_PROP{noformat} and {noformat}HTML_STYLE_PROP{noformat}, following the values tagRate, htmlStyle for a node in tagPath in repository.|
| *updateTagStyle*(String styleName, String tagRange, String htmlStyle, String repository, String workspace) throws Exception ; |{{styleName}}: The style name.{example}{example}{{tagRate}}: The range of tag numbers.{example}{example}{{htmlStyle}}: The tag style.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.  | void | Update the properties {noformat}TAG_RATE_PROP{noformat} and {noformat}HTML_STYLE_PROP{noformat}, following the value tagRate, htmlStyle for a node in tagPath in repository.|
| *getAllTagStyle*(String repository, String workspace) throws Exception ; |{{repository}}: The repository name{example}{example}{{workspace}}: The workspace name. | List<Node> |  Get all tag style bases of a folksonomy tree. |
| *init*(String repository) throws Exception ; |{{repository}}: The repository name.| void |Initialize all TagStylePlugin with session in repository name.|
| *removeTagOfDocument*(String tagPath, Node document, String repository, String workspace) throws Exception; |{{treeName}}: The name of a folksonomy tree.{example}{example}{{tagName}}: The name of a tag.{example}{example}{{document}}: The document which is added a link to tagName.{example}{example}{{repository}}: The repository name.  | void | Remove a tag of a given document.|
| *removeTag*(String tagPath, String repository, String workspace) throws Exception; |{{tagPath}}: The path of the tag.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.   | void | Remove a tag. |
| *modifyTagName*(String tagPath, String newTagName, String repository, String workspace) throws Exception; |{{tagPath}}: The name of the tag.{example}{example}{{newTagName}}: The new tag name.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name. | Node | Modify the tag name.|
| *getLinkedTagsOfDocument*(Node documentNode, String repository, String workspace) throws Exception; |{{documentNode}}: The document node.{example}{example}{{repository}}{example}{example}{{workspace}}| List<Node> |Get all tags linked to a given document.|
| *getLinkedTagsOfDocumentByScope*(int scope, String value, Node documentNode, String repository, String workspace) throws Exception; |{{documentNode}}: The document node.{example}{example}{{repository}}: The repository name.{example}{example}{{workspace}}: The workspace name.  | List<Node> | Get all tags linked to a given document by scope.|
| *removeTagsOfNodeRecursively*(Node node, String repository, String workspace, String username, String groups) throws Exception; |{{node}}{example}{example}{{repository}}{example}{example}{{workspace}} | void | Remove all tags linked to the child nodes of a given node.|
| *addTagPermission*(String usersOrGroups); |{{usersOrGroups}}  |void | Add given users or groups to tagPermissionList.|
| *removeTagPermission*(String usersOrGroups); |{{usersOrGroups}} | void  | Remove given users or groups from tagPermissionList. |
| *getTagPermissionList*();|N/A | List<String> | Return tagPermissionList. |
| *canEditTag*(int scope, List<String> memberships); |{{scope}}{example}{example}{{memberships}} | boolean | Set the permission to edit a tag for a user. |
| *getAllTagNames*(String repository, String workspace, int scope, String value) throws Exception;|{{repository}}{example}{example}{{workspace}}{example}{example}{{scope}}: The scope of tags.{example}{example}{{value}}: The value, according to scope, can be understood differently.  | List<String> | Get all tag names which start within a given scope.|