> > On Mon, May 14, 2018 at 11:18:52PM +0100, Frediano Ziglio wrote: > > Code that handled client and server messages check was the same, just > > changed some variable names. > > Instead use a class to store same information and reuse the code. > > This allows easier extension of the 2 path of code. > > > > Signed-off-by: Frediano Ziglio <fziglio@xxxxxxxxxx> > > --- > > python_modules/ptypes.py | 66 +++++++++++++++++----------------------- > > 1 file changed, 28 insertions(+), 38 deletions(-) > > > > diff --git a/python_modules/ptypes.py b/python_modules/ptypes.py > > index 0f6d8d6..ef580aa 100644 > > --- a/python_modules/ptypes.py > > +++ b/python_modules/ptypes.py > > @@ -1024,53 +1024,43 @@ class ChannelType(Type): > > if self.base != None: > > self.base = self.base.resolve() > > > > - server_messages = self.base.server_messages[:] > > - server_messages_byname = > > self.base.server_messages_byname.copy() > > - client_messages = self.base.client_messages[:] > > - client_messages_byname = > > self.base.client_messages_byname.copy() > > - > > # Set default member_name, FooChannel -> foo > > self.member_name = self.name[:-7].lower() > > - else: > > - server_messages = [] > > - server_messages_byname = {} > > - client_messages = [] > > - client_messages_byname = {} > > > > - server_count = 1 > > - client_count = 1 > > + class MessagesInfo: > > + def __init__(self, base, is_server): > > + self.is_server = is_server > > + if base != None: > > + kind = 'server' if is_server else 'client' > > + self.messages = base.__dict__[kind + '_messages'][:] > > + self.messages_byname = base.__dict__[kind + > > '_messages_byname'].copy() > > Not a huge fan of __dict__[kind + 'xxx']. Maybe pass > self.base.server_messages_byname/self.base.client_messages (or the > server counterpart) to the constructor rather than a boolean? > Still need the boolean. Also self.base is not always a valid object so you would end up moving the check outside the __init__. I'll try to code that way. > Apart from this, looks good to me. > > Christophe > Frediano _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel