{"action":"created","issue":{"url":"https://api.github.com/repos/OpenDataAnalytics/gaia/issues/41","repository_url":"https://api.github.com/repos/OpenDataAnalytics/gaia","labels_url":"https://api.github.com/repos/OpenDataAnalytics/gaia/issues/41/labels{/name}","comments_url":"https://api.github.com/repos/OpenDataAnalytics/gaia/issues/41/comments","events_url":"https://api.github.com/repos/OpenDataAnalytics/gaia/issues/41/events","html_url":"https://github.com/OpenDataAnalytics/gaia/pull/41","id":133086531,"number":41,"title":"Gaia API rewrite","user":{"login":"mbertrand","id":187676,"avatar_url":"https://avatars.githubusercontent.com/u/187676?v=3","gravatar_id":"","url":"https://api.github.com/users/mbertrand","html_url":"https://github.com/mbertrand","followers_url":"https://api.github.com/users/mbertrand/followers","following_url":"https://api.github.com/users/mbertrand/following{/other_user}","gists_url":"https://api.github.com/users/mbertrand/gists{/gist_id}","starred_url":"https://api.github.com/users/mbertrand/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbertrand/subscriptions","organizations_url":"https://api.github.com/users/mbertrand/orgs","repos_url":"https://api.github.com/users/mbertrand/repos","events_url":"https://api.github.com/users/mbertrand/events{/privacy}","received_events_url":"https://api.github.com/users/mbertrand/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2016-02-11T21:00:32Z","updated_at":"2016-02-18T03:10:33Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/OpenDataAnalytics/gaia/pulls/41","html_url":"https://github.com/OpenDataAnalytics/gaia/pull/41","diff_url":"https://github.com/OpenDataAnalytics/gaia/pull/41.diff","patch_url":"https://github.com/OpenDataAnalytics/gaia/pull/41.patch"},"body":"@aashish24 @kotfic This PR provides a framework for making geospatial queries defined in a JSON/dictionary format that specifies inputs, arguments, etc.\r\n\r\nExample commandline usage:\r\n\r\n```\r\npython gaia/parser.py within --jsonfile gaiaprocess.json\r\n```\r\n\r\nwhere 'within' is the function to run, and [gaiaprocess.json](https://github.com/OpenDataAnalytics/gaia/blob/gaia_api/tests/data/geoprocess/within_nested_buffer_process.json) defines the inputs, outputs, and arguments.\r\n\r\nPrimary classes include:\r\n  * [GaiaRequestParser](https://github.com/OpenDataAnalytics/gaia/blob/gaia_api/gaia/parser.py#L12) for parsing the JSON describing the process and creating the necessary Process, Input, and Output classes\r\n  * [GaiaProcess](https://github.com/OpenDataAnalytics/gaia/blob/gaia_api/gaia/processes.py#L15) - an abstract class with many concrete subclasses each of which runs a particular geospatial function (WithinProcess, IntersectsProcess, SubsetRasterProcess, etc)\r\n  * [GaiaIO](https://github.com/OpenDataAnalytics/gaia/blob/gaia_api/gaia/inputs.py#L27) - an abstract class with many concrete subclasses, each of which reads/writes data from a particular source (vector file, raster file, PostGIS table, etc).\r\n\r\nDefault configuration settings are stored in a [file](https://github.com/OpenDataAnalytics/gaia/blob/gaia_api/gaia/conf/gaia.dist.cfg), among them default_epsg - any inputs not already in this projection will be reprojected before processes are run, and outputs will be in this projection by default (TODO: allow specifying outputs in different projections).\r\n\r\nEach process has a generated UUID, and file outputs by default are written to a folder and file with that UUID (subprocess outputs will be written to a subfolder within the parent process folder).\r\n\r\nMore TODO's: Map algebra functions, PostGIS support, data filtering, output configuration, Girder folder/file/item support, OGC WFS/WPS support\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/OpenDataAnalytics/gaia/issues/comments/185523457","html_url":"https://github.com/OpenDataAnalytics/gaia/pull/41#issuecomment-185523457","issue_url":"https://api.github.com/repos/OpenDataAnalytics/gaia/issues/41","id":185523457,"user":{"login":"aashish24","id":146527,"avatar_url":"https://avatars.githubusercontent.com/u/146527?v=3","gravatar_id":"","url":"https://api.github.com/users/aashish24","html_url":"https://github.com/aashish24","followers_url":"https://api.github.com/users/aashish24/followers","following_url":"https://api.github.com/users/aashish24/following{/other_user}","gists_url":"https://api.github.com/users/aashish24/gists{/gist_id}","starred_url":"https://api.github.com/users/aashish24/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aashish24/subscriptions","organizations_url":"https://api.github.com/users/aashish24/orgs","repos_url":"https://api.github.com/users/aashish24/repos","events_url":"https://api.github.com/users/aashish24/events{/privacy}","received_events_url":"https://api.github.com/users/aashish24/received_events","type":"User","site_admin":false},"created_at":"2016-02-18T03:10:33Z","updated_at":"2016-02-18T03:10:33Z","body":"@mbertrand ReadTheDocs would be a good place for it. "}}