Esempio n. 1
0
def runtask(user_id, task_id):
    """
    Run a task for a particular user.
    """
    with get_exchange(user_id) as x:
        task = x.get_task(task_id)
        if(not task or task['killed']):
            return {'response': False}

        origin = x.get_object(task['origin_id'])
        args = json.loads(task['args'])
        kwargs = json.loads(task['kwargs'])

        v = origin.get_verb(task['verb_name'])
        v(*args, **kwargs)

    return {'response': True}
Esempio n. 2
0
 def _mkproperty(self, record):
     """
     Instantiate a interface.Property
     """
     origin = self.instantiate('object', id=record['origin_id'])
     p = interface.Property(origin)
     
     p._name = record['name']
     p._origin_id = record['origin_id']
     p._type = record.get('type', 'string')
     p._owner_id = record.get('owner_id', None)
     
     val = record.get('value', '')
     p._value = json.loads(val, exchange=self) if val else val
     
     return p