diff options
| author | Rafael H. Schloming <rhs@apache.org> | 2008-04-16 13:32:13 +0000 |
|---|---|---|
| committer | Rafael H. Schloming <rhs@apache.org> | 2008-04-16 13:32:13 +0000 |
| commit | bbe30c7875f67547ea9394d4e99b420ac22ef152 (patch) | |
| tree | 3bd76d813efccb16ba86f49982e3f24725659174 /qpid/java/common/Enum.tpl | |
| parent | 857ba162eba08e8c210492a0ea265a6bd4439467 (diff) | |
| download | qpid-python-bbe30c7875f67547ea9394d4e99b420ac22ef152.tar.gz | |
QPID-901: updates to the java client to use the 0-10 final spec instead of the 0-10 preview spec; this includes improvements to the codegen process as well as some modifications to the shared code path in the client to not lose per message state when consumers are closed.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@648692 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/common/Enum.tpl')
| -rw-r--r-- | qpid/java/common/Enum.tpl | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/qpid/java/common/Enum.tpl b/qpid/java/common/Enum.tpl new file mode 100644 index 0000000000..337feb7065 --- /dev/null +++ b/qpid/java/common/Enum.tpl @@ -0,0 +1,36 @@ +package org.apache.qpidity.transport; + +public enum $name { +${ +from genutil import * + +vtype = jtype(resolve_type(type)) + +choices = [(scream(ch["@name"]), "(%s) %s" % (vtype, ch["@value"])) + for ch in type.query["enum/choice"]] +} + $(",\n ".join(["%s(%s)" % ch for ch in choices])); + + private final $vtype value; + + $name($vtype value) + { + this.value = value; + } + + public $vtype getValue() + { + return value; + } + + public static $name get($vtype value) + { + switch (value) + { +${ +for ch, value in choices: + out(' case $value: return $ch;\n') +} default: throw new IllegalArgumentException("no such value: " + value); + } + } +} |
