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


Python Storage.put方法代码示例

本文整理汇总了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())
开发者ID:wathsalav,项目名称:sketch,代码行数:28,代码来源:push_objects.py

示例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)
开发者ID:wathsalav,项目名称:sketch,代码行数:14,代码来源:setup_eid.py

示例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())
#.........这里部分代码省略.........
开发者ID:rtkaczyk,项目名称:eris_server,代码行数:103,代码来源:eris.py


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