diff options
| author | Stephen D. Huston <shuston@apache.org> | 2011-10-21 14:42:12 +0000 |
|---|---|---|
| committer | Stephen D. Huston <shuston@apache.org> | 2011-10-21 14:42:12 +0000 |
| commit | f83677056891e436bf5ba99e79240df2a44528cd (patch) | |
| tree | 625bfd644b948e89105630759cf6decb0435354d /dotnet/client-010/gentool/codegen | |
| parent | ebfd9ff053b04ab379acfc0fefedee5a31b6d8a5 (diff) | |
| download | qpid-python-QPID-2519.tar.gz | |
Merged out from trunkQPID-2519
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/QPID-2519@1187375 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'dotnet/client-010/gentool/codegen')
| -rw-r--r-- | dotnet/client-010/gentool/codegen | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/dotnet/client-010/gentool/codegen b/dotnet/client-010/gentool/codegen deleted file mode 100644 index baebf378fd..0000000000 --- a/dotnet/client-010/gentool/codegen +++ /dev/null @@ -1,86 +0,0 @@ -#!/usr/bin/env python -# -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -# - - -import os, sys, mllib -from templating import Parser -from dotnetgenutil import * - -out_dir = sys.argv[1] -spec_file = sys.argv[2] -tpl_dir = sys.argv[3] -pkg_dir = os.path.join(out_dir, "generated") - -if not os.path.exists(pkg_dir): - os.makedirs(pkg_dir) - -spec = mllib.xml_parse(spec_file) - -def excludes(nd): - if (nd.parent is not None and - nd.parent.name == "class" and - nd.parent["@name"] in ("file", "stream")): - return False - else: - return True - -def execute(output, template, **kwargs): - f = open(os.path.join(tpl_dir, template)) - input = f.read() - f.close() - p = Parser(**kwargs) - p.parse(input) - fname = os.path.join(pkg_dir, output) - f = open(fname, "w") - f.write(p.output) - f.close() - -execute("Type.cs", "Type.tpl", spec = spec) -execute("Constant.cs", "Constant.tpl", spec = spec) - -structs = spec.query["amqp/struct"] + \ - spec.query["amqp/class/struct", excludes] + \ - spec.query["amqp/class/command/result/struct", excludes] -controls = spec.query["amqp/class/control", excludes] -commands = spec.query["amqp/class/command", excludes] - -composites = structs + controls + commands - -for c in composites: - name = cname(c) - execute("%s.cs" % name, "Composite.tpl", type = c, name = name) - -execute("MethodDelegate.cs", "MethodDelegate.tpl", composites = composites) -execute("Option.cs", "Option.tpl", composites = composites) -execute("Invoker.cs", "Invoker.tpl", composites = controls + commands) -execute("IInvoker.cs", "IInvoker.tpl", composites = controls + commands) -execute("StructFactory.cs", "StructFactory.tpl", composites = composites) - -def is_enum(nd): - return nd["enum"] is not None - -enums = spec.query["amqp/domain", is_enum] + \ - spec.query["amqp/class/domain", is_enum] - -for e in enums: - name = cname(e) - execute("%s.cs" % name, "Enum.tpl", name = name, type = e) |
