Description
The bag Bag resource is used to store information about a deposit by a Depositor. When displaying a Bag to the outside world, the Ingest -Server and Replication Shell. It describes the base attributes of a collection in Chronopolis.
Bag
Server brings in information about the Bag including its Replications and any active Staging Storage. The size and totalFiles are cached so that a summation does not need to be run every time a Bag is queried from the database.
Depositing Bags
Updating Bag Storage
See also:
API Description
Bag Model
Field | Type | Description |
---|---|---|
id | Long | The ID of the Bag |
size | Long | The bag's size in bytes |
name | String | The name of the Bag |
creator | String | The user who created the bag in the Ingest Server |
depositor | String | The organization to which the Bag belongs |
status | BagStatus | Status of the Bag |
totalFiles | Long | Number of files in the Bag, including the tag files |
createdAt | DateTime | The date the Bag was created in the ingest server |
updatedAt | DateTime | The last time the Bag was updated |
replicatingNodes | Set<Node> | Nodes who have successfully replicated the bag |
requiredReplications | int | Number of replications required for preservation |
bagStorage | Active Staging Information for a bag's data | |
tokenStorage | StagingStorageModel | Active Staging Information for a bag's tokens |
...
- (1.3.0-RELEASE) REPLICATED
- (1.1.1-RELEASE) STAGED
...
borderStyle | solid |
---|---|
title | Bag API Methods |
Background Color |
---|
POST /api/bags/ |
Description: Deposit a Bag in Chronopolis
...
Code Block | |||||||
---|---|---|---|---|---|---|---|
| Request Body Example | collapse | true|||||
{
"name": "bag-example",
"depositor": "confluence-wiki",
"location": "bag-example/confluence-wiki",
"size": 1048576L,
"totalFiles": 10L,
"storageRegion": 1L
} |
|
Background Color |
---|
GET /api/bags/api/bags |
Description: Retrieve a paginated listing of Bags in Chronopolis
Query Parameters:
- name: The name of the bag (partial match
- creator: The name of the user who created the bag
- depositor: The name of the depositor who owns the bag
- region: The Storage Region the Bag is staged in
- createdAfter: Any Bag created after a given date
- createdBefore: Any Bag created before a given date
- updatedAfter: Any Bag updated after a given date
- updatedBefore: Any Bag updated before a given date
- active: Boolean flag - matches any Bag with staged data (an active StagingStorage)
- status: Any Bag with the given BagStatus
- page: The page number to use, starting at 1
- page_size: The number of Bags to retrieve at once
Response Codes: 200 (success); 401; 403
Response Body: Page<Bag>
Background Color |
---|
GET /api/bags/<id> |
Description: Retrieve a single Bag in Chronopolis by its id
Response Codes: 200; 401; 403; 404 (Not Found)
Description: Create a StagingStorage object for a given Bag
Request Body:
Response Codes: 201, 400, 401, 403
Background Color |
---|
GET /api/bags/<id>/storage/<type> |
Description: Get a StagingStorage object for a Bag defined by its StorageType
Path Parameters:
- id: The id of the bag
- type: The StorageType to retrieve, BAG or TOKEN
Response Codes: 200, 401, 403, 404
Background Color |
---|
POST /api/bags/<id>/storage/<type>/fixity |
Description: Create a Fixity for a given StagingStorage
Path Parameters:
- id: The id of the bag
- type: The StorageType to retrieve, Bag or TOKEN,
Request Body:
Response Codes: 200, 400, 401, 403, 409
Response Body: Fixity
Background Color |
---|
GET /api/bags/<id>/storage/<type>/fixity |
Description: Get all Fixities for a StagingStorage object on a Bag
Path Parameters:
- id: the id of the bag
- type: The StorageType to retrieve, BAG or TOKEN
Response Codes: 200, 401, 403
Response Body: Page<Fixity>
Background Color |
---|
GET /api/bags/<id>/storage/<type>/fixity/<alg> |
Description: Get a Fixity for a StagingStorage object on a Bag
Path Parameters:
- id: the id of the bag
- type: The StorageType to retrieve, BAG or TOKEN
- alg: The name of the algorithm, e.g. sha256
Response Codes: 200, 401, 403, 404
Response Body: Fixity
language | js |
---|---|
title | Bag Json Example |
collapse | true |
{ "id": 2, "size": 1030783586432, "totalFiles": 173357, "bagStorage": { "active": true, "size": 1030783586432, "region": 1, "totalFiles": 173357, "path": "ncar/acadis_20150419", "fixities": [ { "value": "c9680a2ec9a367f2f218a3d90dbcde3bcff9ed3eb8f7d9c61e525ba1735270da", "algorithm": "SHA-256", "createdAt": "2017-11-30T11:02:50.85746Z" } ] }, "tokenStorage": { "active": true, "size": 1, "region": 2, "totalFiles": 1, "path": "ncar/acadis_201504192015-06-06", "fixities": [ { "value": "67593e0c4b02a2cbeb1c2440589373654a44b7ef93c889f6290569e92ced21ea", "algorithm": "SHA-256", "createdAt": "2017-11-30T11:02:50.85746Z" } ] }, "createdAt": "2016-06-07T12:26:18.13944Z", "updatedAt": "2016-06-07T12:26:18.13944Z", "name": "acadis_20150419", "creator": "admin", "depositor": "ncar", "status": "PRESERVED", "requiredReplications": 3, "replicatingNodes": [ "ncar", "umiacs", "ucsd" ] }
Panel | |||||||||
---|---|---|---|---|---|---|---|---|---|
| |||||||||
Deposit Bag
Get All Bags
Get A Single Bag
|
Panel | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||
Create Staging Storage
Get A Staging Storage Object
Register Fixity
Get All Fixities
Get A Fixity
|
Panel | |||||||||
---|---|---|---|---|---|---|---|---|---|
| |||||||||
Get Bag's Tokens
Register Token For Bag
|