trace: [tracetool] Add methods 'Event.copy' and 'Arguments.copy'

Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
Lluís Vilanova 2014-02-23 20:37:08 +01:00 committed by Stefan Hajnoczi
parent 7d08f0da90
commit ad7443e40a
1 changed files with 9 additions and 0 deletions

View File

@ -52,6 +52,10 @@ def __init__(self, args):
""" """
self._args = args self._args = args
def copy(self):
"""Create a new copy."""
return Arguments(list(self._args))
@staticmethod @staticmethod
def build(arg_str): def build(arg_str):
"""Build and Arguments instance from an argument string. """Build and Arguments instance from an argument string.
@ -146,6 +150,11 @@ def __init__(self, name, props, fmt, args):
if len(unknown_props) > 0: if len(unknown_props) > 0:
raise ValueError("Unknown properties: %s" % ", ".join(unknown_props)) raise ValueError("Unknown properties: %s" % ", ".join(unknown_props))
def copy(self):
"""Create a new copy."""
return Event(self.name, list(self.properties), self.fmt,
self.args.copy(), self)
@staticmethod @staticmethod
def build(line_str): def build(line_str):
"""Build an Event instance from a string. """Build an Event instance from a string.