{"action":"created","issue":{"url":"https://api.github.com/repos/jjacquay712/GoRods/issues/7","repository_url":"https://api.github.com/repos/jjacquay712/GoRods","labels_url":"https://api.github.com/repos/jjacquay712/GoRods/issues/7/labels{/name}","comments_url":"https://api.github.com/repos/jjacquay712/GoRods/issues/7/comments","events_url":"https://api.github.com/repos/jjacquay712/GoRods/issues/7/events","html_url":"https://github.com/jjacquay712/GoRods/issues/7","id":162548287,"number":7,"title":"Implement iquest functionality","user":{"login":"jjacquay712","id":231253,"avatar_url":"https://avatars.githubusercontent.com/u/231253?v=3","gravatar_id":"","url":"https://api.github.com/users/jjacquay712","html_url":"https://github.com/jjacquay712","followers_url":"https://api.github.com/users/jjacquay712/followers","following_url":"https://api.github.com/users/jjacquay712/following{/other_user}","gists_url":"https://api.github.com/users/jjacquay712/gists{/gist_id}","starred_url":"https://api.github.com/users/jjacquay712/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jjacquay712/subscriptions","organizations_url":"https://api.github.com/users/jjacquay712/orgs","repos_url":"https://api.github.com/users/jjacquay712/repos","events_url":"https://api.github.com/users/jjacquay712/events{/privacy}","received_events_url":"https://api.github.com/users/jjacquay712/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/jjacquay712/GoRods/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/jjacquay712/GoRods/labels/help%20wanted","name":"help wanted","color":"159818"}],"state":"open","locked":false,"assignee":{"login":"jjacquay712","id":231253,"avatar_url":"https://avatars.githubusercontent.com/u/231253?v=3","gravatar_id":"","url":"https://api.github.com/users/jjacquay712","html_url":"https://github.com/jjacquay712","followers_url":"https://api.github.com/users/jjacquay712/followers","following_url":"https://api.github.com/users/jjacquay712/following{/other_user}","gists_url":"https://api.github.com/users/jjacquay712/gists{/gist_id}","starred_url":"https://api.github.com/users/jjacquay712/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jjacquay712/subscriptions","organizations_url":"https://api.github.com/users/jjacquay712/orgs","repos_url":"https://api.github.com/users/jjacquay712/repos","events_url":"https://api.github.com/users/jjacquay712/events{/privacy}","received_events_url":"https://api.github.com/users/jjacquay712/received_events","type":"User","site_admin":false},"assignees":[{"login":"jjacquay712","id":231253,"avatar_url":"https://avatars.githubusercontent.com/u/231253?v=3","gravatar_id":"","url":"https://api.github.com/users/jjacquay712","html_url":"https://github.com/jjacquay712","followers_url":"https://api.github.com/users/jjacquay712/followers","following_url":"https://api.github.com/users/jjacquay712/following{/other_user}","gists_url":"https://api.github.com/users/jjacquay712/gists{/gist_id}","starred_url":"https://api.github.com/users/jjacquay712/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jjacquay712/subscriptions","organizations_url":"https://api.github.com/users/jjacquay712/orgs","repos_url":"https://api.github.com/users/jjacquay712/repos","events_url":"https://api.github.com/users/jjacquay712/events{/privacy}","received_events_url":"https://api.github.com/users/jjacquay712/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2016-06-27T21:06:11Z","updated_at":"2016-07-20T06:12:37Z","closed_at":null,"body":"**Idea:**\r\nORM/DAO abstraction on top of the functions that accept SQL queries/query fragments. Maybe something similar to ActiveRecord but more iRods specific, like this:\r\n\r\n```\r\nimport (\r\n     \"github.com/jjacquay712/GoRods\"\r\n     .   \"github.com/jjacquay712/GoRods/orm\"\r\n)\r\n\r\nrodsConnection.FindObjs().Where(\r\n    And(\r\n        MetaAttr(\"projectName\").Equals(\"MyScienceProject\"),\r\n        ObjSize().GreaterThan(1024)\r\n    )\r\n).Each(func (obj gorods.DataObj) {\r\n      // Do something here\r\n})\r\n\r\n\r\n// or this for iquest \"select META_DATA_ATTR_NAME”\r\n\r\nrodsConnection.MetaAttrs().Unique().Each(...)\r\n```"},"comment":{"url":"https://api.github.com/repos/jjacquay712/GoRods/issues/comments/233847582","html_url":"https://github.com/jjacquay712/GoRods/issues/7#issuecomment-233847582","issue_url":"https://api.github.com/repos/jjacquay712/GoRods/issues/7","id":233847582,"user":{"login":"simont","id":11146,"avatar_url":"https://avatars.githubusercontent.com/u/11146?v=3","gravatar_id":"","url":"https://api.github.com/users/simont","html_url":"https://github.com/simont","followers_url":"https://api.github.com/users/simont/followers","following_url":"https://api.github.com/users/simont/following{/other_user}","gists_url":"https://api.github.com/users/simont/gists{/gist_id}","starred_url":"https://api.github.com/users/simont/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simont/subscriptions","organizations_url":"https://api.github.com/users/simont/orgs","repos_url":"https://api.github.com/users/simont/repos","events_url":"https://api.github.com/users/simont/events{/privacy}","received_events_url":"https://api.github.com/users/simont/received_events","type":"User","site_admin":false},"created_at":"2016-07-20T06:12:37Z","updated_at":"2016-07-20T06:12:37Z","body":"+1 for this feature as a way to get additional data from iRODS and the iCAT db, e.g total size of files in a collection, etc, plus many other interesting queries that could be done to spice up an iRODS web UI.\r\n\r\nNote that the current iquest functionality handles all the appropriate access controls, etc. that may be hard to recreate if GoRods goes a more direct route to accessing the data in the database. It would certainly be easy to query the db directly but that would likely require GoRods to hold the main iCAT db username/password as well as ensure that queries executed on the part of a user only return results that they are allowed to receive."}}
{"actor":{"display_login":"simont"}}