summaryrefslogtreecommitdiff
path: root/java/common/src
diff options
context:
space:
mode:
authorRafael H. Schloming <rhs@apache.org>2008-08-08 18:31:18 +0000
committerRafael H. Schloming <rhs@apache.org>2008-08-08 18:31:18 +0000
commit258b72de02ef8940262b82eb4419463c4a69fc74 (patch)
tree710df65b2c98cd26a007464bc61ce27d567d642f /java/common/src
parent004392878a706bbdc119d99b9161cc8ca8c37484 (diff)
downloadqpid-python-258b72de02ef8940262b82eb4419463c4a69fc74.tar.gz
QPID-1213: simplified unprocessed message and moved version specific code into the _0_8 and _0_10 variants
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@684036 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/common/src')
-rw-r--r--java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java11
-rw-r--r--java/common/src/main/java/org/apache/qpid/transport/Header.java13
-rw-r--r--java/common/src/main/java/org/apache/qpid/transport/Session.java16
-rw-r--r--java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java2
-rw-r--r--java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java9
-rw-r--r--java/common/src/main/java/org/apache/qpid/transport/util/Logger.java5
6 files changed, 37 insertions, 19 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java b/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java
index 22f66ae556..a8e7f47db0 100644
--- a/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java
+++ b/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java
@@ -111,6 +111,8 @@ public final class AMQShortString implements CharSequence, Comparable<AMQShortSt
private final byte[] _data;
private final int _offset;
private int _hashCode;
+ private String _asString = null;
+
private final int _length;
private static final char[] EMPTY_CHAR_ARRAY = new char[0];
@@ -137,7 +139,7 @@ public final class AMQShortString implements CharSequence, Comparable<AMQShortSt
public AMQShortString(String data)
{
this((data == null) ? EMPTY_CHAR_ARRAY : data.toCharArray());
-
+ _asString = data;
}
public AMQShortString(char[] data)
@@ -418,15 +420,14 @@ public final class AMQShortString implements CharSequence, Comparable<AMQShortSt
return chars;
}
- private String str = null;
public String asString()
{
- if (str == null)
+ if (_asString == null)
{
- str = new String(asChars());
+ _asString = new String(asChars());
}
- return str;
+ return _asString;
}
public boolean equals(Object o)
diff --git a/java/common/src/main/java/org/apache/qpid/transport/Header.java b/java/common/src/main/java/org/apache/qpid/transport/Header.java
index 9b6ab4951b..9439e5e0de 100644
--- a/java/common/src/main/java/org/apache/qpid/transport/Header.java
+++ b/java/common/src/main/java/org/apache/qpid/transport/Header.java
@@ -24,6 +24,8 @@ import org.apache.qpid.transport.network.Frame;
import java.util.Arrays;
import java.util.List;
+import java.util.Map;
+import java.util.LinkedHashMap;
import java.nio.ByteBuffer;
@@ -35,30 +37,31 @@ import java.nio.ByteBuffer;
public class Header {
- private final List<Struct> structs;
+ private final Struct[] structs;
public Header(List<Struct> structs)
{
- this.structs = structs;
+ this(structs.toArray(new Struct[structs.size()]));
}
public Header(Struct ... structs)
{
- this(Arrays.asList(structs));
+ this.structs = structs;
}
- public List<Struct> getStructs()
+ public Struct[] getStructs()
{
return structs;
}
+
public <T> T get(Class<T> klass)
{
for (Struct st : structs)
{
if (klass.isInstance(st))
{
- return klass.cast(st);
+ return (T) st;
}
}
diff --git a/java/common/src/main/java/org/apache/qpid/transport/Session.java b/java/common/src/main/java/org/apache/qpid/transport/Session.java
index 1400bd2e5b..2a4232c425 100644
--- a/java/common/src/main/java/org/apache/qpid/transport/Session.java
+++ b/java/common/src/main/java/org/apache/qpid/transport/Session.java
@@ -128,8 +128,14 @@ public class Session extends Invoker
{
int id = nextCommandId();
cmd.setId(id);
- log.debug("ID: [%s] %s", this.channel, id);
- if ((id % 65536) == 0)
+
+ if(log.isDebugEnabled())
+ {
+ log.debug("ID: [%s] %s", this.channel, id);
+ }
+
+ //if ((id % 65536) == 0)
+ if ((id & 0xff) == 0)
{
flushProcessed(TIMELY_REPLY);
}
@@ -232,7 +238,11 @@ public class Session extends Invoker
boolean complete(int lower, int upper)
{
- log.debug("%s complete(%d, %d)", this, lower, upper);
+ //avoid autoboxing
+ if(log.isDebugEnabled())
+ {
+ log.debug("%s complete(%d, %d)", this, lower, upper);
+ }
synchronized (commands)
{
int old = maxComplete;
diff --git a/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java b/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java
index b808156dc6..33d552b91e 100644
--- a/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java
+++ b/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java
@@ -200,7 +200,7 @@ public class Assembler implements Receiver<NetworkEvent>, NetworkDelegate
break;
case HEADER:
command = incomplete[channel];
- List<Struct> structs = new ArrayList();
+ List<Struct> structs = new ArrayList(2);
while (dec.hasRemaining())
{
structs.add(dec.readStruct32());
diff --git a/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java b/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java
index 007167115b..bb7d2506e3 100644
--- a/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java
+++ b/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java
@@ -34,7 +34,6 @@ import org.apache.qpid.transport.Struct;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
-import java.util.List;
import static org.apache.qpid.transport.network.Frame.*;
@@ -209,11 +208,11 @@ public final class Disassembler implements Sender<ProtocolEvent>,
if (payload)
{
final Header hdr = method.getHeader();
- final List<Struct> structs = hdr.getStructs();
- final int nstructs = structs.size();
- for (int i = 0; i < nstructs; i++)
+ final Struct[] structs = hdr.getStructs();
+
+ for (Struct st : structs)
{
- enc.writeStruct32(structs.get(i));
+ enc.writeStruct32(st);
}
headerSeg = enc.segment();
}
diff --git a/java/common/src/main/java/org/apache/qpid/transport/util/Logger.java b/java/common/src/main/java/org/apache/qpid/transport/util/Logger.java
index 77f592b6c6..8c4818df92 100644
--- a/java/common/src/main/java/org/apache/qpid/transport/util/Logger.java
+++ b/java/common/src/main/java/org/apache/qpid/transport/util/Logger.java
@@ -42,6 +42,11 @@ public final class Logger
this.log = log;
}
+ public boolean isDebugEnabled()
+ {
+ return log.isDebugEnabled();
+ }
+
public void debug(String message, Object ... args)
{
if (log.isDebugEnabled())