Package com.logicaldoc.webservice.rest
Interface FolderService
-
- All Known Implementing Classes:
RestFolderService
,RestFolderSwagger
@Consumes("application/json") @Produces("application/json") public interface FolderService
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
copy(long folderId, long targetId, int foldersOnly, String securityOption)
Copies an existing folder with the given identifier.WSFolder
create(WSFolder folder)
WSFolder
createAlias(long parentId, long foldRef)
Creates a new folder aliaslong
createFolder(long parentId, String name)
WSFolder
createPath(long parentId, String path)
WSFolder
createSimple(String folderPath)
WSFolder
createSimpleForm(String folderPath)
WSFolder
createSimpleJSON(String jsonstr)
void
delete(long folderId)
WSFolder
findByPath(String path)
Finds the folder at the specified pathWSFolder
getDefaultWorkspace()
Gets the Default workspaceWSFolder
getFolder(long folderId)
WSRight[]
getGrantedGroups(long folderId)
Retrieves the list of granted groups for the given folderWSRight[]
getGrantedUsers(long folderId)
Retrieves the list of granted users for the given folder.WSFolder[]
getPath(long folderId)
String
getPathString(long folderId)
WSFolder
getRootFolder()
Gets the root foldervoid
grantGroup(long folderId, long groupId, int permissions, boolean recursive)
Grants group permission to the foldervoid
grantUser(long folderId, long userId, int permissions, boolean recursive)
Grants user permission to the folder.boolean
isGranted(long folderId, int permission)
Tests if the current user has a specific permission on a folderboolean
isReadable(long folderId)
Tests if a folder is readable.boolean
isWritable(long folderId)
Tests if a folder is writableWSFolder[]
listChildren(long folderId)
WSFolder[]
listWorkspaces()
Retrieves the list of all workspaces.void
move(long folderId, long parentId)
Moves an existing folder with the given identifier.void
rename(long folderId, String name)
Renames an existing folder.void
update(WSFolder folder)
Updates an existing folder.
-
-
-
Method Detail
-
create
@POST @Path("/create") WSFolder create(WSFolder folder) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
createSimple
@POST @Path("/createSimple") @Consumes({"text/plain","application/json"}) WSFolder createSimple(String folderPath) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
createSimpleForm
@POST @Path("/createSimpleForm") @Consumes("application/x-www-form-urlencoded") WSFolder createSimpleForm(@FormParam("folderPath") String folderPath) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
createSimpleJSON
@POST @Path("/createSimpleJSON") @Consumes("application/json") WSFolder createSimpleJSON(String jsonstr) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
createPath
@POST @Path("/createPath") @Consumes("application/x-www-form-urlencoded") WSFolder createPath(@FormParam("parentId") long parentId, @FormParam("path") String path) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
findByPath
@GET @Path("/findByPath") @Produces("application/json") WSFolder findByPath(@QueryParam("path") String path) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
Finds the folder at the specified path- Parameters:
path
- the path- Returns:
- the folder
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServicePermissionException
- The current user does not have enough permissionsAuthenticationException
- Invalid credentials
-
getRootFolder
@GET @Path("/getRootFolder") @Produces("application/json") WSFolder getRootFolder() throws AuthenticationException, WebserviceException, PersistenceException
Gets the root folder- Returns:
- the root folder
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
createFolder
@POST @Path("/createFolder") @Consumes("application/x-www-form-urlencoded") @Produces({"text/plain","application/json","application/xml"}) long createFolder(@FormParam("parentId") long parentId, @FormParam("name") String name) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
getFolder
@GET @Path("/getFolder") @Produces({"application/json","application/xml"}) WSFolder getFolder(@QueryParam("folderId") long folderId) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
delete
@DELETE @Path("/delete") void delete(@QueryParam("folderId") long folderId) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
listChildren
@GET @Path("/listChildren") @Produces({"application/json","application/xml"}) WSFolder[] listChildren(@QueryParam("folderId") long folderId) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
getPath
@GET @Path("/getPath") WSFolder[] getPath(@QueryParam("folderId") long folderId) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
getPathString
@GET @Path("/getPathString") String getPathString(@QueryParam("folderId") long folderId) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
-
update
@PUT @Path("/update") void update(WSFolder folder) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
Updates an existing folder. To perform this you need the RENAME permission.- Parameters:
folder
- The folders metadata(please compile the ID)- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServicePermissionException
- The current user does not have enough permissionsAuthenticationException
- Invalid credentials
-
rename
@PUT @Path("/rename") void rename(@QueryParam("folderId") long folderId, @QueryParam("name") String name) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
Renames an existing folder.- Parameters:
folderId
- The folder idname
- The new folder name- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServicePermissionException
- The current user does not have enough permissionsAuthenticationException
- Invalid credentials
-
move
@PUT @Path("/move") void move(@QueryParam("folderId") long folderId, @QueryParam("parentId") long parentId) throws AuthenticationException, PersistenceException, WebserviceException
Moves an existing folder with the given identifier.- Parameters:
folderId
- The folder idparentId
- The folder id of the new parent folder- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
createAlias
@POST @Path("/createAlias") WSFolder createAlias(@FormParam("parentId") long parentId, @FormParam("foldRef") long foldRef) throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
Creates a new folder alias- Parameters:
parentId
- The parent folderfoldRef
- The referenced folder- Returns:
- The newly created alias
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServicePermissionException
- The current user does not have enough permissionsAuthenticationException
- Invalid credentials
-
getDefaultWorkspace
@GET @Path("/getDefaultWorkspace") WSFolder getDefaultWorkspace() throws AuthenticationException, PermissionException, WebserviceException, PersistenceException
Gets the Default workspace- Returns:
- A value object containing the workspace's metadata
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServicePermissionException
- The current user does not have enough permissionsAuthenticationException
- Invalid credentials
-
listWorkspaces
@GET @Path("/listWorkspaces") WSFolder[] listWorkspaces() throws AuthenticationException, WebserviceException, PersistenceException
Retrieves the list of all workspaces.- Returns:
- the list of all workspaces
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
isReadable
@GET @Path("/isReadable") boolean isReadable(@QueryParam("folderId") long folderId) throws AuthenticationException, WebserviceException, PersistenceException
Tests if a folder is readable.- Parameters:
folderId
- The folder id- Returns:
- True if the identifier denotes a readable folder, otherwise false.
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
isWritable
@GET @Path("/isWritable") boolean isWritable(@QueryParam("folderId") long folderId) throws AuthenticationException, WebserviceException, PersistenceException
Tests if a folder is writable- Parameters:
folderId
- The folder id- Returns:
- True if the identifier denotes a writable folder, otherwise false
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
isGranted
@GET @Path("/isGranted") boolean isGranted(@QueryParam("folderId") long folderId, @QueryParam("permission") int permission) throws AuthenticationException, WebserviceException, PersistenceException
Tests if the current user has a specific permission on a folder- Parameters:
folderId
- The folder idpermission
- The permission representation- Returns:
- True if the identifier denotes a granted permission, otherwise false
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
copy
@POST @Path("/copy") void copy(@FormParam("folderId") long folderId, @FormParam("targetId") long targetId, @FormParam("foldersOnly") int foldersOnly, @FormParam("securityOption") String securityOption) throws AuthenticationException, WebserviceException, PersistenceException
Copies an existing folder with the given identifier.- Parameters:
folderId
- The folder idtargetId
- The folder id of the target folderfoldersOnly
- If 1, only the folders will be copied and not the documentssecurityOption
- How to assign the security policies to the newly created folders:- null or none: empty security policies
- inherit: the new folder will point to the parent for the security policies
- replicate: the new folder will have a copy of the security policies of the source folder
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
grantUser
@PUT @Path("/grantUser") void grantUser(@QueryParam("folderId") long folderId, @QueryParam("userId") long userId, @QueryParam("permissions") int permissions, @QueryParam("recursive") boolean recursive) throws PermissionException, AuthenticationException, PersistenceException, WebserviceException
Grants user permission to the folder.- Parameters:
folderId
- Folder iduserId
- User Idpermissions
- the permission integer representation. If '0', the user will be not granted to access the folder.recursive
- recursion option. If true, the grant operation is applied also to the subfolders.- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServicePermissionException
- The current user does not have enough permissionsAuthenticationException
- Invalid credentials
-
grantGroup
@PUT @Path("/grantGroup") void grantGroup(@QueryParam("folderId") long folderId, @QueryParam("groupId") long groupId, @QueryParam("permissions") int permissions, @QueryParam("recursive") boolean recursive) throws PermissionException, AuthenticationException, PersistenceException, WebserviceException
Grants group permission to the folder- Parameters:
folderId
- Folder idgroupId
- Group Idpermissions
- the permission integer representation. If '0', the group will be not granted to access the folder.recursive
- recursion option. If true, the grant operation is applied also to the subfolders- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServicePermissionException
- The current user does not have enough permissionsAuthenticationException
- Invalid credentials
-
getGrantedGroups
@GET @Path("/getGrantedGroups") WSRight[] getGrantedGroups(@QueryParam("folderId") long folderId) throws AuthenticationException, WebserviceException, PersistenceException
Retrieves the list of granted groups for the given folder- Parameters:
folderId
- Folder id- Returns:
- 'error' if error occurred, the right objects collection
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
getGrantedUsers
@GET @Path("/getGrantedUsers") WSRight[] getGrantedUsers(@QueryParam("folderId") long folderId) throws AuthenticationException, WebserviceException, PersistenceException
Retrieves the list of granted users for the given folder.- Parameters:
folderId
- Folder id- Returns:
- 'error' if error occurred, the right objects collection.
- Throws:
PersistenceException
- Error in the databaseWebserviceException
- A generic error in the WebServiceAuthenticationException
- Invalid credentials
-
-