Package com.logicaldoc.webservice.rest
Interface FolderService
- All Known Implementing Classes:
RestFolderService
,RestFolderSwagger
@Consumes("application/json")
@Produces("application/json")
public interface FolderService
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Copies an existing folder with the given identifier.createAlias
(long parentId, long foldRef) Creates a new folder aliaslong
createFolder
(long parentId, String name) createPath
(long parentId, String path) createSimple
(String folderPath) createSimpleForm
(String folderPath) createSimpleJSON
(String jsonstr) void
delete
(long folderId) findByPath
(String path) Finds the folder at the specified pathGets the Default workspacegetFolder
(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) getPathString
(long folderId) 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[]
Retrieves the list of all workspaces.void
move
(long folderId, long parentId) Moves an existing folder with the given identifier.void
Renames an existing folder.void
Updates an existing folder.
-
Method Details
-
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, PersistenceExceptionGets 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, PersistenceExceptionGets 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, PersistenceExceptionRetrieves 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
-