Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import socket
- import functools
- from helpers.helpers import dict_to_xml
- class LibraryClient(object):
- BUFFER_SIZE = 1024 * 1024
- def __init__(self, ip, port):
- self.port = port
- self.ip = ip
- def __getattr__(self, attr):
- return functools.partial(self._call_server, attr)
- def _call_server(self, method, data):
- send_data = {}
- send_data['body'] = {}
- send_data['body']['data'] = data
- send_data['body']['method'] = method
- xml_data = dict_to_xml(send_data)
- return self.make_request(xml_data)
- def make_request(self, data):
- so = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- so.connect((self.ip, self.port))
- so.send(data)
- result = so.recv(self.BUFFER_SIZE)
- so.close()
- return result
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement