def executer(self, *args): # pragma: no cover """Execute remotely""" options = self.options try: # from dbmanagr import daemon # if not daemon.is_running(options): # daemon.start_server(options) url = 'http://{host}:{port}/{path}'.format( host=options.host, port=options.port, path=COMMANDS[options.prog]) request = json.dumps(args[1:]) log.logger.debug('Request to %s:\n%s', url, request) response = urllib2.urlopen(url, request) for i in ijson.items(response, 'item'): yield from_json(i) except urllib2.HTTPError as e: raise from_json(json.load(e)) except urllib2.URLError as e: log.logger.error('Daemon not available: %s', e) except BaseException as e: log.logger.exception(e)
def from_json(d): return RowItem( from_json(d['row']), from_json(d['include']), from_json(d['exclude']), from_json(d['substitutes']) )
def from_json(d): return Item(title=from_json(d['title']), subtitle=from_json(d['subtitle']), autocomplete=from_json(d['autocomplete']), uid=from_json(d['uid']), icon=from_json(d['icon']), value=from_json(d['value']), validity=from_json(d['validity']), format_=from_json(d['format_']))
def from_json(d): return Item( title=from_json(d['title']), subtitle=from_json(d['subtitle']), autocomplete=from_json(d['autocomplete']), uid=from_json(d['uid']), icon=from_json(d['icon']), value=from_json(d['value']), validity=from_json(d['validity']), format_=from_json(d['format_']) )
def from_json(d): return Column( **from_json( filter_keys( d, 'name', 'tablename', 'type', 'nullable', 'default', 'autoincrement', 'primary_key', 'autocomplete' ) ) )
def from_json(d): return Table( **from_json( filter_keys( d, 'name', 'uri', 'owner', 'size', 'primary_key', 'columns', 'foreign_keys', 'autocomplete' ) ) )
def from_json(d): return TableNode( from_json(d['table']), from_json(d['indent']) )
def from_json(d): return ColumnNode(from_json(d['column']), from_json(d['indent']))
def from_json(d): return TableNode(from_json(d['table']), from_json(d['indent']))
def from_json(d): return Row(**from_json(filter_keys(d, 'table', 'row', 'autocomplete')))
def from_json(d): return Table(**from_json( filter_keys(d, 'name', 'uri', 'owner', 'size', 'primary_key', 'columns', 'foreign_keys', 'autocomplete')))
def from_json(d): return RowItem( from_json(d['row']) )
def from_json(d): return NameNode( from_json(d['name']), from_json(d['indent']) )
def from_json(d): return ForeignKey( a=from_json(d.get('a')), b=from_json(d.get('b')) )
def test_from_json(self): """Tests the jsonable.from_json function""" self.assertEqual(None, jsonable.from_json(None)) self.assertEqual({}, jsonable.from_json({})) self.assertEqual([], jsonable.from_json([])) self.assertEqual({'a': 1}, jsonable.from_json({'a': 1})) self.assertEqual([1], jsonable.from_json([1])) self.assertEqual([1], jsonable.from_json((1,))) from decimal import Decimal self.assertEqual(1, jsonable.from_json(Decimal(1))) self.assertEqual(1.1, jsonable.from_json(Decimal(1.1))) import datetime obj = datetime.datetime(2014, 5, 5) self.assertEqual( obj, jsonable.from_json({ '__cls__': 'datetime.datetime', 'value': obj.isoformat() }) ) self.assertEqual( obj, jsonable.from_json({ '__cls__': 'datetime.datetime', 'value': '2014-05-05T00:00:00.000' }) ) self.assertEqual( obj.date(), jsonable.from_json({ '__cls__': 'datetime.date', 'value': '2014-05-05' }) ) self.assertEqual( 'a', jsonable.from_json({ '__cls__': 'a.Exception', 'message': 'a' }).message ) from sqlalchemy.util import KeyedTuple self.assertEqual( KeyedTuple([1], labels=['a']), jsonable.from_json({ '__cls__': 'sqlalchemy.util.KeyedTuple', '_labels': ['a'], 'a': 1 }) ) from dbmanagr.dto.node import NameNode self.assertEqual( NameNode('a'), jsonable.from_json({ '__cls__': 'dbmanagr.dto.node.NameNode', 'name': 'a', 'indent': 0 }) )
def from_json(d): return RowItem(from_json(d['row']), from_json(d['include']), from_json(d['exclude']), from_json(d['substitutes']))
def test_from_json(self): """Tests the jsonable.from_json function""" self.assertEqual(None, jsonable.from_json(None)) self.assertEqual({}, jsonable.from_json({})) self.assertEqual([], jsonable.from_json([])) self.assertEqual({'a': 1}, jsonable.from_json({'a': 1})) self.assertEqual([1], jsonable.from_json([1])) self.assertEqual([1], jsonable.from_json((1, ))) from decimal import Decimal self.assertEqual(1, jsonable.from_json(Decimal(1))) self.assertEqual(1.1, jsonable.from_json(Decimal(1.1))) import datetime obj = datetime.datetime(2014, 5, 5) self.assertEqual( obj, jsonable.from_json({ '__cls__': 'datetime.datetime', 'value': obj.isoformat() })) self.assertEqual( obj, jsonable.from_json({ '__cls__': 'datetime.datetime', 'value': '2014-05-05T00:00:00.000' })) self.assertEqual( obj.date(), jsonable.from_json({ '__cls__': 'datetime.date', 'value': '2014-05-05' })) self.assertEqual( 'a', jsonable.from_json({ '__cls__': 'a.Exception', 'message': 'a' }).message) from sqlalchemy.util import KeyedTuple self.assertEqual( KeyedTuple([1], labels=['a']), jsonable.from_json({ '__cls__': 'sqlalchemy.util.KeyedTuple', '_labels': ['a'], 'a': 1 })) from dbmanagr.dto.node import NameNode self.assertEqual( NameNode('a'), jsonable.from_json({ '__cls__': 'dbmanagr.dto.node.NameNode', 'name': 'a', 'indent': 0 }))
def from_json(d): return NameNode(from_json(d['name']), from_json(d['indent']))
def from_json(d): return Row( **from_json(filter_keys(d, 'table', 'row', 'autocomplete')) )
def from_json(d): return ForeignKeyNode(from_json(d['fk']), from_json(d['parent']), from_json(d['indent']))
def from_json(d): return ForeignKeyNode( from_json(d['fk']), from_json(d['parent']), from_json(d['indent']) )