{"action":"published","release":{"url":"https://api.github.com/repos/acdh-oeaw/repo-php-util/releases/7699298","assets_url":"https://api.github.com/repos/acdh-oeaw/repo-php-util/releases/7699298/assets","upload_url":"https://uploads.github.com/repos/acdh-oeaw/repo-php-util/releases/7699298/assets{?name,label}","html_url":"https://github.com/acdh-oeaw/repo-php-util/releases/tag/1.7.0","id":7699298,"tag_name":"1.7.0","target_commitish":"master","name":"Metadata references enhancements","draft":false,"author":{"login":"zozlak","id":6503177,"avatar_url":"https://avatars3.githubusercontent.com/u/6503177?v=4","gravatar_id":"","url":"https://api.github.com/users/zozlak","html_url":"https://github.com/zozlak","followers_url":"https://api.github.com/users/zozlak/followers","following_url":"https://api.github.com/users/zozlak/following{/other_user}","gists_url":"https://api.github.com/users/zozlak/gists{/gist_id}","starred_url":"https://api.github.com/users/zozlak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zozlak/subscriptions","organizations_url":"https://api.github.com/users/zozlak/orgs","repos_url":"https://api.github.com/users/zozlak/repos","events_url":"https://api.github.com/users/zozlak/events{/privacy}","received_events_url":"https://api.github.com/users/zozlak/received_events","type":"User","site_admin":false},"prerelease":true,"created_at":"2017-09-10T17:24:40Z","published_at":"2017-09-10T17:36:03Z","assets":[],"tarball_url":"https://api.github.com/repos/acdh-oeaw/repo-php-util/tarball/1.7.0","zipball_url":"https://api.github.com/repos/acdh-oeaw/repo-php-util/zipball/1.7.0","body":"The doorkeeper requires all references to repository resources to be these resources' UUIDs.\r\nUntil now only the `MetadataCollection` class has limited support to automatically fulfil this requirement when resources were denoted in other way (e.g. using their non-UUID ids or URIs).\r\nThis release brings solution to this problem:\r\n\r\n**The `acdhOeaw\\fedora\\Fedora` class was extended with the `fixMetadataReferences(Resource $meta)` method which resolves references to other repository resources to corresponding UUIDs.**\r\n\r\nOther classes were adjusted to use this method:\r\n\r\n* The `acdhOeaw\\fedora\\FedoraResource::setMetadata()` method gained second parameter allowing to run `Fedora::fixMetadataReferences()` on metadata being set (although it's not done automatically cause it's a potentially time consuming operation).\r\n* The `acdhOeaw\\utilIndexer` class now passes each file's metadata trough the `Fedora::fixMetadataReferences()` before creating/updating the resource in the repository.\r\n* The `acdhOeaw\\util\\MetadataCollection` class passes each resource's metadata trough the `Fedora::fixMetadataReferences()` before creating/updating the resource in the repository.\r\n\r\nAlso the `acdhOeaw\\util\\MetadataCollection` class was reworked and **now can deal with circular dependencies in imported graphs.**\r\n\r\n"}}
{"actor":{"display_login":"zozlak"}}