def __createverb(self, subject, plugin): plugin = action.abstract_string(plugin) plugin = '_'.join(plugin.split()) factory = self.__registry.get_module(plugin) if not factory: return async .failure('no such agent') class DummyDelegate(): def __init__(self): self.errors = [] def add_error(self, msg): self.errors.append(msg) delegate = DummyDelegate() address = self.__workspace.create(factory, delegate) if not address: return [ action.error_return(m, plugin, 'create', ENG) for m in delegate.errors ] return action.concrete_return(address)
def __do_verb(self, subject, text, at, until, every, called): text = action.abstract_string(text) schema = schedproxy.make_schema(at, until, every) called = int(action.abstract_string(called)) if called else None print 'mode schema is:', schema if called and called in self[3]: yield async .Coroutine.success( action.error_return('name in use', '', 'do')) e = self.__create_event(schema, called) r = e.set_phrase(text) yield r yield async .Coroutine.success()
def __do_verb(self, subject, t, k, c): t = action.abstract_string(t) k = int(action.abstract_string(k)) c = int(action.abstract_string(c)) if c else None if k not in self[3]: self.__update_lights(k) self[3][k] = Key(self, self.controller, k) if c and c in self[3][k]: yield async .Coroutine.success( action.error_return('name in use', '', 'do')) r = self[3][k].create_event(t, c) yield r yield async .Coroutine.success()
def __do_verb(self,subject,phrase,row,c): phrase = action.abstract_string(phrase) row = int(action.abstract_string(row)) c = int(action.abstract_string(c)) if c else None target = None if self[5].has_key(row): target = self[5][row] if target is None: target = RowTarget(self,row) self[5][row] = target if c and c in self[5][row]: yield async.Coroutine.success(action.error_return('name in use','','do')) e = target.create_event(phrase,c) yield e yield async.Coroutine.success()
def state_error(obj_id, verb): return action.error_return("%id isnt %s", obj_id, verb)
def cant_find(id, verb): return action.error_return("can't find %id", id, verb, ENG)
def already_exists(thing, verb): return action.error_return('%s already exists', thing, verb, ENG)
def doesnt_exist(thing, verb): return action.error_return('%s does not exist', thing, verb, ENG)
def nothing_to_do(verb): return action.error_return('Nothing to do', '', verb, ENG)
def integer_required(verb): return action.error_return('Integer value required', '', verb, ENG)
def invalid_value(value, verb): return action.error_return('%s cant %s', value, verb)
def cant_error(obj_id, verb): return action.error_return("%id cant %s", obj_id, verb)
def message(msg): return action.error_return(msg, '', '', ENG)
def no_current_voice(val, verb): return action.error_return("no current voice %s", val, verb, ENG)
def state_error1(name, verb): return action.error_return("%s isnt %s", name, verb)
def invalid_thing(thing, verb): return action.error_return("%s is not valid", thing, verb, ENG)
def out_of_range(range, verb): return action.error_return('Allowable range is %s', range, verb, ENG)