{"action":"created","issue":{"url":"https://api.github.com/repos/slipstream/SlipStreamServer/issues/867","repository_url":"https://api.github.com/repos/slipstream/SlipStreamServer","labels_url":"https://api.github.com/repos/slipstream/SlipStreamServer/issues/867/labels{/name}","comments_url":"https://api.github.com/repos/slipstream/SlipStreamServer/issues/867/comments","events_url":"https://api.github.com/repos/slipstream/SlipStreamServer/issues/867/events","html_url":"https://github.com/slipstream/SlipStreamServer/issues/867","id":186252596,"number":867,"title":"formalize resource via a clojure protocol","user":{"login":"loomis","id":490506,"avatar_url":"https://avatars.githubusercontent.com/u/490506?v=3","gravatar_id":"","url":"https://api.github.com/users/loomis","html_url":"https://github.com/loomis","followers_url":"https://api.github.com/users/loomis/followers","following_url":"https://api.github.com/users/loomis/following{/other_user}","gists_url":"https://api.github.com/users/loomis/gists{/gist_id}","starred_url":"https://api.github.com/users/loomis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loomis/subscriptions","organizations_url":"https://api.github.com/users/loomis/orgs","repos_url":"https://api.github.com/users/loomis/repos","events_url":"https://api.github.com/users/loomis/events{/privacy}","received_events_url":"https://api.github.com/users/loomis/received_events","type":"User","site_admin":false},"labels":[{"id":212859331,"url":"https://api.github.com/repos/slipstream/SlipStreamServer/labels/P20%20CYCLONE","name":"P20 CYCLONE","color":"325BAF","default":false},{"id":181058133,"url":"https://api.github.com/repos/slipstream/SlipStreamServer/labels/S10%20Working","name":"S10 Working","color":"EB6420","default":false},{"id":181058129,"url":"https://api.github.com/repos/slipstream/SlipStreamServer/labels/%E2%98%85%E2%98%85","name":"★★","color":"FFE26B","default":false}],"state":"open","locked":false,"assignee":{"login":"loomis","id":490506,"avatar_url":"https://avatars.githubusercontent.com/u/490506?v=3","gravatar_id":"","url":"https://api.github.com/users/loomis","html_url":"https://github.com/loomis","followers_url":"https://api.github.com/users/loomis/followers","following_url":"https://api.github.com/users/loomis/following{/other_user}","gists_url":"https://api.github.com/users/loomis/gists{/gist_id}","starred_url":"https://api.github.com/users/loomis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loomis/subscriptions","organizations_url":"https://api.github.com/users/loomis/orgs","repos_url":"https://api.github.com/users/loomis/repos","events_url":"https://api.github.com/users/loomis/events{/privacy}","received_events_url":"https://api.github.com/users/loomis/received_events","type":"User","site_admin":false},"assignees":[{"login":"loomis","id":490506,"avatar_url":"https://avatars.githubusercontent.com/u/490506?v=3","gravatar_id":"","url":"https://api.github.com/users/loomis","html_url":"https://github.com/loomis","followers_url":"https://api.github.com/users/loomis/followers","following_url":"https://api.github.com/users/loomis/following{/other_user}","gists_url":"https://api.github.com/users/loomis/gists{/gist_id}","starred_url":"https://api.github.com/users/loomis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loomis/subscriptions","organizations_url":"https://api.github.com/users/loomis/orgs","repos_url":"https://api.github.com/users/loomis/repos","events_url":"https://api.github.com/users/loomis/events{/privacy}","received_events_url":"https://api.github.com/users/loomis/received_events","type":"User","site_admin":false}],"milestone":null,"comments":7,"created_at":"2016-10-31T10:38:27Z","updated_at":"2016-11-13T14:35:28Z","closed_at":null,"body":"Currently, the CIMI resource implementations are a collection of multi-methods and fields that allow for the autoloading of the resources, proper routing of requests, and reuse of standard CRUD functions. \n\nUnfortunately, the methods/fields that need to be specified are poorly documented and the (over)use of multi-methods makes the implementations less maintainable.  Moving to a protocol would make the resource interface clear and make it easier to add new resources quickly."},"comment":{"url":"https://api.github.com/repos/slipstream/SlipStreamServer/issues/comments/260189867","html_url":"https://github.com/slipstream/SlipStreamServer/issues/867#issuecomment-260189867","issue_url":"https://api.github.com/repos/slipstream/SlipStreamServer/issues/867","id":260189867,"user":{"login":"loomis","id":490506,"avatar_url":"https://avatars.githubusercontent.com/u/490506?v=3","gravatar_id":"","url":"https://api.github.com/users/loomis","html_url":"https://github.com/loomis","followers_url":"https://api.github.com/users/loomis/followers","following_url":"https://api.github.com/users/loomis/following{/other_user}","gists_url":"https://api.github.com/users/loomis/gists{/gist_id}","starred_url":"https://api.github.com/users/loomis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loomis/subscriptions","organizations_url":"https://api.github.com/users/loomis/orgs","repos_url":"https://api.github.com/users/loomis/repos","events_url":"https://api.github.com/users/loomis/events{/privacy}","received_events_url":"https://api.github.com/users/loomis/received_events","type":"User","site_admin":false},"created_at":"2016-11-13T14:35:28Z","updated_at":"2016-11-13T14:35:28Z","body":"The permissions associated with the roles (groups, attributes, etc.) are explicitly part of the ACL.  The roles held by the user are part of the authentication token that is passed as part of the request.  So I don't see the need for any group/role assignment functions in this protocol.  Perhaps, I've misunderstood what you had in mind with your suggestion above."}}
{"actor":{"display_login":"loomis"}}