Exemple #1
0
    def testStreaming(self):
        f = StreamingMsgpack.FilePart("%s/users.json" % config.data_dir)
        f.read_bytes = 10

        data = {"cmd": "response", "params": f}

        out_buff = StringIO.StringIO()
        StreamingMsgpack.stream(data, out_buff.write)
        out_buff.seek(0)

        data_packb = {"cmd": "response", "params": open("%s/users.json" % config.data_dir).read(10)}

        out_buff.seek(0)
        assert msgpack.unpackb(out_buff.read()) == data_packb
Exemple #2
0
    def send(self, message, streaming=False):
        self.last_send_time = time.time()
        if config.debug_socket:
            self.log(
                "Send: %s, to: %s, streaming: %s, site: %s, inner_path: %s, req_id: %s"
                % (message.get("cmd"), message.get("to"), streaming,
                   message.get("params", {}).get("site"),
                   message.get("params",
                               {}).get("inner_path"), message.get("req_id")))

        if not self.sock:
            self.log("Send error: missing socket")
            return False

        try:
            if streaming:
                with self.send_lock:
                    bytes_sent = StreamingMsgpack.stream(
                        message, self.sock.sendall)
                message = None
                self.bytes_sent += bytes_sent
                self.server.bytes_sent += bytes_sent
            else:
                data = msgpack.packb(message)
                message = None
                self.bytes_sent += len(data)
                self.server.bytes_sent += len(data)
                with self.send_lock:
                    self.sock.sendall(data)
        except Exception, err:
            self.close("Send error: %s" % err)
            return False
Exemple #3
0
    def send(self, message, streaming=False):
        if config.debug_socket:
            self.log("Send: %s, to: %s, streaming: %s, site: %s, inner_path: %s, req_id: %s" % (
                message.get("cmd"), message.get("to"), streaming,
                message.get("params", {}).get("site"), message.get("params", {}).get("inner_path"),
                message.get("req_id"))
            )

        if not self.sock:
            self.log("Send error: missing socket")
            return False

        self.last_send_time = time.time()
        try:
            if streaming:
                bytes_sent = StreamingMsgpack.stream(message, self.sock.sendall)
                message = None
                self.bytes_sent += bytes_sent
                self.server.bytes_sent += bytes_sent
            else:
                data = msgpack.packb(message)
                message = None
                self.bytes_sent += len(data)
                self.server.bytes_sent += len(data)
                self.sock.sendall(data)
        except Exception, err:
            self.close("Send error: %s" % err)
            return False
    def testStreaming(self):
        f = StreamingMsgpack.FilePart("%s/users.json" % config.data_dir)
        f.read_bytes = 10

        data = {"cmd": "response", "params": f}

        out_buff = StringIO.StringIO()
        StreamingMsgpack.stream(data, out_buff.write)
        out_buff.seek(0)

        data_packb = {
            "cmd": "response",
            "params": open("%s/users.json" % config.data_dir).read(10)
        }

        out_buff.seek(0)
        assert msgpack.unpackb(out_buff.read()) == data_packb
Exemple #5
0
	def send(self, message, streaming=False):
		if config.debug_socket: self.log("Send: %s, to: %s, streaming: %s, site: %s, inner_path: %s, req_id: %s" % (message.get("cmd"), message.get("to"), streaming, message.get("params", {}).get("site"), message.get("params", {}).get("inner_path"), message.get("req_id")))
		self.last_send_time = time.time()
		if streaming:
			bytes_sent = StreamingMsgpack.stream(message, self.sock.sendall)
			message = None
			self.bytes_sent += bytes_sent
			self.server.bytes_sent += bytes_sent
		else:
			data = msgpack.packb(message)
			message = None
			self.bytes_sent += len(data)
			self.server.bytes_sent += len(data)
			self.sock.sendall(data)
		self.last_sent_time = time.time()
		return True
    def send(self, message, streaming=False):
        self.last_send_time = time.time()
        if config.debug_socket:
            self.log(
                "Send: %s, to: %s, streaming: %s, site: %s, inner_path: %s, req_id: %s"
                % (message.get("cmd"), message.get("to"), streaming,
                   message.get("params", {}).get("site"),
                   message.get("params",
                               {}).get("inner_path"), message.get("req_id")))

        if not self.sock:
            self.log("Send error: missing socket")
            return False

        if not self.connected and message.get("cmd") != "handshake":
            self.log("Wait for handshake before send request")
            self.event_connected.get()

        try:
            stat_key = message.get("cmd", "unknown")
            if stat_key == "response":
                stat_key = "response: %s" % self.last_cmd_recv
            else:
                self.server.num_sent += 1

            self.server.stat_sent[stat_key]["num"] += 1
            if streaming:
                with self.send_lock:
                    bytes_sent = StreamingMsgpack.stream(
                        message, self.sock.sendall)
                self.bytes_sent += bytes_sent
                self.server.bytes_sent += bytes_sent
                self.server.stat_sent[stat_key]["bytes"] += bytes_sent
                message = None
            else:
                data = msgpack.packb(message)
                self.bytes_sent += len(data)
                self.server.bytes_sent += len(data)
                self.server.stat_sent[stat_key]["bytes"] += len(data)
                message = None
                with self.send_lock:
                    self.sock.sendall(data)
        except Exception, err:
            self.close("Send error: %s (cmd: %s)" % (err, stat_key))
            return False
Exemple #7
0
    def send(self, message, streaming=False):
        self.last_send_time = time.time()
        if config.debug_socket:
            self.log("Send: %s, to: %s, streaming: %s, site: %s, inner_path: %s, req_id: %s" % (
                message.get("cmd"), message.get("to"), streaming,
                message.get("params", {}).get("site"), message.get("params", {}).get("inner_path"),
                message.get("req_id"))
            )

        if not self.sock:
            self.log("Send error: missing socket")
            return False

        if not self.connected and message.get("cmd") != "handshake":
            self.log("Wait for handshake before send request")
            self.event_connected.get()

        try:
            stat_key = message.get("cmd", "unknown")
            if stat_key == "response":
                stat_key = "response: %s" % self.last_cmd_recv
            else:
                self.server.num_sent += 1

            self.server.stat_sent[stat_key]["num"] += 1
            if streaming:
                with self.send_lock:
                    bytes_sent = StreamingMsgpack.stream(message, self.sock.sendall)
                self.bytes_sent += bytes_sent
                self.server.bytes_sent += bytes_sent
                self.server.stat_sent[stat_key]["bytes"] += bytes_sent
                message = None
            else:
                data = msgpack.packb(message)
                self.bytes_sent += len(data)
                self.server.bytes_sent += len(data)
                self.server.stat_sent[stat_key]["bytes"] += len(data)
                message = None
                with self.send_lock:
                    self.sock.sendall(data)
        except Exception, err:
            self.close("Send error: %s (cmd: %s)" % (err, stat_key))
            return False
Exemple #8
0
 def send(self, message, streaming=False):
     if config.debug_socket:
         self.log(
             "Send: %s, to: %s, streaming: %s, site: %s, inner_path: %s, req_id: %s"
             % (message.get("cmd"), message.get("to"), streaming,
                message.get("params", {}).get("site"),
                message.get("params",
                            {}).get("inner_path"), message.get("req_id")))
     self.last_send_time = time.time()
     if streaming:
         bytes_sent = StreamingMsgpack.stream(message, self.sock.sendall)
         message = None
         self.bytes_sent += bytes_sent
         self.server.bytes_sent += bytes_sent
     else:
         data = msgpack.packb(message)
         message = None
         self.bytes_sent += len(data)
         self.server.bytes_sent += len(data)
         self.sock.sendall(data)
     self.last_sent_time = time.time()
     return True