{"action":"created","issue":{"url":"https://api.github.com/repos/apache/metamodel/issues/110","repository_url":"https://api.github.com/repos/apache/metamodel","labels_url":"https://api.github.com/repos/apache/metamodel/issues/110/labels{/name}","comments_url":"https://api.github.com/repos/apache/metamodel/issues/110/comments","events_url":"https://api.github.com/repos/apache/metamodel/issues/110/events","html_url":"https://github.com/apache/metamodel/pull/110","id":159875160,"number":110,"title":"Rest api - MetaModel-as-a-Service - draft application","user":{"login":"kaspersorensen","id":291450,"avatar_url":"https://avatars.githubusercontent.com/u/291450?v=3","gravatar_id":"","url":"https://api.github.com/users/kaspersorensen","html_url":"https://github.com/kaspersorensen","followers_url":"https://api.github.com/users/kaspersorensen/followers","following_url":"https://api.github.com/users/kaspersorensen/following{/other_user}","gists_url":"https://api.github.com/users/kaspersorensen/gists{/gist_id}","starred_url":"https://api.github.com/users/kaspersorensen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kaspersorensen/subscriptions","organizations_url":"https://api.github.com/users/kaspersorensen/orgs","repos_url":"https://api.github.com/users/kaspersorensen/repos","events_url":"https://api.github.com/users/kaspersorensen/events{/privacy}","received_events_url":"https://api.github.com/users/kaspersorensen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-06-13T05:23:18Z","updated_at":"2016-06-13T07:33:50Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/metamodel/pulls/110","html_url":"https://github.com/apache/metamodel/pull/110","diff_url":"https://github.com/apache/metamodel/pull/110.diff","patch_url":"https://github.com/apache/metamodel/pull/110.patch"},"body":"Hi all,\r\n\r\nThis is my attempt at building a 'MetaModel-as-a-Service' webapp. Although it is not yet as great as I imagine it should be before we release it, I do think there's a considerable amount of work here to go with, and that might trigger others who want to help with the finishing touches.\r\n\r\nJIRA issue, for reference: https://issues.apache.org/jira/browse/METAMODEL-1097\r\n\r\nThis webapp allows the user to define data sources in a number of groups (in the code I used the word 'tenant' because I imagine usually each group would be a tenant of the application). The data source can then be explored, queried and updated using RESTful endpoints. For example:\r\n\r\n * `PUT /t1` would register a new tenant with name 't1'.\r\n * `PUT /t1/ds` would register a new data source with name 'ds'.\r\n * `GET /t1/ds` would show information about 'ds', including it's schema names.\r\n * `GET /t1/ds/s/public` would show information about the schema 'public'.\r\n * `GET /t1/ds/s/public/t/customers` would show information about the table 'customers' in schema 'public'.\r\n * `POST /t1/ds/s/public/t/customers` would insert data into the 'customers' table.\r\n * `GET /t1/ds/q?sql=SELECT+name+FROM+customers` would fire the given query to the data source.\r\n\r\n(see the controllers package for all endpoints).\r\n\r\nHere's what is missing (as far as I can think of) before I think it is _really_ releasable:\r\n\r\n - No formal interface documentation yet (I think we should add a swagger file).\r\n - No persistence of tenant or datasource information (I imagine we can have many ways of implementing this - the simplest would simply be a folder/file based persistence of tenant folders and data source folders / JSON files).\r\n - So far only a simple datasource definition reader for POJO data (but others should be very easy to add - I suggest adopting the `MetaModel-spring` module's approach to this).\r\n\r\nWould love a review and discussion, and would invite anyone else to further contribute to making this releasable."},"comment":{"url":"https://api.github.com/repos/apache/metamodel/issues/comments/225507975","html_url":"https://github.com/apache/metamodel/pull/110#issuecomment-225507975","issue_url":"https://api.github.com/repos/apache/metamodel/issues/110","id":225507975,"user":{"login":"LosD","id":1282832,"avatar_url":"https://avatars.githubusercontent.com/u/1282832?v=3","gravatar_id":"","url":"https://api.github.com/users/LosD","html_url":"https://github.com/LosD","followers_url":"https://api.github.com/users/LosD/followers","following_url":"https://api.github.com/users/LosD/following{/other_user}","gists_url":"https://api.github.com/users/LosD/gists{/gist_id}","starred_url":"https://api.github.com/users/LosD/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LosD/subscriptions","organizations_url":"https://api.github.com/users/LosD/orgs","repos_url":"https://api.github.com/users/LosD/repos","events_url":"https://api.github.com/users/LosD/events{/privacy}","received_events_url":"https://api.github.com/users/LosD/received_events","type":"User","site_admin":false},"created_at":"2016-06-13T07:33:50Z","updated_at":"2016-06-13T07:33:50Z","body":"I've seen this before for EOLs. I guess it's because it confiders it another line"}}
{"actor":{"display_login":"LosD"}}