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


Python ServerProxy.delete方法代码示例

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


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

示例1: ServerProxy

# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import delete [as 别名]
__author__ = 'PyBeaner'

from xmlrpc.client import ServerProxy

s = ServerProxy("http://localhost:20000",allow_none=True)
s.set("foo","bar")
print(s.get("foo"))

print(s.keys())
print(s.exists("foo"))
if s.exists("foo"):
    s.delete("foo")
开发者ID:PyBeaner,项目名称:PythonCookbook,代码行数:14,代码来源:client.py

示例2: VerifyCertSafeTransport

# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import delete [as 别名]
class VerifyCertSafeTransport(SafeTransport):

    def __init__(self, cafile, certfile=None, keyfile=None):
        super().__init__()
        self._ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
        self._ssl_context.load_verify_locations(cafile)
        if certfile:
            self._ssl_context.load_cert_chain(certfile, keyfile)
        self._ssl_context.verify_mode = ssl.CERT_REQUIRED

    def make_connection(self, host):
        s = super().make_connection((host, {'context': self._ssl_context}))
        return s


# Create the client proxy
s = ServerProxy('https://localhost:15000',
                transport=VerifyCertSafeTransport('server_cert.pem',
                                                  'client_cert.pem',
                                                  'client_key.pem'),
                allow_none=True)


s.set('foo', 'bar')
s.set('spam', [1, 2, 3])
print(s.keys())
print(s.get('foo'))
print(s.get('spam'))
s.delete('spam')
print(s.exists('spam'))
开发者ID:xuyan0,项目名称:pycookbook,代码行数:32,代码来源:ssl_xmlrpc_client.py

示例3: __init__

# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import delete [as 别名]
class Client:
    def __init__(self, ns_addr=None):
        self.chunk_servers = []
        if ns_addr is not None:
            os.environ['YAD_NS'] = ns_addr
        elif not os.getenv('YAD_NS'):
            os.environ['YAD_NS'] = 'http://localhost:8888'

        self.ns = ServerProxy(os.environ['YAD_NS'])

    def list_dir(self, dir_path):
        return self.ns.list_directory(dir_path)

    def create_dir(self, path):
        return self.ns.make_directory(path)

    def delete_dir(self, path):
        return self.ns.delete_dir(path)

    def create_file(self, path, remote_path):
        fn = path.split("/")[-1]
        remote_filepath = os.path.join(remote_path, fn)

        if not os.path.isfile(path):
            return Status.not_found

        with open(path, 'r') as fr:
            data = fr.read()

        return self._save_file_to_dfs(data, remote_filepath)

    def _save_file_to_dfs(self, content, remote_filepath):
        r = self._get_cs(remote_filepath)
        if not r['status'] == Status.ok:
            return r
        cs_addr = r['cs']
        cs = ServerProxy(cs_addr)

        chunks = self.split_file(content)
        data = {}
        data['path'] = remote_filepath
        data['size'] = len(content)
        data['chunks'] = {}
        for count, chunk in enumerate(chunks):
            cs.upload_chunk(remote_filepath + '_{0}'.format(str(count)), chunk)
            data['chunks'][remote_filepath + '_' + str(count)] = cs_addr

        return self.ns.create_file(data)

    def delete(self, path):
        return self.ns.delete(path)

    def download_file(self, path, dst_path):
        result, content = self.get_file_content(path)
        if result != Status.ok:
            return {'status': result}

        fn = path.split("/")[-1]
        self.make_sure_path_exists(dst_path)
        file_path = os.path.join(dst_path, fn)
        with open(file_path, "w") as f:
            f.write(content)
            return {'status': Status.ok}

    def get_file_content(self, path):
        info = self.ns.get_file_info(path)
        if info['status'] != Status.ok:
            return info['status'], None

        chunks = info['chunks']
        content = ""
        data = {}
        for chunk, addr in chunks.items():
            cs = ServerProxy(addr)
            chunk_data = cs.get_chunk(chunk)
            index = int(chunk.split("_")[-1])
            data[index] = chunk_data

        i = 0
        while i < len(data):
            content += data[i]
            i += 1

        return Status.ok, content

    def get_file_info(self, path):
        info = self.ns.get_file_info(path)
        if info['status'] != Status.ok:
            return info['status'], None
        
        return Status.ok, info

    def get_chunk(self, path, chunk_id):
        info = self.ns.get_file_info(path)
        if info['status'] != Status.ok:
            return info['status'], None
        
        chunks = info['chunks']
        for chunk, addr in chunks.items():
            if int(chunk.split("_")[-1]) == chunk_id:
#.........这里部分代码省略.........
开发者ID:osteotek,项目名称:yadfs,代码行数:103,代码来源:client.py


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