summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Williams <patrick@stwcx.xyz>2016-10-09 16:09:57 -0500
committerPatrick Williams <patrick@stwcx.xyz>2016-10-12 16:26:46 -0500
commita8972b0ad8f84c3b784ae192289f51ed217c814e (patch)
treeb45582bf61238c806aa6c0a63736a8f1baffbf01
parent696fa72a9e7c3ed20900a54a05f3be7396cce7fd (diff)
downloadsdbusplus-a8972b0ad8f84c3b784ae192289f51ed217c814e.tar.gz
sdbusplus-a8972b0ad8f84c3b784ae192289f51ed217c814e.zip
interface: Parse YAML content
Change-Id: I3f10b927b55e6b1f72875a18589ac3adf92e6cb0 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
-rw-r--r--tools/sdbusplus/__init__.py1
-rw-r--r--tools/sdbusplus/interface.py18
-rw-r--r--tools/sdbusplus/namedelement.py5
3 files changed, 24 insertions, 0 deletions
diff --git a/tools/sdbusplus/__init__.py b/tools/sdbusplus/__init__.py
new file mode 100644
index 0000000..2ab249b
--- /dev/null
+++ b/tools/sdbusplus/__init__.py
@@ -0,0 +1 @@
+from sdbusplus.interface import Interface
diff --git a/tools/sdbusplus/interface.py b/tools/sdbusplus/interface.py
new file mode 100644
index 0000000..4c5a4c3
--- /dev/null
+++ b/tools/sdbusplus/interface.py
@@ -0,0 +1,18 @@
+import os
+import yaml
+from .namedelement import NamedElement
+
+class Interface(NamedElement, object):
+ @staticmethod
+ def load(name, rootdir='.'):
+ filename = os.path.join(rootdir,
+ name.replace('.', '/') + ".interface.yaml")
+
+ with open(filename) as f:
+ data = f.read();
+ y = yaml.safe_load(data)
+ y['name'] = name
+ return Interface(**y)
+
+ def __init__(self, **kwargs):
+ super(Interface, self).__init__(**kwargs)
diff --git a/tools/sdbusplus/namedelement.py b/tools/sdbusplus/namedelement.py
new file mode 100644
index 0000000..ed989d1
--- /dev/null
+++ b/tools/sdbusplus/namedelement.py
@@ -0,0 +1,5 @@
+class NamedElement(object):
+ def __init__(self, **kwargs):
+ self.name = kwargs.pop('name', "unnamed")
+ self.description = kwargs.pop('description', "")
+ super(NamedElement, self).__init__(**kwargs)
OpenPOWER on IntegriCloud