Overview
Excerpt |
---|
Fedora generates event messages when a resource is created, updated or deleted. The messages are composed for headers and body. ActivityStreams JSON is now used for message bodies of transmitted events. The new ActivityStreams based JSON-LD uses proper actor values for emitted messages. |
Message Headers
Header | Description | Values | Sample Value |
---|---|---|---|
org.fcrepo.jms.user | The Fedora user who made the change. | bypassAdmin | |
org.fcrepo.jms.eventID | A UUID associated with the event | urn:uuid:2096784f-8915-4f76-9114-10f516553554 | |
org.fcrepo.jms.identifier | The identifier portion of the URI of the changed resource | /test1 | |
org.fcrepo.jms.timestamp | Timestamp in epoch time (milliseconds since January 1st, 1970) | 1524580811763 | |
org.fcrepo.jms.baseURL | The base portion of the identifiers URI. | http://localhost:8080/rest | |
org.fcrepo.jms.resourceType | A comma separated list of URIs identifying the types that describe the resource that changed. | http://www.w3.org/ns/ldp#Container, http://fedora.info/definitions/v4/repository#Resource, http://fedora.info/definitions/v4/repository#Container, http://www.w3.org/ns/ldp#RDFSource, http://www.w3.org/ns/ldp#BasicContainer | |
org.fcrepo.jms.eventType | A comma separated list of URIs identifying the event types that describe the resource that changed. | https://www.w3.org/ns/activitystreams#Create, | https://www.w3.org/ns/activitystreams#Create, https://www.w3.org/ns/activitystreams#Update |
org.fcrepo.jms.userAgent | The type of client user agent that was used to effect the change to the resource. | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36 |
Message Body
The format of the body is JSON-LD.
Below is an example of a message emitted on resource creation.
Code Block |
---|
{ "id": "urn:uuid:2096784f-8915-4f76-9114-10f516553554", "type": ["Create", "Update"], "name": "create resource, update resource", "published": "2018-04-24T14:40:11.763Z", "actor": [{ "type": ["Person"], "id": "info:fedora/local-user#bypassAdmin" }, { "type": ["Application"], "name": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36" }], "object": { "type": ["http://www.w3.org/ns/ldp#Container", "http://fedora.info |
/definitions/v4/repository#Resource", "http://fedora.info/definitions/v4/repository#Container", "http://www.w3.org/ns/ldp#RDFSource", "http://www.w3.org/ns/ldp#BasicContainer", "http://www.w3.org/ns/prov#Entity"],
"id": "http://localhost:8080/rest/test1",
"isPartOf": "http://localhost:8080/rest"
},
"@context": ["https://www.w3.org/ns/activitystreams", {
"prov": "http://www.w3.org/ns/prov#",
"dcterms": "http://purl.org/dc/terms/",
"type": "@type",
"id": "@id",
"isPartOf": {
"@id": "dcterms:isPartOf",
"@type": "@id"
}
}]
} |
Below is an example of a message emitted on resource update.
Code Block |
---|
{
"id": "urn:uuid:b511e8bc-add1-47ac-bb6c-20e068b424fc",
"type": ["Update"],
"name": "update resource",
"published": "2018-04-24T17:58:49.495Z",
"actor": [{
"type": ["Person"],
"id": "info:fedora/local-user#bypassAdmin"
}, {
"type": ["Application"],
"name": "curl/7.54.0"
}],
"object": {
"type": ["http://www.w3.org/ns/ldp#Container", "http://fedora.info/definitions/v4/repository#Resource", "http://fedora.info/definitions/v4/repository#Container", "http://www.w3.org/ns/ldp#RDFSource", "http://www.w3.org/ns/ldp#BasicContainer", "http://www.w3.org/ns/prov#Entity"],
"id": "http://localhost:8080/rest/8e/5c/ce/65/8e5cce65-8272-4046-beb0-b7992bf07828",
"isPartOf": "http://localhost:8080/rest"
},
"@context": ["https://www.w3.org/ns/activitystreams", {
"prov": "http://www.w3.org/ns/prov#",
"dcterms": "http://purl.org/dc/terms/",
"type": "@type",
"id": "@id",
"isPartOf": {
"@id": "dcterms:isPartOf",
"@type": "@id"
}
}]
} |
Below is an example of a message emitted on resource deletion.
Code Block |
---|
{
"id": "urn:uuid:31410238-7a73-4014-a457-1b6d7df5adac",
"type": ["Delete"],
"name": "delete resource",
"published": "2018-04-24T17:51:15.968Z",
"actor": [{
"type": ["Person"],
"id": "info:fedora/local-user#bypassAdmin"
}, {
"type": ["Application"],
"name": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36"
}],
"object": {
"type": ["http://www.w3.org/ns/ldp#Container", "http://fedora.info/definitions/v4/repository#Resource", "http://fedora.info/definitions/v4/repository#Container", "http://www.w3.org/ns/ldp#RDFSource", "http://www.w3.org/ns/ldp#BasicContainer", "http://www.w3.org/ns/prov#Entity"],
"id": "http://localhost:8080/rest/test1",
"isPartOf": "http://localhost:8080/rest"
},
"@context": ["https://www.w3.org/ns/activitystreams", {
"prov": "http://www.w3.org/ns/prov#",
"dcterms": "http://purl.org/dc/terms/",
"type": "@type",
"id": "@id",
"isPartOf": {
"@id": "dcterms:isPartOf",
"@type": "@id"
}
}]
} |
See :
How to Inspect Event Messages Generated by Fedora