本文整理汇总了Python中querier.Querier类的典型用法代码示例。如果您正苦于以下问题:Python Querier类的具体用法?Python Querier怎么用?Python Querier使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Querier类的19个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: __init__
def __init__(self, dht_addr):
my_addr = dht_addr
my_id = identifier.RandomId()
my_node = Node(my_addr, my_id)
tracker_ = tracker.Tracker()
token_m = token_manager.TokenManager()
self.reactor = ThreadedReactor()
rpc_m = RPCManager(self.reactor, my_addr[1])
querier_ = Querier(rpc_m, my_id)
routing_m = RoutingManager(my_node, querier_,
bootstrap_nodes)
responder_ = Responder(my_id, routing_m,
tracker_, token_m)
responder_.set_on_query_received_callback(
routing_m.on_query_received)
querier_.set_on_response_received_callback(
routing_m.on_response_received)
querier_.set_on_error_received_callback(
routing_m.on_error_received)
querier_.set_on_timeout_callback(routing_m.on_timeout)
querier_.set_on_nodes_found_callback(routing_m.on_nodes_found)
routing_m.do_bootstrap()
rpc_m.add_msg_callback(QUERY,
responder_.on_query_received)
self.lookup_m = LookupManager(my_id, querier_,
routing_m)
self._routing_m = routing_m
开发者ID:Anaconda84,项目名称:Anaconda,代码行数:32,代码来源:controller.py
示例2: do_query
def do_query(self, query):
"""
Renders the results page
"""
q = Querier()
results = None
try:
# extracts only the bindings from the result dictionary
bindings = [r['results']['bindings'] for r in q.query(str(query)) if r['results']['bindings'] != []]
results = self.unpack_results(bindings)
except:
# in case of any exception should render an error page
results = "ERROR"
return self.serve_template('results.txt', results=results)
开发者ID:iferminm,项目名称:Semantic-Search,代码行数:14,代码来源:searcher.py
示例3: cancelLinking
def cancelLinking(self):
"""cancelLinking()
takes modem out of linking or unlinking mode"""
self.querier = Querier(InsteonAddress("00.00.00"))
self.querier.setMsgHandler(DefaultMsgHandler("cancel linking"))
msg = Msg.s_makeMessage("CancelALLLinking")
self.querier.sendMsg(msg)
开发者ID:MattM178,项目名称:insteon-terminal,代码行数:7,代码来源:modem2413U.py
示例4: __init__
def __init__(self, dht_addr):
self.my_addr = dht_addr
self.my_id = identifier.RandomId()
self.my_node = Node(self.my_addr, self.my_id)
self.tracker = tracker.Tracker()
self.token_m = token_manager.TokenManager()
self.reactor = ThreadedReactor()
self.rpc_m = RPCManager(self.reactor, self.my_addr[1])
self.querier = Querier(self.rpc_m, self.my_id)
self.routing_m = RoutingManager(self.my_node, self.querier,
bootstrap_nodes)
self.responder = Responder(self.my_id, self.routing_m,
self.tracker, self.token_m)
self.responder.set_on_query_received_callback(
self.routing_m.on_query_received)
self.querier.set_on_response_received_callback(
self.routing_m.on_response_received)
self.querier.set_on_error_received_callback(
self.routing_m.on_error_received)
self.querier.set_on_timeout_callback(self.routing_m.on_timeout)
self.querier.set_on_nodes_found_callback(self.routing_m.on_nodes_found)
self.routing_m.do_bootstrap()
self.rpc_m.add_msg_callback(QUERY,
self.responder.on_query_received)
self.lookup_m = LookupManager(self.my_id, self.querier,
self.routing_m)
开发者ID:Anaconda84,项目名称:Anaconda,代码行数:31,代码来源:controller.py
示例5: __init__
def __init__(self, version_label,
my_node, conf_path,
routing_m_mod, lookup_m_mod,
experimental_m_mod,
private_dht_name,
bootstrap_mode):
self.bootstrapper = bootstrap.OverlayBootstrapper(conf_path)
my_addr = my_node.addr
self._my_id = my_node.id # id indicated by user
if not self._my_id:
self._my_id = self._my_id = identifier.RandomId() # random id
self._my_node = Node(my_addr, self._my_id, version=version_label)
self.msg_f = message.MsgFactory(version_label, self._my_id,
private_dht_name)
self._querier = Querier()
self._routing_m = routing_m_mod.RoutingManager(
self._my_node, self.msg_f, self.bootstrapper)
self._responder = responder.Responder(self._my_id, self._routing_m,
self.msg_f, bootstrap_mode)
self._tracker = self._responder._tracker
self._lookup_m = lookup_m_mod.LookupManager(self._my_id, self.msg_f,
self.bootstrapper)
self._experimental_m = experimental_m_mod.ExperimentalManager(
self._my_node.id, self.msg_f)
current_ts = time.time()
self._next_maintenance_ts = current_ts
self._next_timeout_ts = current_ts
self._next_main_loop_call_ts = current_ts
self._cached_lookups = []
开发者ID:GlobalSquare,项目名称:pymdht,代码行数:32,代码来源:controller.py
示例6: __init__
def __init__(self, dht_addr, state_filename,
routing_m_mod, lookup_m_mod,
experimental_m_mod,
private_dht_name):
#TODO: don't do this evil stuff!!!
message.private_dht_name = private_dht_name
if size_estimation:
self._size_estimation_file = open('size_estimation.dat', 'w')
self.state_filename = state_filename
saved_id, saved_bootstrap_nodes = state.load(self.state_filename)
if saved_id:
self._my_id = saved_id
else:
self._my_id = identifier.RandomId()
self._my_node = Node(dht_addr, self._my_id)
self._tracker = tracker.Tracker()
self._token_m = token_manager.TokenManager()
self._querier = Querier()
self._routing_m = routing_m_mod.RoutingManager(self._my_node,
saved_bootstrap_nodes)
self._lookup_m = lookup_m_mod.LookupManager(self._my_id)
self._experimental_m = experimental_m_mod.ExperimentalManager(self._my_node.id)
current_ts = time.time()
self._next_save_state_ts = current_ts + SAVE_STATE_DELAY
self._next_maintenance_ts = current_ts
self._next_timeout_ts = current_ts
self._next_main_loop_call_ts = current_ts
self._pending_lookups = []
开发者ID:csasm,项目名称:pymdht,代码行数:33,代码来源:controller.py
示例7: __init__
def __init__(self, dht_addr, state_path,
routing_m_mod, lookup_m_mod,
private_dht_name):
#TODO: don't do this evil stuff!!!
message.private_dht_name = private_dht_name
self.state_filename = os.path.join(state_path, STATE_FILENAME)
self.load_state()
if not self._my_id:
self._my_id = identifier.RandomId()
self._my_node = Node(dht_addr, self._my_id)
self._tracker = tracker.Tracker()
self._token_m = token_manager.TokenManager()
self._reactor = ThreadedReactor()
self._reactor.listen_udp(self._my_node.addr[1],
self._on_datagram_received)
#self._rpc_m = RPCManager(self._reactor)
self._querier = Querier(self._my_id)
bootstrap_nodes = self.loaded_nodes or BOOTSTRAP_NODES
del self.loaded_nodes
self._routing_m = routing_m_mod.RoutingManager(self._my_node,
bootstrap_nodes)
# self._responder = Responder(self._my_id, self._routing_m,
# self._tracker, self._token_m)
self._lookup_m = lookup_m_mod.LookupManager(self._my_id)
current_time = time.time()
self._next_maintenance_ts = current_time
self._next_save_state_ts = current_time + SAVE_STATE_DELAY
self._running = False
开发者ID:futtre,项目名称:pymdht,代码行数:32,代码来源:controller.py
示例8: getid
def getid(self):
"""getid()
get modem id data"""
self.querier = Querier(InsteonAddress("00.00.00"))
self.querier.setMsgHandler(IMInfoMsgHandler("getid"))
msg = Msg.s_makeMessage("GetIMInfo")
self.querier.sendMsg(msg)
开发者ID:MattM178,项目名称:insteon-terminal,代码行数:7,代码来源:modem2413U.py
示例9: unlinkAsController
def unlinkAsController(self, otherDevice, group):
"""unlinkAsController(otherDevice, group)
puts modem in unlink mode to unlink as controller from device "otherDevice" on group "group" """
addr = InsteonAddress(otherDevice)
self.querier = Querier(addr)
self.querier.setMsgHandler(DefaultMsgHandler("unlink as controller"))
msg = Msg.s_makeMessage("StartALLLinking")
msg.setByte("LinkCode", 0xFF)
msg.setByte("ALLLinkGroup", group)
self.querier.sendMsg(msg)
开发者ID:MattM178,项目名称:insteon-terminal,代码行数:10,代码来源:modem2413U.py
示例10: linkAsResponder
def linkAsResponder(self, otherDevice, group):
"""linkAsResponder(otherDevice, group)
puts modem in link mode to respond to device "otherDevice" on group "group" """
addr = InsteonAddress(otherDevice)
self.querier = Querier(addr)
self.querier.setMsgHandler(DefaultMsgHandler("start linking"))
msg = Msg.s_makeMessage("StartALLLinking")
msg.setByte("LinkCode", 0x00)
msg.setByte("ALLLinkGroup", group)
self.querier.sendMsg(msg)
开发者ID:MattM178,项目名称:insteon-terminal,代码行数:10,代码来源:modem2413U.py
示例11: __init__
def __init__(self, version_label,
my_node, state_filename,
routing_m_mod, lookup_m_mod,
experimental_m_mod,
private_dht_name,
bootstrap_mode):
if size_estimation:
self._size_estimation_file = open('size_estimation.dat', 'w')
self.state_filename = state_filename
saved_id, saved_bootstrap_nodes = state.load(self.state_filename)
my_addr = my_node.addr
self._my_id = my_node.id # id indicated by user
if not self._my_id:
self._my_id = saved_id # id loaded from file
if not self._my_id:
self._my_id = self._my_id = identifier.RandomId() # random id
self._my_node = Node(my_addr, self._my_id, version=version_label)
self.msg_f = message.MsgFactory(version_label, self._my_id,
private_dht_name)
self._querier = Querier()
self._routing_m = routing_m_mod.RoutingManager(
self._my_node, saved_bootstrap_nodes, self.msg_f)
self._responder = responder.Responder(self._my_id, self._routing_m,
self.msg_f, bootstrap_mode)
self._tracker = self._responder._tracker
self._lookup_m = lookup_m_mod.LookupManager(self._my_id, self.msg_f)
self._experimental_m = experimental_m_mod.ExperimentalManager(
self._my_node.id, self.msg_f)
current_ts = time.time()
self._next_save_state_ts = current_ts + SAVE_STATE_DELAY
self._next_maintenance_ts = current_ts
self._next_timeout_ts = current_ts
self._next_main_loop_call_ts = current_ts
self._pending_lookups = []
self._cached_lookups = []
开发者ID:AnandMurugan,项目名称:tgs-android,代码行数:41,代码来源:controller.py
示例12: setup
def setup(self):
global time
time = querier.time = MockTime()
self.querier = Querier(tc.CLIENT_ID)
开发者ID:csasm,项目名称:Look-MLKademlia,代码行数:4,代码来源:test_querier.py
示例13: startWatch
def startWatch(self):
"""startWatch()
modem will print all incoming messages on terminal"""
self.querier = Querier(InsteonAddress("00.00.00"))
self.querier.setMsgHandler(MsgDumper("modem"))
self.querier.startWait(10000)
开发者ID:MattM178,项目名称:insteon-terminal,代码行数:6,代码来源:modem2413U.py
示例14: setup
def setup(self):
time.mock_mode()
self.querier = Querier()#tc.CLIENT_ID)
开发者ID:GlobalSquare,项目名称:pymdht,代码行数:3,代码来源:test_querier.py
示例15: __init__
def __init__(self, name, addr):
self.name = name
self.address = addr
self.db = DB()
self.querier = Querier(addr)
addDev(self)
开发者ID:PhilippeLibioulle,项目名称:insteon-terminal,代码行数:6,代码来源:device.py
示例16: Modem2413U
class Modem2413U(Device):
"""============== Insteon PowerLinc modem (PLM) ==============="""
def __init__(self, name, addr):
Device.__init__(self, name, addr)
self.dbbuilder = ModemDBBuilder(addr, self.db)
def __modifyModemDB(self, listener):
self.dbbuilder.setListener(listener)
# after db download complete, listener will perform action
iofun.out("getting db, be patient!")
self.dbbuilder.clear()
self.dbbuilder.start()
def getdb(self):
"""getdb()
download the modem database and print it on the console"""
self.dbbuilder.start()
self.dbbuilder.wait()
self.dbbuilder.dumpDB()
out("Modem Link DB complete")
def startWatch(self):
"""startWatch()
modem will print all incoming messages on terminal"""
self.querier = Querier(InsteonAddress("00.00.00"))
self.querier.setMsgHandler(MsgDumper("modem"))
self.querier.startWait(10000)
def stopWatch(self):
"""stopWatch()
stop modem from printing all incoming messages on terminal"""
if (self.querier):
self.querier.cancel()
def getid(self):
"""getid()
get modem id data"""
self.querier = Querier(InsteonAddress("00.00.00"))
self.querier.setMsgHandler(IMInfoMsgHandler("getid"))
msg = Msg.s_makeMessage("GetIMInfo")
self.querier.sendMsg(msg)
def sendOn(self, group):
"""sendOn(group)
sends ALLLink broadcast ON message to group "group" """
msg = message.createStdMsg(InsteonAddress("00.00.00"), 0x0f,
0x11, 0xFF, group)
iofun.writeMsg(msg)
iofun.out("sent msg: " + msg.toString())
def sendOff(self, group):
"""sendOff(group)
sends ALLLink broadcast OFF message to group "group" """
msg = message.createStdMsg(InsteonAddress("00.00.00"), 0x0f,
0x13, 0xFF, group)
iofun.writeMsg(msg)
iofun.out("sent msg: " + msg.toString())
def linkAsController(self, otherDevice, group):
"""linkAsController(otherDevice, group)
puts modem in link mode to control device "otherDevice" on group "group" """
addr = InsteonAddress(otherDevice)
self.querier = Querier(addr)
self.querier.setMsgHandler(DefaultMsgHandler("link as controller"))
msg = Msg.s_makeMessage("StartALLLinking")
msg.setByte("LinkCode", 0x01)
msg.setByte("ALLLinkGroup", group)
self.querier.sendMsg(msg)
def linkAsResponder(self, otherDevice, group):
"""linkAsResponder(otherDevice, group)
puts modem in link mode to respond to device "otherDevice" on group "group" """
addr = InsteonAddress(otherDevice)
self.querier = Querier(addr)
self.querier.setMsgHandler(DefaultMsgHandler("start linking"))
msg = Msg.s_makeMessage("StartALLLinking")
msg.setByte("LinkCode", 0x00)
msg.setByte("ALLLinkGroup", group)
self.querier.sendMsg(msg)
def linkAsEither(self, otherDevice, group):
"""linkAsEither(otherDevice, group)
puts modem in link mode to link as controller or responder to device "otherDevice" on group "group" """
addr = InsteonAddress(otherDevice)
self.querier = Querier(addr)
self.querier.setMsgHandler(
DefaultMsgHandler("link/unlink as controller or responder"))
msg = Msg.s_makeMessage("StartALLLinking")
msg.setByte("LinkCode", 0x03)
msg.setByte("ALLLinkGroup", group)
self.querier.sendMsg(msg)
def respondToUnlink(self, otherDevice, group):
"""respondToUnlink(otherDevice, group)
make modem respond to unlink message from other device"""
# could not get 0xFF to unlink
self.linkAsEither(otherDevice, group)
def unlinkAsController(self, otherDevice, group):
"""unlinkAsController(otherDevice, group)
puts modem in unlink mode to unlink as controller from device "otherDevice" on group "group" """
addr = InsteonAddress(otherDevice)
self.querier = Querier(addr)
self.querier.setMsgHandler(DefaultMsgHandler("unlink as controller"))
msg = Msg.s_makeMessage("StartALLLinking")
msg.setByte("LinkCode", 0xFF)
msg.setByte("ALLLinkGroup", group)
self.querier.sendMsg(msg)
def cancelLinking(self):
"""cancelLinking()
#.........这里部分代码省略.........
开发者ID:MattM178,项目名称:insteon-terminal,代码行数:101,代码来源:modem2413U.py
示例17: Controller
class Controller():
def __init__(self, dht_addr, state_path, routing_m_mod, lookup_m_mod, private_dht_name):
message.private_dht_name = private_dht_name
self.state_filename = os.path.join(state_path, STATE_FILENAME)
self.load_state()
if not self._my_id:
self._my_id = identifier.RandomId()
self._my_node = Node(dht_addr, self._my_id)
self._tracker = tracker.Tracker()
self._token_m = token_manager.TokenManager()
self._reactor = ThreadedReactor()
self._reactor.listen_udp(self._my_node.addr[1], self._on_datagram_received)
self._querier = Querier(self._my_id)
bootstrap_nodes = self.loaded_nodes or BOOTSTRAP_NODES
del self.loaded_nodes
self._routing_m = routing_m_mod.RoutingManager(self._my_node, bootstrap_nodes)
self._lookup_m = lookup_m_mod.LookupManager(self._my_id)
current_time = time.time()
self._next_maintenance_ts = current_time
self._next_save_state_ts = current_time + SAVE_STATE_DELAY
self._running = False
def start(self):
self._running = True
self._reactor.start()
self._main_loop()
def stop(self):
self._reactor.stop()
def save_state(self):
rnodes = self._routing_m.get_main_rnodes()
f = open(self.state_filename, 'w')
f.write('%r\n' % self._my_id)
for rnode in rnodes:
f.write('%d\t%r\t%s\t%d\t%f\n' % (self._my_id.log_distance(rnode.id),
rnode.id,
rnode.addr[0],
rnode.addr[1],
rnode.rtt * 1000))
f.close()
def load_state(self):
self._my_id = None
self.loaded_nodes = []
try:
f = open(self.state_filename)
except IOError:
return
try:
hex_id = f.readline().strip()
self._my_id = Id(hex_id)
for line in f:
_, hex_id, ip, port, _ = line.split()
addr = (ip, int(port))
node_ = Node(addr, Id(hex_id))
self.loaded_nodes.append(node_)
f.close()
except:
self._my_id = None
self.loaded_nodes = []
logger.error('state.dat is corrupted')
def get_peers(self, lookup_id, info_hash, callback_f, bt_port = 0):
logger.critical('get_peers %d %r' % (bt_port, info_hash))
if time.time() > self._next_maintenance_ts + 1:
logger.critical('minitwisted crashed or stopped!')
return
peers = self._tracker.get(info_hash)
if peers:
callback_f(lookup_id, peers)
log_distance = info_hash.log_distance(self._my_id)
bootstrap_rnodes = self._routing_m.get_closest_rnodes(log_distance, None, True)
lookup_obj = self._lookup_m.get_peers(lookup_id, info_hash, callback_f, bt_port)
lookup_queries_to_send = lookup_obj.start(bootstrap_rnodes)
self._send_queries(lookup_queries_to_send)
return len(lookup_queries_to_send)
def print_routing_table_stats(self):
self._routing_m.print_stats()
def _main_loop(self):
current_time = time.time()
if current_time > self._next_maintenance_ts:
maintenance_delay, queries_to_send, maintenance_lookup_target = self._routing_m.do_maintenance()
self._send_queries(queries_to_send)
if maintenance_lookup_target:
log_distance = maintenance_lookup_target.log_distance(self._my_id)
bootstrap_nodes = self._routing_m.get_closest_rnodes(log_distance, None, True)
lookup_obj = self._lookup_m.maintenance_lookup(maintenance_lookup_target)
lookup_queries_to_send = lookup_obj.start(bootstrap_nodes)
self._send_queries(lookup_queries_to_send)
self._next_maintenance_ts = current_time + maintenance_delay
if current_time > self._next_save_state_ts:
self.save_state()
self._next_save_state_ts = current_time + SAVE_STATE_DELAY
#.........这里部分代码省略.........
开发者ID:salekseev,项目名称:freestream,代码行数:101,代码来源:controller.py
示例18: InsteonAddress
class Device:
name = ""
address = InsteonAddress()
db = None
dbbuilder = None
querier = None
def __init__(self, name, addr):
self.name = name
self.address = addr
self.db = DB()
self.querier = Querier(addr)
addDev(self)
def modifyDB(self, listener):
self.dbbuilder.setListener(listener)
# after db download complete, listener will perform action
self.getdb()
def setRecord(self, offset, laddr, group, linkType, data):
msg = self.makeMsg(offset, laddr, group, linkType,data)
self.querier.setMsgHandler(MsgHandler("got set record"))
self.querier.sendMsg(msg)
def makeMsg(self, offset, laddr, group, linkType, data):
msg = Msg.s_makeMessage("SendExtendedMessage")
msg.setAddress("toAddress", InsteonAddress(self.getAddress()))
msg.setByte("messageFlags", 0x1f)
msg.setByte("command1", 0x2f)
msg.setByte("command2", 0x00)
msg.setByte("userData1", 0x00) # don't care info
msg.setByte("userData2", 0x02) # set database
msg.setByte("userData3", offset >> 8) # high byte
msg.setByte("userData4", offset & 0xff) # low byte
msg.setByte("userData5", 8) # number of bytes set: 1...8
msg.setByte("userData6", linkType)
msg.setByte("userData7", group)
msg.setByte("userData8", laddr.getHighByte())
msg.setByte("userData9", laddr.getMiddleByte())
msg.setByte("userData10", laddr.getLowByte())
# depends on mode: could be e.g. trigger point
msg.setByte("userData11", data[0])
msg.setByte("userData12", data[1]) # unused?
msg.setByte("userData13", data[2]) # unused?
rb = msg.getBytes("command1", 15);
checksum = (~sum(rb) + 1) & 0xFF
msg.setByte("userData14", checksum)
return msg
def getName(self):
return self.name
def getAddress(self):
return self.address
def getdb(self):
"""getdb()
download the device database and print it on the console"""
iofun.out("getting db, be patient!")
self.dbbuilder.clear()
self.dbbuilder.start()
def printdb(self):
"""printdb()
print the downloaded link database to the console"""
self.dbbuilder.printdb()
def getId(self):
"""getId()
get category, subcategory, firmware, hardware version"""
self.querier.setMsgHandler(IdMsgHandler("id"))
self.querier.querysd(0x10, 0x00)
#
# link database management
#
def addController(self, addr, group, data = None):
"""addController(addr, group, data)
add device with "addr" as controller for group "group", with link data "data" """
data = data if data else [00, 00, group];
self.modifyDB(LinkRecordAdder(self, addr, group, data, True))
def removeController(self, addr, group):
"""removeController(addr, group)
remove device with "addr" as controller for group "group", with link data "data" """
self.modifyDB(LinkRecordRemover(self, addr, group, True))
def addResponder(self, addr, group, data = None):
"""addResponder(addr, group, data)
add device with "addr" as responder for group "group", with link data "data" """
data = data if data else [00, 00, group];
self.modifyDB(LinkRecordAdder(self, addr, group, data, False))
def removeResponder(self, addr, group):
"""removeResponder(addr, group)
remove device with "addr" as responder for group "group" """
self.modifyDB(LinkRecordRemover(self, addr, group, False))
def removeDevice(self, addr):
"""removeDevice(addr):
removes all links to device with address "addr" from device database"""
self.modifyDB(DeviceRemover(self, addr))
def replaceDevice(self, oldAddr, newAddr):
"""replaceDevice(oldAddr, newAddr):
#.........这里部分代码省略.........
开发者ID:PhilippeLibioulle,项目名称:insteon-terminal,代码行数:101,代码来源:device.py
示例19: modifyRecord
def modifyRecord(self, addr, group, controlCode, recordFlags, data, txt):
msg = self.__makeModMsg(addr, group, controlCode, recordFlags, data, txt)
self.querier = Querier(self.address)
self.querier.setMsgHandler(DefaultMsgHandler(txt))
self.querier.sendMsg(msg)
开发者ID:MattM178,项目名称:insteon-terminal,代码行数:5,代码来源:modem2413U.py
注:本文中的querier.Querier类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论