{"number":250,"pull_request":{"number":250,"issue_url":"https://github.com/DIRACGrid/DIRAC/issues/250","head":{"repo":{"master_branch":"integration","name":"DIRAC","created_at":"2011-05-23T13:10:05Z","size":300,"clone_url":"https://github.com/ubeda/DIRAC.git","private":false,"updated_at":"2011-10-20T11:16:39Z","watchers":1,"ssh_url":"git@github.com:ubeda/DIRAC.git","url":"https://api.github.com/repos/ubeda/DIRAC","git_url":"git://github.com/ubeda/DIRAC.git","language":"Python","fork":true,"svn_url":"https://svn.github.com/ubeda/DIRAC","id":1787973,"pushed_at":"2011-10-20T11:16:39Z","open_issues":0,"homepage":"http://diracgrid.org","description":"DIRAC Grid","forks":0,"html_url":"https://github.com/ubeda/DIRAC","owner":{"avatar_url":"https://secure.gravatar.com/avatar/62c43953d6638cd38d710178edd9dbed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"62c43953d6638cd38d710178edd9dbed","url":"https://api.github.com/users/ubeda","id":805134,"login":"ubeda"}},"label":"ubeda:rssPermissions","sha":"d90c87e35de84e2359f7a89bcccd932583d07119","ref":"rssPermissions","user":{"avatar_url":"https://secure.gravatar.com/avatar/62c43953d6638cd38d710178edd9dbed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"62c43953d6638cd38d710178edd9dbed","url":"https://api.github.com/users/ubeda","id":805134,"login":"ubeda"}},"merged_by":null,"created_at":"2011-10-20T11:24:16Z","changed_files":89,"merged":false,"body":"CHANGE: DB.ResourceStatusDB has been refactored, making it a simple wrapper round ResourceStatusDB.sql with only four methods by table ( insert, update, get & delete )\r\nCHANGE: DB.ResourceStatusDB.sql has been modified to support different statuses per granularity.\r\nCHANGE: DB.ResourceManagementDB has been refactored, making it a simple wrapper round ResourceStatusDB.sql with only four methods by table ( insert, update, get & delete )\r\nCHANGE: Service.ResourceStatusHandler has been refactored, removing all data processing, making it an intermediary between client and DB.\r\nCHANGE: Service.ResourceManagementHandler has been refactored, removing all data processing, making it an intermediary between client and DB.\r\nNEW: Utilities.ResourceStatusBooster makes use of the 'DB primitives' exposed on the client and does some useful data processing, exposing the new functions on the client.\r\nNEW: Utilities.ResourceManagementBooster makes use of the 'DB primitives' exposed on the client and does some useful data processing, exposing the new functions on the client.\r\nCHANGE: Client.ResourceStatusClient has been refactorerd. It connects automatically to DB or to the Service. Exposes DB and booster functions.\r\nCHANGE: Client.ResourceManagementClient has been refactorerd. It connects automatically to DB or to the Service. Exposes DB and booster functions.\r\nCHANGE: Agent.ClientsCacheFeederAgent renamed to CacheFeederAgent. The name was not accurate, as it also feeds Accouting Cache tables.\r\nCHANGE: Agent.*InspectorAgent, makes use of automatic API initialization.\r\nCHANGE: Command.* refactor and usage of automatic API initialization.\r\nCHANGE: PolicySystem.PEP has reusable client connections, which increase significantly performance.\r\nCHANGE: PolicySystem.PDP has reusable client connections, which increase significantly performance.\r\nNEW: Utilities.Decorators are syntactic sugar for DB, Handler and Clients.\r\nNEW: Utilities.MySQLMonkey is a mixture of laziness and refactoring, in order to generate the SQL statements automatically. Not anymore sqlStatemens hardcoded on the RSS.\r\nNEW: Utilities.Validator are common checks done through RSS modules\r\nCHANGE: Utilities.Synchronizer syncs users and DIRAC sites\r\nCHANGE: cosmetic changes everywhere, added HeadURL and RCSID","comments":0,"title":"\"New\" RSS ( huge refactoring )","additions":16535,"diff_url":"https://github.com/DIRACGrid/DIRAC/pull/250.diff","updated_at":"2011-10-20T11:24:16Z","url":"https://api.github.com/repos/DIRACGrid/DIRAC/pulls/250","id":418161,"patch_url":"https://github.com/DIRACGrid/DIRAC/pull/250.patch","mergeable":null,"merged_at":null,"commits":195,"closed_at":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/62c43953d6638cd38d710178edd9dbed?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"62c43953d6638cd38d710178edd9dbed","url":"https://api.github.com/users/ubeda","id":805134,"login":"ubeda"},"deletions":10859,"html_url":"https://github.com/DIRACGrid/DIRAC/pull/250","base":{"repo":{"master_branch":"integration","name":"DIRAC","created_at":"2011-04-06T11:47:53Z","size":1124,"clone_url":"https://github.com/DIRACGrid/DIRAC.git","private":false,"updated_at":"2011-10-20T11:24:16Z","watchers":26,"ssh_url":"git@github.com:DIRACGrid/DIRAC.git","url":"https://api.github.com/repos/DIRACGrid/DIRAC","git_url":"git://github.com/DIRACGrid/DIRAC.git","language":"Python","fork":false,"svn_url":"https://svn.github.com/DIRACGrid/DIRAC","id":1576831,"pushed_at":"2011-10-20T11:24:16Z","open_issues":53,"homepage":"http://diracgrid.org","description":"DIRAC Grid","forks":23,"html_url":"https://github.com/DIRACGrid/DIRAC","owner":{"avatar_url":"https://secure.gravatar.com/avatar/59f04e697e04d3703deaecf311df5e1f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"59f04e697e04d3703deaecf311df5e1f","url":"https://api.github.com/users/DIRACGrid","id":694842,"login":"DIRACGrid"}},"label":"DIRACGrid:integration","sha":"2621ac643ece14fd4ac02ea7c12321ba2a062bbc","ref":"integration","user":{"avatar_url":"https://secure.gravatar.com/avatar/59f04e697e04d3703deaecf311df5e1f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"59f04e697e04d3703deaecf311df5e1f","url":"https://api.github.com/users/DIRACGrid","id":694842,"login":"DIRACGrid"}},"state":"open"},"action":"opened"}