X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=python%2Fovs%2Fjsonrpc.py;h=5117944137e7ac15661c1ff4789f27c07c2c5cd3;hb=e7ed3a3a5f87d20f0cc632ae23adba6f30a4e19d;hp=2e3c2e0661072fffd733f8c936f738522d4f4ed4;hpb=da51646f6ff59189f66eb76a3cdfdf7fcd936f76;p=openvswitch diff --git a/python/ovs/jsonrpc.py b/python/ovs/jsonrpc.py index 2e3c2e06..51179441 100644 --- a/python/ovs/jsonrpc.py +++ b/python/ovs/jsonrpc.py @@ -1,4 +1,4 @@ -# Copyright (c) 2010 Nicira Networks +# Copyright (c) 2010, 2011 Nicira Networks # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -34,10 +34,9 @@ class Message(object): T_NOTIFY: "notification", T_REPLY: "reply", T_ERROR: "error"} - __next_id = 0 - def __init__(self, type, method, params, result, error, id): - self.type = type + def __init__(self, type_, method, params, result, error, id): + self.type = type_ self.method = method self.params = params self.result = result @@ -70,11 +69,10 @@ class Message(object): return Message(Message.T_ERROR, None, None, None, error, id) @staticmethod - def type_to_string(type): - return Message.__types[type] + def type_to_string(type_): + return Message.__types[type_] - @staticmethod - def __validate_arg(value, name, must_have): + def __validate_arg(self, value, name, must_have): if (value is not None) == (must_have != 0): return None else: @@ -97,11 +95,11 @@ class Message(object): return "invalid JSON-RPC message type %s" % self.type return ( - Message.__validate_arg(self.method, "method", pattern & 0x10000) or - Message.__validate_arg(self.params, "params", pattern & 0x1000) or - Message.__validate_arg(self.result, "result", pattern & 0x100) or - Message.__validate_arg(self.error, "error", pattern & 0x10) or - Message.__validate_arg(self.id, "id", pattern & 0x1)) + self.__validate_arg(self.method, "method", pattern & 0x10000) or + self.__validate_arg(self.params, "params", pattern & 0x1000) or + self.__validate_arg(self.result, "result", pattern & 0x100) or + self.__validate_arg(self.error, "error", pattern & 0x10) or + self.__validate_arg(self.id, "id", pattern & 0x1)) @staticmethod def from_json(json): @@ -175,7 +173,7 @@ class Message(object): class Connection(object): def __init__(self, stream): - self.name = stream.get_name() + self.name = stream.name self.stream = stream self.status = 0 self.input = "" @@ -216,9 +214,6 @@ class Connection(object): else: return len(self.output) - def get_name(self): - return self.name - def __log_msg(self, title, msg): logging.debug("%s: %s %s" % (self.name, title, msg)) @@ -253,7 +248,7 @@ class Connection(object): return self.status, None while True: - if len(self.input) == 0: + if not self.input: error, data = self.stream.recv(4096) if error: if error == errno.EAGAIN: @@ -264,7 +259,7 @@ class Connection(object): % (self.name, os.strerror(error))) self.error(error) return self.status, None - elif len(data) == 0: + elif not data: self.error(EOF) return EOF, None else: @@ -325,7 +320,7 @@ class Connection(object): return msg def recv_wait(self, poller): - if self.status or len(self.input) > 0: + if self.status or self.input: poller.immediate_wake() else: self.stream.recv_wait(poller) @@ -364,7 +359,7 @@ class Session(object): reconnect.enable(ovs.timeval.msec()) if ovs.stream.PassiveStream.is_valid_name(name): - self.reconnect.set_passive(True, ovs.timeval.msec()) + reconnect.set_passive(True, ovs.timeval.msec()) return Session(reconnect, None) @@ -372,7 +367,7 @@ class Session(object): def open_unreliably(jsonrpc): reconnect = ovs.reconnect.Reconnect(ovs.timeval.msec()) reconnect.set_quiet(True) - reconnect.set_name(jsonrpc.get_name()) + reconnect.set_name(jsonrpc.name) reconnect.set_max_tries(0) reconnect.connected(ovs.timeval.msec()) return Session(reconnect, jsonrpc)