{"action":"created","issue":{"url":"https://api.github.com/repos/usgs/pyshake/issues/54","labels_url":"https://api.github.com/repos/usgs/pyshake/issues/54/labels{/name}","comments_url":"https://api.github.com/repos/usgs/pyshake/issues/54/comments","events_url":"https://api.github.com/repos/usgs/pyshake/issues/54/events","html_url":"https://github.com/usgs/pyshake/issues/54","id":121786654,"number":54,"title":"Create transfer code hierarchy","user":{"login":"mhearne-usgs","id":303058,"avatar_url":"https://avatars.githubusercontent.com/u/303058?v=3","gravatar_id":"","url":"https://api.github.com/users/mhearne-usgs","html_url":"https://github.com/mhearne-usgs","followers_url":"https://api.github.com/users/mhearne-usgs/followers","following_url":"https://api.github.com/users/mhearne-usgs/following{/other_user}","gists_url":"https://api.github.com/users/mhearne-usgs/gists{/gist_id}","starred_url":"https://api.github.com/users/mhearne-usgs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhearne-usgs/subscriptions","organizations_url":"https://api.github.com/users/mhearne-usgs/orgs","repos_url":"https://api.github.com/users/mhearne-usgs/repos","events_url":"https://api.github.com/users/mhearne-usgs/events{/privacy}","received_events_url":"https://api.github.com/users/mhearne-usgs/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-12-11T20:34:20Z","updated_at":"2016-01-05T17:05:33Z","closed_at":null,"body":"We expect to have a hierarchy of classes that will handle sending data to remote (or local) destinations via different methods.  These should probably live in their own transfer package under the pyshake package.\r\n\r\nStrawman base class would look like this:\r\nclass Sender(object):\r\n  def __init__(self,configdict):\r\n    #configure stuff\r\n  def send(self,stuff):\r\n    #send stuff\r\n  def delete(self):\r\n    #delete whatever stuff we just sent\r\n\r\nWe should then have subclasses that implement this interface for copy, scp, ftp, pdl, and (possibly, someday), email.  "},"comment":{"url":"https://api.github.com/repos/usgs/pyshake/issues/comments/169062934","html_url":"https://github.com/usgs/pyshake/issues/54#issuecomment-169062934","issue_url":"https://api.github.com/repos/usgs/pyshake/issues/54","id":169062934,"user":{"login":"mhearne-usgs","id":303058,"avatar_url":"https://avatars.githubusercontent.com/u/303058?v=3","gravatar_id":"","url":"https://api.github.com/users/mhearne-usgs","html_url":"https://github.com/mhearne-usgs","followers_url":"https://api.github.com/users/mhearne-usgs/followers","following_url":"https://api.github.com/users/mhearne-usgs/following{/other_user}","gists_url":"https://api.github.com/users/mhearne-usgs/gists{/gist_id}","starred_url":"https://api.github.com/users/mhearne-usgs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhearne-usgs/subscriptions","organizations_url":"https://api.github.com/users/mhearne-usgs/orgs","repos_url":"https://api.github.com/users/mhearne-usgs/repos","events_url":"https://api.github.com/users/mhearne-usgs/events{/privacy}","received_events_url":"https://api.github.com/users/mhearne-usgs/received_events","type":"User","site_admin":false},"created_at":"2016-01-05T17:05:33Z","updated_at":"2016-01-05T17:05:33Z","body":"More transfer specs:\r\n - individual transfer calls should be forked (prob. using multiprocess module)\r\n - add a scenario flag to each destination (default is false) - pdl type should then become shakemap-scenario.\r\n - get rid of categories in transfer, and allow use to specify the list of destinations they would like to send from the command line.\r\n - if no destinations specified, then no transfers will occur.\r\n - Write the PushSender() class, which will execute arbitrary commands specified by the user in the config for sending and deleting.\r\n"}}