{"action":"created","issue":{"url":"https://api.github.com/repos/cismet/cids-server/issues/123","labels_url":"https://api.github.com/repos/cismet/cids-server/issues/123/labels{/name}","comments_url":"https://api.github.com/repos/cismet/cids-server/issues/123/comments","events_url":"https://api.github.com/repos/cismet/cids-server/issues/123/events","html_url":"https://github.com/cismet/cids-server/issues/123","id":90325767,"number":123,"title":"Action API Enhancements","user":{"login":"p-a-s-c-a-l","id":1788226,"avatar_url":"https://avatars.githubusercontent.com/u/1788226?v=3","gravatar_id":"","url":"https://api.github.com/users/p-a-s-c-a-l","html_url":"https://github.com/p-a-s-c-a-l","followers_url":"https://api.github.com/users/p-a-s-c-a-l/followers","following_url":"https://api.github.com/users/p-a-s-c-a-l/following{/other_user}","gists_url":"https://api.github.com/users/p-a-s-c-a-l/gists{/gist_id}","starred_url":"https://api.github.com/users/p-a-s-c-a-l/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/p-a-s-c-a-l/subscriptions","organizations_url":"https://api.github.com/users/p-a-s-c-a-l/orgs","repos_url":"https://api.github.com/users/p-a-s-c-a-l/repos","events_url":"https://api.github.com/users/p-a-s-c-a-l/events{/privacy}","received_events_url":"https://api.github.com/users/p-a-s-c-a-l/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/cismet/cids-server/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/cismet/cids-server/labels/question","name":"question","color":"cc317c"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/cismet/cids-server/milestones/1","html_url":"https://github.com/cismet/cids-server/milestones/Connector%20for%20cids%20Pure%20REST%20API","labels_url":"https://api.github.com/repos/cismet/cids-server/milestones/1/labels","id":1101700,"number":1,"title":"Connector for cids Pure REST API","description":"Issues related to the implementation of the Connector for the cids Pure REST API, e.g. missing operations in cids-server-rest.","creator":{"login":"p-a-s-c-a-l","id":1788226,"avatar_url":"https://avatars.githubusercontent.com/u/1788226?v=3","gravatar_id":"","url":"https://api.github.com/users/p-a-s-c-a-l","html_url":"https://github.com/p-a-s-c-a-l","followers_url":"https://api.github.com/users/p-a-s-c-a-l/followers","following_url":"https://api.github.com/users/p-a-s-c-a-l/following{/other_user}","gists_url":"https://api.github.com/users/p-a-s-c-a-l/gists{/gist_id}","starred_url":"https://api.github.com/users/p-a-s-c-a-l/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/p-a-s-c-a-l/subscriptions","organizations_url":"https://api.github.com/users/p-a-s-c-a-l/orgs","repos_url":"https://api.github.com/users/p-a-s-c-a-l/repos","events_url":"https://api.github.com/users/p-a-s-c-a-l/events{/privacy}","received_events_url":"https://api.github.com/users/p-a-s-c-a-l/received_events","type":"User","site_admin":false},"open_issues":8,"closed_issues":7,"state":"open","created_at":"2015-05-08T10:53:26Z","updated_at":"2015-07-21T14:27:06Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2015-06-23T08:37:39Z","updated_at":"2015-08-04T12:23:20Z","closed_at":null,"body":"**ActionAPI**\r\nChanges to `de.cismet.cids.server.api.ActionAPI` and legacy / filesystem core implementations: \r\n- REST API operation `createNewActionTask`(with parameter resultingInstanceType=\"result\") returns byte\\[\\] (variable content types) instead of `GenericResourceWithContentType` (application/json). \r\n- Information about content type of action result provided in  \r\n  - 1) return header (actual content type of the action's result(s))\r\n  - 2) Action Meta-Data (but only one default content type/result) -> new `ActionInfo` like `SearchInfo`\r\n\r\n**ServerAction**\r\nNo changes to `de.cismet.cids.server.actions.ServerAction` Interface!\r\n\r\n**Server and Client Connectors**\r\nBody & Result Serialization / Deserialization Handling in Server and Client: convert `java.lang.Object` to `byte[]` and vice versa (except for objects of type byte[]):\r\n- `Sirius.server.middleware.impls.domainserver.DomainServerImpl` (server)\r\n- `de.cismet.cids.server.actionsScheduledServerActionManager` (server)\r\n- `de.cismet.cids.server.ws.rest.RESTfulInterfaceConnector` (client)\r\n- `de.cismet.cids.server.ws.rest.RESTfulSerialInterfaceConnector` (client)\r\n\r\n**Action Meta-Data (REST API)**\r\nNew class `de.cismet.cids.server.api.types.ActionInfo` with information (`de.cismet.cids.server.api.types.Parameter`) about \r\n- list of action parameters\r\n- action body parameter (DefaultBodyContentType)\r\n- action result (DefaultResultContentType)\r\n\r\nAdd operation `getActionInfo` to class `de.cismet.cids.server.api.types.ActionTask`! Note: REST API operation getAction(s) does not return `de.cismet.cids.server.api.types.Action` but `de.cismet.cids.server.api.types.ActionTask`!\r\n\r\n**Action Meta-Data (ServerAction Implementations)**\r\nNew Interface `LookupableServerAction` with operation `getActionInfo` (like `LookupableServerSearch`) **or** new Interface `ContentTypeAwareServerAction` with two Methods:\r\n- getDefaultBodyContentType\r\n- getDefaultResultContentType\r\n\r\nDefault content type if none is specified or if the ServerAction does not implement the `ContentTypeAwareServerAction` / `LookupableServerAction` interface is *application/x-java-object* (binary serialized java object).\r\n\r\n**REST Clients**\r\nClient asks for result with content type (e.g. getResult Operation), in  general with default content type described in action Meta-Data. If actual content type produced by server action is different, REST API throws an exception (type result no default  / requested content type)\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/cismet/cids-server/issues/comments/127581980","html_url":"https://github.com/cismet/cids-server/issues/123#issuecomment-127581980","issue_url":"https://api.github.com/repos/cismet/cids-server/issues/123","id":127581980,"user":{"login":"ci-cismet-de","id":2962421,"avatar_url":"https://avatars.githubusercontent.com/u/2962421?v=3","gravatar_id":"","url":"https://api.github.com/users/ci-cismet-de","html_url":"https://github.com/ci-cismet-de","followers_url":"https://api.github.com/users/ci-cismet-de/followers","following_url":"https://api.github.com/users/ci-cismet-de/following{/other_user}","gists_url":"https://api.github.com/users/ci-cismet-de/gists{/gist_id}","starred_url":"https://api.github.com/users/ci-cismet-de/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ci-cismet-de/subscriptions","organizations_url":"https://api.github.com/users/ci-cismet-de/orgs","repos_url":"https://api.github.com/users/ci-cismet-de/repos","events_url":"https://api.github.com/users/ci-cismet-de/events{/privacy}","received_events_url":"https://api.github.com/users/ci-cismet-de/received_events","type":"User","site_admin":false},"created_at":"2015-08-04T12:23:20Z","updated_at":"2015-08-04T12:23:20Z","body":"Integrated branch 'feature/123-action-api-enhancements (6cf23b8db7b37b9d9698cd34d2f233a1064f9c07)' into 'dev (8e41ce4ec8a0b0494203be3968eb6c3c76083dc4)' -- [Build 279](https://ci.cismet.de/job/cids-server/279/)"}}