class PageStorageClient(object): def __init__(self, server_address=("127.0.0.1", 9966)): self.server_address = server_address self.server_proxy = XMLRPCServerProxy( "http://%s:%s/" % self.server_address, allow_none=True) def get_page(self, target_url): return decode_from_binary(self.server_proxy.get_page(target_url)) def get_page_by_id(self, page_id): return decode_from_binary(self.server_proxy.get_page_by_id(page_id)) def set_page(self, page_info): return self.server_proxy.set_page(encode_to_binary(page_info)) def remove_page(self, target): return self.server_proxy.remove_page(encode_to_binary(target)) def __contains__(self, key): return self.server_proxy.has_key(key) def has_key(self, key): return self.__contains__(key)