summaryrefslogtreecommitdiff
path: root/cpp/managementgen/qmf/generate.py
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2008-10-07 21:47:35 +0000
committerTed Ross <tross@apache.org>2008-10-07 21:47:35 +0000
commit9d199b74aee76859480a7ee92d95c6db42028b43 (patch)
treeca09aace4aaac2afa9650cc78833d30b056313a9 /cpp/managementgen/qmf/generate.py
parent41d33af55b9fbf4c664ccb56accb1a37bd1ef006 (diff)
downloadqpid-python-9d199b74aee76859480a7ee92d95c6db42028b43.tar.gz
QPID-1327 - Event support for Management
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@702651 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/managementgen/qmf/generate.py')
-rwxr-xr-xcpp/managementgen/qmf/generate.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/cpp/managementgen/qmf/generate.py b/cpp/managementgen/qmf/generate.py
index 7346200a28..958728d739 100755
--- a/cpp/managementgen/qmf/generate.py
+++ b/cpp/managementgen/qmf/generate.py
@@ -250,6 +250,14 @@ class Generator:
path = self.packagePath + _class.getNameCap () + extension
return path
+ def targetEventFile (self, event, templateFile):
+ dot = templateFile.find(".")
+ if dot == -1:
+ raise ValueError ("Invalid template file name %s" % templateFile)
+ extension = templateFile[dot:len (templateFile)]
+ path = self.packagePath + "Event" + event.getNameCap () + extension
+ return path
+
def targetMethodFile (self, method, templateFile):
""" Return the file name for a method file """
dot = templateFile.rfind(".")
@@ -293,6 +301,16 @@ class Generator:
stream = template.expand (_class)
self.writeIfChanged (stream, target, force)
+ def makeEventFiles (self, templateFile, schema, force=False):
+ """ Generate an expanded template per schema event """
+ events = schema.getEvents()
+ template = Template (self.input + templateFile, self)
+ self.templateFiles.append (templateFile)
+ for event in events:
+ target = self.targetEventFile(event, templateFile)
+ stream = template.expand(event)
+ self.writeIfChanged(stream, target, force)
+
def makeMethodFiles (self, templateFile, schema, force=False):
""" Generate an expanded template per method-with-arguments """
classes = schema.getClasses ()