You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ra...@apache.org on 2015/08/14 21:07:43 UTC
[10/50] [abbrv] qpid-proton git commit: Removed the Described class
ands cleanedup the formatting to adhere to the Qpid guidelines.
Removed the Described class ands cleanedup the formatting to adhere to the Qpid guidelines.
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/cdb1fac8
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/cdb1fac8
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/cdb1fac8
Branch: refs/heads/rajith-codec
Commit: cdb1fac86cde02a93f06489b275ad8ce2f08a368
Parents: 1e703f5
Author: Rajith Attapattu <ra...@apache.org>
Authored: Thu Feb 5 16:52:17 2015 -0500
Committer: Rajith Attapattu <ra...@apache.org>
Committed: Thu Jul 9 09:12:37 2015 -0400
----------------------------------------------------------------------
.../apache/qpid/proton/codec2/POJOBuilder.java | 233 +++++++++++--------
1 file changed, 142 insertions(+), 91 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/cdb1fac8/proton-j/src/main/java/org/apache/qpid/proton/codec2/POJOBuilder.java
----------------------------------------------------------------------
diff --git a/proton-j/src/main/java/org/apache/qpid/proton/codec2/POJOBuilder.java b/proton-j/src/main/java/org/apache/qpid/proton/codec2/POJOBuilder.java
index 0e04cd5..47d6018 100644
--- a/proton-j/src/main/java/org/apache/qpid/proton/codec2/POJOBuilder.java
+++ b/proton-j/src/main/java/org/apache/qpid/proton/codec2/POJOBuilder.java
@@ -24,54 +24,41 @@ import java.util.*;
/**
* POJOBuilder
- *
+ *
*/
public class POJOBuilder implements DataHandler
{
- public static class Described {
-
- private Object descriptor;
- private Object value;
-
- public Described(Object descriptor, Object value) {
- this.descriptor = descriptor;
- this.value = value;
- }
-
- public Object getDescriptor() {
- return descriptor;
- }
-
- public Object getValue() {
- return value;
- }
-
- public String toString() {
- return String.format("Described(%s, %s)", descriptor, value);
- }
-
- }
-
- private interface Builder {
+ private interface Builder
+ {
void add(Object o);
+
Object build();
}
- private class DescribedBuilder implements Builder {
+ private class DescribedBuilder implements Builder
+ {
private Object descriptor;
+
private Object described;
+
private boolean first = true;
- public DescribedBuilder() {}
+ public DescribedBuilder()
+ {
+ }
- public void add(Object o) {
- if (first) {
+ public void add(Object o)
+ {
+ if (first)
+ {
descriptor = o;
first = false;
- } else {
- PerformativeFactory factory = TypeRegistry.lookup(descriptor);
+ }
+ else
+ {
+ DescribedTypeFactory factory = DiscriptorRegistry.lookup(descriptor);
if (factory != null)
{
try
@@ -92,267 +79,331 @@ public class POJOBuilder implements DataHandler
}
}
- public Object build() {
+ public Object build()
+ {
return described;
}
}
- private class ListBuilder implements Builder {
+ private class ListBuilder implements Builder
+ {
private List list;
- public ListBuilder(int count) {
+ public ListBuilder(int count)
+ {
list = new ArrayList(count);
}
- public void add(Object o) {
+ public void add(Object o)
+ {
list.add(o);
}
- public List build() {
+ public List build()
+ {
return list;
}
}
- private class MapBuilder implements Builder {
+ private class MapBuilder implements Builder
+ {
private Map map;
+
private Object key;
+
private int count;
- public MapBuilder(int count) {
- map = new HashMap(count/2);
+ public MapBuilder(int count)
+ {
+ map = new HashMap(count / 2);
this.count = 0;
}
- public void add(Object o) {
- if ((count % 2) == 0) {
+ public void add(Object o)
+ {
+ if ((count % 2) == 0)
+ {
key = o;
- } else {
+ }
+ else
+ {
map.put(key, o);
}
count++;
}
- public Map build() {
+ public Map build()
+ {
return map;
}
}
- private class ArrayBuilder implements Builder {
+ private class ArrayBuilder implements Builder
+ {
private Object[] array;
+
private int index;
+
private boolean described;
+
private Object descriptor;
- public ArrayBuilder(int count) {
+ public ArrayBuilder(int count)
+ {
// XXX: should really instantiate the proper type here
array = new Object[count];
index = 0;
described = false;
}
- public void add(Object o) {
- if (described) {
- if (index == 0) {
+ public void add(Object o)
+ {
+ if (described)
+ {
+ if (index == 0)
+ {
descriptor = o;
- } else {
+ }
+ else
+ {
array[index - 1] = new Described(descriptor, o);
}
- } else {
+ }
+ else
+ {
array[index] = o;
}
index++;
}
- public Object[] build() {
+ public Object[] build()
+ {
return array;
}
}
private List<Builder> stack = new ArrayList();
+
private Builder builder;
- public POJOBuilder() {
+ public POJOBuilder()
+ {
clear();
}
- public void clear() {
+ public void clear()
+ {
stack.clear();
builder = new ListBuilder(1);
}
- public Object build() {
+ public Object build()
+ {
return builder.build();
}
- private void pop() {
+ private void pop()
+ {
builder = stack.remove(stack.size() - 1);
}
- private void push() {
+ private void push()
+ {
stack.add(builder);
}
- private void end() {
+ private void end()
+ {
Object o = builder.build();
pop();
builder.add(o);
}
@Override
- public void onList(Decoder decoder) {
+ public void onList(Decoder decoder)
+ {
push();
builder = new ListBuilder(decoder.getSize());
}
@Override
- public void onListEnd(Decoder decoder) {
+ public void onListEnd(Decoder decoder)
+ {
end();
}
@Override
- public void onMap(Decoder decoder) {
+ public void onMap(Decoder decoder)
+ {
push();
builder = new MapBuilder(decoder.getSize());
}
@Override
- public void onMapEnd(Decoder decoder) {
+ public void onMapEnd(Decoder decoder)
+ {
end();
}
@Override
- public void onArray(Decoder decoder) {
+ public void onArray(Decoder decoder)
+ {
push();
builder = new ArrayBuilder(decoder.getSize());
}
@Override
- public void onArrayEnd(Decoder decoder) {
+ public void onArrayEnd(Decoder decoder)
+ {
end();
}
@Override
- public void onDescriptor(Decoder decoder) {
- if (builder instanceof ArrayBuilder) {
+ public void onDescriptor(Decoder decoder)
+ {
+ if (builder instanceof ArrayBuilder)
+ {
ArrayBuilder ab = (ArrayBuilder) builder;
ab.described = true;
- } else {
+ }
+ else
+ {
push();
builder = new DescribedBuilder();
}
}
@Override
- public void onNull(Decoder decoder) {
+ public void onNull(Decoder decoder)
+ {
builder.add(null);
}
@Override
- public void onBoolean(Decoder decoder) {
+ public void onBoolean(Decoder decoder)
+ {
// TODO
}
@Override
- public void onByte(Decoder decoder) {
+ public void onByte(Decoder decoder)
+ {
// TODO
}
@Override
- public void onShort(Decoder decoder) {
+ public void onShort(Decoder decoder)
+ {
// TODO
}
@Override
- public void onInt(Decoder decoder) {
+ public void onInt(Decoder decoder)
+ {
builder.add(decoder.getInt());
}
@Override
- public void onLong(Decoder decoder) {
+ public void onLong(Decoder decoder)
+ {
// TODO
}
@Override
- public void onUbyte(Decoder decoder) {
+ public void onUbyte(Decoder decoder)
+ {
// TODO
}
@Override
- public void onUshort(Decoder decoder) {
+ public void onUshort(Decoder decoder)
+ {
// TODO
}
@Override
- public void onUint(Decoder decoder) {
+ public void onUint(Decoder decoder)
+ {
// TODO
}
@Override
- public void onUlong(Decoder decoder) {
+ public void onUlong(Decoder decoder)
+ {
// TODO
}
- public void onFloat(Decoder decoder) {
+ public void onFloat(Decoder decoder)
+ {
builder.add(decoder.getFloat());
}
@Override
- public void onDouble(Decoder decoder) {
+ public void onDouble(Decoder decoder)
+ {
builder.add(decoder.getDouble());
}
@Override
- public void onChar(Decoder decoder) {
+ public void onChar(Decoder decoder)
+ {
builder.add((char) decoder.getIntBits());
}
@Override
- public void onTimestamp(Decoder decoder) {
+ public void onTimestamp(Decoder decoder)
+ {
// TODO
builder.add(decoder.getLong());
}
@Override
- public void onUUID(Decoder decoder) {
+ public void onUUID(Decoder decoder)
+ {
builder.add(new UUID(decoder.getHiBits(), decoder.getLoBits()));
}
@Override
- public void onDecimal32(Decoder decoder) {
+ public void onDecimal32(Decoder decoder)
+ {
// TODO
}
@Override
- public void onDecimal64(Decoder decoder) {
+ public void onDecimal64(Decoder decoder)
+ {
// TODO
}
@Override
- public void onDecimal128(Decoder decoder) {
+ public void onDecimal128(Decoder decoder)
+ {
// TODO
}
@Override
- public void onString(Decoder decoder) {
+ public void onString(Decoder decoder)
+ {
builder.add(decoder.getString());
}
@Override
- public void onSymbol(Decoder decoder) {
+ public void onSymbol(Decoder decoder)
+ {
builder.add(decoder.getString());
}
@Override
- public void onBinary(Decoder decoder) {
+ public void onBinary(Decoder decoder)
+ {
// TODO
- //builder.add(decoder.getBytes());
+ // builder.add(decoder.getBytes());
}
-
-}
+}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org