signal: parse YAML content

Change-Id: I5e74bbdbe83bb28978b64309936e21c58f98eb6e
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
diff --git a/tools/sdbusplus/interface.py b/tools/sdbusplus/interface.py
index d260f92..07663e3 100644
--- a/tools/sdbusplus/interface.py
+++ b/tools/sdbusplus/interface.py
@@ -3,6 +3,7 @@
 from .namedelement import NamedElement
 from .property import Property
 from .method import Method
+from .signal import Signal
 
 class Interface(NamedElement, object):
     @staticmethod
@@ -21,5 +22,7 @@
             kwargs.pop('properties', []) ]
         self.methods = [ Method(**m) for m in
             kwargs.pop('methods', []) ]
+        self.signals = [ Signal(**s) for s in
+            kwargs.pop('signals', []) ]
 
         super(Interface, self).__init__(**kwargs)
diff --git a/tools/sdbusplus/signal.py b/tools/sdbusplus/signal.py
new file mode 100644
index 0000000..f7cf71b
--- /dev/null
+++ b/tools/sdbusplus/signal.py
@@ -0,0 +1,9 @@
+from .property import Property
+from .namedelement import NamedElement
+
+class Signal(NamedElement, object):
+    def __init__(self, **kwargs):
+        self.properties = [ Property(**p) for p in
+            kwargs.pop('properties', []) ]
+
+        super(Signal, self).__init__(**kwargs)