当前位置: 首页>>代码示例>>Python>>正文


Python Event.fire方法代码示例

本文整理汇总了Python中event.Event.fire方法的典型用法代码示例。如果您正苦于以下问题:Python Event.fire方法的具体用法?Python Event.fire怎么用?Python Event.fire使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在event.Event的用法示例。


在下文中一共展示了Event.fire方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_a_listener_is_notified_when_an_event_is_raised

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
 def test_a_listener_is_notified_when_an_event_is_raised(self):
     """"""
     listener = Mock()
     event = Event()
     event.connect(listener)
     event.fire()  
     self.assertTrue(listener.called)
开发者ID:justttry,项目名称:test_driven_python_development,代码行数:9,代码来源:test_event.py

示例2: test_a_listener_is_passed_right_parameters

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
 def test_a_listener_is_passed_right_parameters(self):
     """"""
     listener = Mock()
     event = Event()
     event.connect(listener)
     event.fire(5, shape="square")
     listener.assert_called_with(5, shape="square")
开发者ID:justttry,项目名称:test_driven_python_development,代码行数:9,代码来源:test_event.py

示例3: __init__

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
class World:

  def __init__(self):
    self.connections = []
    self.connection_added = Event()
    self.channel_opened = Event()

  def get_connections(self):
    ret = []
    for c in self.connections:
      ret.append(c)
    return ret

  def remove_connection(self, connection):
    if connection.is_connected:
      raise "I don't think so, tim"
    self.connections.remove(connection)

  def new_connection(self):
    conn = Connection()
    self.connections.append(conn)

    conn.channel_opened += self.handle_channel_opened

    self.connection_added.fire(self, conn)
    return conn

  def shut_it_down(self):
    for c in self.connections:
      c.shut_it_down()

  def handle_channel_opened(self, channel):
    self.channel_opened.fire(self, channel)
开发者ID:bblack,项目名称:pirc,代码行数:35,代码来源:world.py

示例4: test_Event_SubscribeAndFireWithDupplicateKeyword_RaisesException

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
 def test_Event_SubscribeAndFireWithDupplicateKeyword_RaisesException(self):
     mockListener = mock.Mock()
     event = Event()
     event.subscribe(mockListener, kword1="value1")
 
     with self.assertRaises(DuplicateKeywordArgument):
         event.fire(kword1="value2")
开发者ID:sirk390,项目名称:utils,代码行数:9,代码来源:test_event.py

示例5: test_Event_SubscribeWithArgsAndKwargsFireWithArgsAndKwargs_ListenerIsCalledWithMergedArguments

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
 def test_Event_SubscribeWithArgsAndKwargsFireWithArgsAndKwargs_ListenerIsCalledWithMergedArguments(self):
     mockListener = mock.Mock()
     event = Event()
     event.subscribe(mockListener, "arg1", "arg2", kword1="value1", kword2="value2")
 
     event.fire("arg3", "arg4", kword3="value3", kword4="value4")
 
     mockListener.assert_called_with('arg1', 'arg2', 'arg3', 'arg4', kword4='value4', kword3='value3', kword2='value2', kword1='value1')
开发者ID:sirk390,项目名称:utils,代码行数:10,代码来源:test_event.py

示例6: test_Event_FireUsingDifferentCallMethod_CallMethodIsCalled

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
    def test_Event_FireUsingDifferentCallMethod_CallMethodIsCalled(self):
        mock_call_method = mock.Mock()
        event = Event(call_method=mock_call_method)
        event.subscribe("fct1", "arg1")
    
        event.fire("arg2")

        mock_call_method.assert_called_with("fct1", "arg1", "arg2")
开发者ID:sirk390,项目名称:utils,代码行数:10,代码来源:test_event.py

示例7: test_Event_UnsubscribeItselfInACallBack_CallbackIsUnsubscribed

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
    def test_Event_UnsubscribeItselfInACallBack_CallbackIsUnsubscribed(self):
        def unsubscriber_callback(event):
            event.unsubscribe(unsubscriber_callback)
        event = Event()
        event.subscribe(unsubscriber_callback, event=event)
    
        event.fire()

        self.assertFalse(event.is_subscribed(unsubscriber_callback))
开发者ID:sirk390,项目名称:utils,代码行数:11,代码来源:test_event.py

示例8: test_Event_SubscribeInACallBack_CallbackIsSubscribed

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
    def test_Event_SubscribeInACallBack_CallbackIsSubscribed(self):
        def subscriber_callback(event, callback2):
            event.subscribe(callback2)
        event = Event()
        event.subscribe(subscriber_callback, event=event, callback2="callback1")
    
        event.fire()

        self.assertTrue(event.is_subscribed("callback1"))
开发者ID:sirk390,项目名称:utils,代码行数:11,代码来源:test_event.py

示例9: __init__

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
class TagReader:
    def __init__(self, connection_string):
        self.clf = nfc.ContactlessFrontend(connection_string)
        self.tag_discovered = Event()
        start_new_thread(self.loop, ())

    def loop(self):
        while True:
            self.clf.connect(rdwr={"on-connect": self.on_connect})

    def on_connect(self, tag):
        self.tag_discovered.fire(tag.identifier.encode("hex"))
        return True
开发者ID:ngollon,项目名称:Jukebox,代码行数:15,代码来源:tagreader.py

示例10: __init__

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
class Channel:
  def __init__(self, connection, name):
    self.connection = connection
    self.name = name
    self.getting_names = False
    self.nicks = set()

    self.nick_added = Event()
    self.nick_removed = Event()
    self.nick_changed = Event()
    self.msg_received = Event()
    self.someone_kicked = Event() # Someone, anyone, was kicked from the channel
    self.someone_joined = Event()
    self.someone_parted = Event()
    self.someone_quit = Event()
    self.left = Event() # The pirc user is no longer in the channel

    self.connection.received += self.catch_channel_shit
    self.connection.received += self.catch_joins
    self.connection.received += self.catch_parts
    self.connection.received += self.catch_kicks
    self.connection.received += self.catch_privmsgs
    self.connection.closed += self.catch_connection_closed

    self.connection.nick_changed += self.catch_nick_changed

  def _leave(self):
    for nick in self.nicks.copy():
      self._remove_nick(nick)
    self.left.fire(self)

  def catch_connection_closed(self, msg):
    self._leave()

  def catch_nick_changed(self, (old_nick, new_nick)):
    if old_nick in self.nicks:
      self.nicks.remove(old_nick)
      self.nicks.add(new_nick)
      self.nick_changed.fire(self, old_nick, new_nick)
开发者ID:bblack,项目名称:pirc,代码行数:41,代码来源:channel.py

示例11: PrayerTimesNotifier

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
class PrayerTimesNotifier(object):
    def __init__(self, location, alert_on):
        self.praytime = Praytime(location)
        self.waitingfor = getNextPrayer(self.praytime)
        prayername = getPreviousPrayerName(self.waitingfor[0])
        self.now = (prayername, getattr(self.praytime, prayername))
        self.running = False
        self.alarm = Alarm()
        self._ontime = Event()
        self.alert_on = alert_on

    @property
    def onTime(self):
        return self._ontime

    def start(self):
        """
        Start notifying on prayers times
        """
        if self.waitingfor == self.now or not self.running:
            self.waitingfor = getNextPrayer(self.praytime, self.now[0])
            logging.info("Adding alarm %s", self.waitingfor)
            self.alarm.addAlarm(self.waitingfor[1], self._notify, self.waitingfor[0], self.waitingfor[1])
        self.running = True
        return True

    def _notify(self, *args):
        self.now = self.waitingfor
        if self.waitingfor[0] in self.alert_on:
            self._ontime.fire(*args)
        self.start()

    def __str__(self):
        return str(self.praytime)

    def __repr__(self):
        return str(self)
开发者ID:grimpy,项目名称:pyazan,代码行数:39,代码来源:praytime.py

示例12: DB

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
class DB(object):
  def __init__(self, settings):
    self.settings = settings
    self.needs_indexing = Event() # fired when the database gets dirtied and needs syncing
    self._pending_indexer = None # non-None if a DBIndexer is running
    self._cur_shard_manager = None # the current DBShardManager object. This has all the DBIndexShards.
    self._cur_query_cache = None

    self._dir_cache = DirCache() # thread only state

    # if we are currently looking for changed dirs, this is the iterator
    # directories remaining to be checked
    self._pending_up_to_date_generator = None

    self.settings.register('dirs', list, [], self._on_settings_dirs_changed)
    self._on_settings_dirs_changed(None, self.settings.dirs)

    self.settings.register('ignores', list, [], self._on_settings_ignores_changed)
    if self.settings.ignores == []:
      self.settings.ignores = DEFAULT_IGNORES;

    self._on_settings_ignores_changed(None, self.settings.ignores)

    self.settings.register('token', str, "", self._on_settings_token_changed)
    self._on_settings_token_changed(None, self.settings.token)

  def close(self):
    if self._cur_shard_manager:
      self._cur_shard_manager.close()
      self._cur_shard_manager = None

  ###########################################################################

  def _on_settings_dirs_changed(self, old, new):
    self._dirs = map(lambda d: DBDir(d), new)
    self._set_dirty()

  @property
  def dirs(self):
    return list(self._dirs)

  def add_dir(self, d):
    real_d = os.path.realpath(d)

    cur = list(self.settings.dirs)
    if real_d in cur:
      raise DBException("Directory %s exists already as %s" % (d, real_d))

    # commit change
    cur.append(real_d)
    self.settings.dirs = cur  # triggers _on_settings_dirs_changed
    return self.dirs[-1]

  def delete_dir(self, d):
    if type(d) != DBDir:
      raise Exception("Expected DBDir")
    cur = list(self.settings.dirs)
    if d.path not in cur:
      raise DBException("not found")
    cur.remove(d.path)
    self.settings.dirs = cur # triggers _on_settings_dirs_changed

  ###########################################################################

  def _on_settings_ignores_changed(self, old, new):
    self._set_dirty()

  @property
  def ignores(self):
    return list(self.settings.ignores)

  def ignore(self,pattern):
    i = list(self.settings.ignores)
    if pattern in i:
      return
    i.append(pattern)
    self.settings.ignores = i

  def unignore(self,pattern):
    i = list(self.settings.ignores)
    i.remove(pattern)
    self.settings.ignores = i

  ###########################################################################

  def _on_settings_token_changed(self, old, new):
    self._set_dirty()

  @property
  def token(self):
    return self.settings.token

  @token.setter
  def token(self, token):
    self.settings.token = token

  ###########################################################################

  @property
  def has_index(self):
#.........这里部分代码省略.........
开发者ID:danakj,项目名称:quickopen,代码行数:103,代码来源:db.py

示例13: NetworkNode

# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import fire [as 别名]
class NetworkNode(object):
    
    MAX_REQUEST_ID = 1000000
    """ keep track of requests send to other nodes """
    def __init__(self, network_handler, random=SystemRandom()):
        self.network_handler = network_handler
        self.requests_sent = {}
        self.requests_received = {}
        self.addr = self.network_handler.getaddr()
        self.network_handler.ON_MESSAGE.subscribe(self._on_message)
        self.random = random
        self.ON_REQUEST = Event()
    
    def find_unique_requestid(self):
        result_id = self.random.randint(0, self.MAX_REQUEST_ID)
        while result_id in self.requests_sent:
            result_id = self.random.randint(0, self.MAX_REQUEST_ID)
        return result_id

    def request(self, addr, request):
        id = self.find_unique_requestid()
        f = Future()
        self.requests_sent[id] = (f, request)
        self._send_request(addr, request, id)
        return f

    def reply(self, reply_future):
        try:
            result = reply_future.result()
        except:
            traceback.print_exc()
        from_addr, request, id = self.requests_received[reply_future] 
        self._send_reply(from_addr, result, id)
    
    def _send_request(self, addr, request, id):
        data = json.dumps({"request": request, "id": id})
        self.network_handler.send(addr, data)

    def _send_reply(self, addr, reply, id):
        data = json.dumps({"reply": reply, "id": id})
        self.network_handler.send(addr, data)
        
    def _on_message(self, from_addr, data):
        data = json.loads(data)
        if "request" in data:
            reply_future = Future()
            self.requests_received[reply_future] = (from_addr, data["request"], data.get("id"))
            self.ON_REQUEST.fire(reply_future, from_addr, data["request"], id)
            reply_future.add_done_callback(self.reply)
            #then(reply_future, self.reply)
        if "reply" in data:
            if "id" not in data:
                print "error: missing 'id' in reply"
                return
            if not (isinstance(data["id"], basestring) or type(data["id"]) is int):
                print "error: 'id' should be an int or a string"
                return
            if data["id"] not in self.requests_sent:
                print self.requests_sent
                print data["id"]
                print "error: unknown 'id'"
                return
            future, request = self.requests_sent[data["id"]]
            future.set_result(data["reply"])
开发者ID:sirk390,项目名称:scratch,代码行数:66,代码来源:network.py


注:本文中的event.Event.fire方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。