本文整理汇总了Python中storage.Storage.put方法的典型用法代码示例。如果您正苦于以下问题:Python Storage.put方法的具体用法?Python Storage.put怎么用?Python Storage.put使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类storage.Storage
的用法示例。
在下文中一共展示了Storage.put方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: from storage import Storage [as 别名]
# 或者: from storage.Storage import put [as 别名]
def main():
#----------------------------Initialize your storage------------------------------------#
if len(sys.argv) < 2:
print "Expected: "+str(sys.argv[0])+" <config>"
conf = __import__(str(sys.argv[1]), fromlist=["*"])
"""Initialize storage plugin"""
st = Storage(conf.store_plugin_mod, conf.store_plugin_class)
st.connect(conf.store_ip, conf.store_port)
"""Create a service endpoint for up coming Data"""
xeid_key = get_sha256_hash(str(conf.eid_uuid))
xeid = EID(xeid_key, conf.app_proto, conf.transport)
#-----------------------Create an entity and store it in registry----------------------#
"""Create an entity"""
xentity = Entity("WathsalaObject", "A bogus document inserted to demonstrate the software", "text/xml", "xyz", "D")
"""Create an SID string for the entity"""
uuid = "50aec6e5-1968-4243-a51c-ab1768a2c514"#uuid.uuid4()
sid_str = get_sha256_hash(str(uuid))
xentity.set_sid(sid_str)
xjson = xentity.object2json()
"""Store this entity in author registry"""
st.put("wathsala", xjson)
"""Store this entity's EID under sid_str"""
st.put(sid_str, xeid.object2json())
示例2: main
# 需要导入模块: from storage import Storage [as 别名]
# 或者: from storage.Storage import put [as 别名]
def main():
#----------------------------Initialize your storage------------------------------------#
if len(sys.argv) < 2:
print "Expected: "+str(sys.argv[0])+" <config>"
conf = __import__(str(sys.argv[1]), fromlist=["*"])
"""Initialize storage plugin"""
st = Storage(conf.store_plugin_mod, conf.store_plugin_class)
st.connect(conf.store_ip, conf.store_port)
"""Store this EID IP mapping in the ring"""
xeid_key = get_sha256_hash(str(conf.eid_uuid))
st.put(xeid_key, conf.locations)
示例3: __init__
# 需要导入模块: from storage import Storage [as 别名]
# 或者: from storage.Storage import put [as 别名]
class Eris:
def __init__(self):
self.output = os.path.join(config.logsDir, "output.log")
def start(self):
try:
with open(config.statusFile, "r") as f:
if f.read() == config.STATUS_LINE:
return
except:
pass
try:
with open(config.statusFile, "w") as f:
f.write(config.STATUS_LINE)
except IOError as e:
print >>sys.stderr, e
return
if self.daemonize():
return
self.startTime = datetime.now()
self.storage = Storage()
self.btserver = BtServer(self.storage)
self.retriever = Retriever(self.storage)
self.btserver.start()
self.retriever.start()
daemon = Pyro4.Daemon(port=config.pyroPort)
uri = daemon.register(self, config.PNAME)
log.info("Eris daemon URI: [{}]".format(uri))
self.running = True
daemon.requestLoop(loopCondition=lambda: self.running)
daemon.unregister(config.PNAME)
daemon.close()
def stop(self):
log.info("Closing eris")
try:
self.btserver.kill()
self.retriever.kill()
self.retriever.join(1.0)
self.btserver.join(1.0)
with open(config.statusFile, "w"):
pass
except:
log.exception("Something went wrong while shutting down")
self.running = False
def status(self):
pid = os.getpid()
proc = psutil.Process(pid)
cpu = proc.get_cpu_percent()
mem = proc.get_memory_percent()
uptime = datetime.now() - self.startTime
du = self.storage.size()
return (pid, cpu, mem, uptime, du)
def put(self, packets):
self.storage.put(packets)
def get(self, since=0, to=0, limit=0):
connId, _ = self.storage.get(since, to, limit)
return self.storage.fetchall(connId)
def count(self):
return self.storage.rowcount()
def ping(self):
return config.PNAME
def daemonize(self):
try:
pid = os.fork()
if pid > 0:
return True
except OSError as e:
sys.stderr.write("Fork #1 failed: {} ({})\n".format(e.errno, e.strerror))
sys.exit(1)
os.chdir("/")
os.setsid()
try:
pid = os.fork()
if pid > 0:
sys.exit(0)
except OSError as e:
sys.stderr.write("Fork #2 failed: {} ({})\n".format(e.errno, e.strerror))
sys.exit(1)
sys.stdout.flush()
sys.stderr.flush()
with open(self.output, "w"):
pass
out = file(self.output, "a+", 1)
os.dup2(out.fileno(), sys.stdout.fileno())
os.dup2(out.fileno(), sys.stderr.fileno())
#.........这里部分代码省略.........