...
- A user deletes his account. Then the system first deletes all bookmarks in all lists of the user. Then all lists including favorites are deleted.
...
API calls for Use Cases
UC01 | Add bookmark
Description
- A user performs a search and a hit list appears. Now the user saves the object item as a bookmark.
- The bookmark is always first saved in the main folder (favorites).
API mapping
- FA01 | Create bookmark
- POST /favourites/bookmarks
- Send Bookmark-JSON in body
- POST /favourites/bookmarks
...
UC02 | Assign bookmarks to selected lists
Description
- After saving a bookmark for the first time in favorites, a dialog appears that allows a user to continue adding the bookmark to other personal lists.
- For this purpose, the user can select and confirm the additional desired lists.
API mapping
- FA10 | Get all folders of a user
- GET /favourites/folders?userId={userID}
- Receive a FolderResult-JSON with all folders
- FA07 | Add bookmark to list
- POST /favourites/folders/{folderID}/bookmarks/{bookmarkID}
- GET /favourites/folders?userId={userID}
...
UC03 | Retrieve names of a user listDescription
- After clicking favorites link in DDB a user should see his favorite lists to select one.
API mapping
- FA10 | Get all folders of a user
- GET /favourites/folders?userId={userID}
...
UC04 | Retrieve bookmarks of a list
Description
- A user want to see a list and so he clicks to one of his lists.
API mapping
- FA09 | Retrieve bookmarks of a list
- GET /favourites/folders/{folderID}/bookmarks
...
UC05 | Add personal list
Description
- A user creates a additional personal list.
API mapping
- FA06 | Create list
- POST /favourites/folders
- Send Folder-JSON in body
- POST /favourites/folders
...
UC06 | Delete bookmark
Description
- A user deletes a bookmark in favorites, and so it will also be deleted in each of the personal lists.
API mapping
- FA05 | Delete bookmark
- DELETE /favourites/bookmarks/{bookmarkID}
...
UC07 | Change bookmark description
Description
- A user adds, deletes or modifies the description of a bookmark.
API mapping
- FA04 | Update bookmark (set only changes)
- PUT /favourites/bookmarks/{bookmarkID}
- Send Bookmark-JSON in body
- PUT /favourites/bookmarks/{bookmarkID}
...
UC08 | Copy bookmarks from All Favorites to personal lists
Description
- A user copies a bookmark from the main list (favorites) to personal lists.
API mapping
- FA07 | Add bookmark to another lists
- POST /favourites/folders/{folderID}/bookmarks?bookmarkId={bookmarkID}
...
UC09 | Publish or privatize personal list
Description
- A user publishes a list or make a published list private again.
API mapping
- FA08 | Get list with properties
- GET /favourites/folders/{folderID}
- FA11 | Update list (set only changes)
- POST /favourites/folders/{folderID}
- Send Folder-JSON in body
- POST /favourites/folders/{folderID}
...
UC10 | Change properties of personal list
Description
- A user changes name, description, published/unpublished, name abbreviation from one of his personal lists.
API mapping
- FA08 | Get list
- GET /favourites/folders/{folderID}
- FA11 | Update list (set only changes)
- POST /favourites/folders/{folderID}
- Send Folder-JSON in body
- POST /favourites/folders/{folderID}
...
UC11 | Remove personal list with bookmarks
Description
- A user deletes a personal list with the contained bookmarks. However, only the assignment of the bookmarks to the list is deleted.
API mapping
- FA12 | Delete list
- DELETE /favourites/folders/{folderID}
...
UC12 | Remove personal list and contained bookmarks in all lists
Description
- A user additional deletes containing bookmarks of the list, also from all other lists, including the main list (favorites).
API mapping
- FA12 | Delete list
- DELETE /favourites/folders/{folderID}
...
UC13 | Remove bookmark in personal list
Description
- A user deletes a bookmark from a personal list.
API mapping
- FA13 | Remove bookmark from list
- DELETE /favourites/folders/{folderID}/bookmarks/{bookmarkID}
...
UC14 | Copy bookmarks to other personal lists
Description
- A user copies a bookmark from a personal list to other personal lists.
- Since all bookmarks are always present in the All Favorites (favorites) list, copying from personal lists to this central list is not possible.
API mapping
- FA07 | Add bookmark to other lists (for every list)
- POST /favourites/folders/{folderID}/bookmarks
...
Model
Bookmark
Fields
Field | Data type | Description |
---|---|---|
id | String | ID of the bookmark (internal created by Elasticsearch) |
itemId | String | ID of the DDB object item |
description | String | User defined text to describe the list |
userId | String | AAS/LDAP managed ID of the User |
bookmarkType | String | Type of the bookmark |
createdAt | Long | Creation date of the folder in millis created by the DDB Backend |
updateAt | Long | Last Update date of the folder in millis created by the DDB Backend |
keywordTool | KeywordTool | Optional data for internal use in APD (for keyword tool) |
Description
- Model object to hold a bookmark (= favorites)
...
Field | Data type | Description |
---|---|---|
Done | Boolean | Used in APD |
Description
- Model object to hold and transfer APD internal data
...
Field | Data type | Description |
---|---|---|
query | String | Summary of the executed query (for debugging use) |
total | Long | Total matches |
offset | Long | Used offset (default or send by the request) |
size | Long | Used size (default or send by the request) |
bookmarks | List<Bookmark> | List of the found bookmarks by the query |
Description
- Model object to hold bookmarks (depends of offset and size) by the query
...
Field | Data type | Description |
---|---|---|
id | String | ID of the folder (internal created by Elasticsearch) |
title | String | Title of the user list |
description | String | User defined text to describe the list |
userId | String | AAS/LDAP managed ID of the User |
publishingName | String | User Identifier if the list is published |
createdAt | Long | Creation date of the folder in millis created by the DDB Backend |
updateAt | Long | Last Update date of the folder in millis created by the DDB Backend |
bookmarkIds | Set<String> | List of related bookmarks IDs |
institutionIds | Set<String> | List of related institution IDs |
blockingToken | String | Optional token for internal use in APD |
blocked | Boolean | If the list is blocked for public use |
published | Boolean | If the list is published for public use |
keywordTool | KeywordTool | Optional data for internal use in APD (for keyword tool) |
Description
- Model object to hold a folder (= favorites list and user defined lists)
...
Field | Data type | Description |
---|---|---|
sentToAdmin | Boolean | Used in APD |
Description
- Model object to hold and transfer APD internal data
...
Field | Data type | Description |
---|---|---|
query | String | Summary of the executed query (for debugging use) |
total | Long | Total matches |
offset | Long | Used offset (default or send by the request) |
size | Long | Used size (default or send by the request) |
folders | List<Folder> | List of the found folders by the query |
Description
- Model object to hold found folders (depends of offset and size) by the query