You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2011/12/28 14:02:48 UTC
svn commit: r1225178 [8/8] - in /qpid/trunk/qpid/java: ./ bdbstore/src/main/
bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/
bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuples/
bdbstore/src/test/ bdbstore/src/test/jav...
Modified: qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/AbstractDecoder.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/AbstractDecoder.java?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/AbstractDecoder.java (original)
+++ qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/AbstractDecoder.java Wed Dec 28 13:02:41 2011
@@ -29,12 +29,7 @@ import java.util.List;
import java.util.Map;
import java.util.UUID;
-import org.apache.qpid.transport.Binary;
-import org.apache.qpid.transport.RangeSet;
-import org.apache.qpid.transport.Struct;
-import org.apache.qpid.transport.Type;
-
-import static org.apache.qpid.transport.util.Functions.*;
+import org.apache.qpid.transport.*;
/**
@@ -194,18 +189,19 @@ abstract class AbstractDecoder implement
public RangeSet readSequenceSet()
{
int count = readUint16()/8;
- if (count == 0)
+ switch(count)
{
- return null;
- }
- else
- {
- RangeSet ranges = new RangeSet();
- for (int i = 0; i < count; i++)
- {
- ranges.add(readSequenceNo(), readSequenceNo());
- }
- return ranges;
+ case 0:
+ return null;
+ case 1:
+ return Range.newInstance(readSequenceNo(), readSequenceNo());
+ default:
+ RangeSet ranges = RangeSetFactory.createRangeSet(count);
+ for (int i = 0; i < count; i++)
+ {
+ ranges.add(readSequenceNo(), readSequenceNo());
+ }
+ return ranges;
}
}
Modified: qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java (original)
+++ qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java Wed Dec 28 13:02:41 2011
@@ -70,6 +70,16 @@ public final class BBEncoder extends Abs
return slice;
}
+ public int position()
+ {
+ return out.position();
+ }
+
+ public ByteBuffer underlyingBuffer()
+ {
+ return out;
+ }
+
private void grow(int size)
{
ByteBuffer old = out;
Modified: qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java (original)
+++ qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java Wed Dec 28 13:02:41 2011
@@ -26,13 +26,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.apache.qpid.transport.Header;
-import org.apache.qpid.transport.Method;
-import org.apache.qpid.transport.ProtocolError;
-import org.apache.qpid.transport.ProtocolEvent;
-import org.apache.qpid.transport.ProtocolHeader;
-import org.apache.qpid.transport.Receiver;
-import org.apache.qpid.transport.Struct;
+import org.apache.qpid.transport.*;
import org.apache.qpid.transport.codec.BBDecoder;
/**
@@ -198,12 +192,33 @@ public class Assembler implements Receiv
break;
case HEADER:
command = getIncompleteCommand(channel);
- List<Struct> structs = new ArrayList<Struct>(2);
+ List<Struct> structs = null;
+ DeliveryProperties deliveryProps = null;
+ MessageProperties messageProps = null;
+
while (dec.hasRemaining())
{
- structs.add(dec.readStruct32());
+ Struct struct = dec.readStruct32();
+ if(struct instanceof DeliveryProperties && deliveryProps == null)
+ {
+ deliveryProps = (DeliveryProperties) struct;
+ }
+ else if(struct instanceof MessageProperties && messageProps == null)
+ {
+ messageProps = (MessageProperties) struct;
+ }
+ else
+ {
+ if(structs == null)
+ {
+ structs = new ArrayList<Struct>(2);
+ }
+ structs.add(struct);
+ }
+
}
- command.setHeader(new Header(structs));
+ command.setHeader(new Header(deliveryProps,messageProps,structs));
+
if (frame.isLastSegment())
{
setIncompleteCommand(channel, null);
Modified: qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java (original)
+++ qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java Wed Dec 28 13:02:41 2011
@@ -87,27 +87,35 @@ public final class Disassembler implemen
}
}
+ private final ByteBuffer _frameHeader = ByteBuffer.allocate(HEADER_SIZE);
+
+ {
+ _frameHeader.order(ByteOrder.BIG_ENDIAN);
+ }
+
private void frame(byte flags, byte type, byte track, int channel, int size, ByteBuffer buf)
{
synchronized (sendlock)
{
- ByteBuffer data = ByteBuffer.allocate(size + HEADER_SIZE);
- data.order(ByteOrder.BIG_ENDIAN);
+ ByteBuffer data = _frameHeader;
+ _frameHeader.rewind();
+
data.put(0, flags);
data.put(1, type);
data.putShort(2, (short) (size + HEADER_SIZE));
data.put(5, track);
data.putShort(6, (short) channel);
- data.position(HEADER_SIZE);
+
int limit = buf.limit();
buf.limit(buf.position() + size);
- data.put(buf);
- buf.limit(limit);
-
+
data.rewind();
sender.send(data);
+ sender.send(buf);
+ buf.limit(limit);
+
}
}
@@ -179,7 +187,7 @@ public final class Disassembler implemen
}
}
method.write(enc);
- ByteBuffer methodSeg = enc.segment();
+ int methodLimit = enc.position();
byte flags = FIRST_SEG;
@@ -189,29 +197,44 @@ public final class Disassembler implemen
flags |= LAST_SEG;
}
- ByteBuffer headerSeg = null;
+ int headerLimit = -1;
if (payload)
{
final Header hdr = method.getHeader();
if (hdr != null)
{
- final Struct[] structs = hdr.getStructs();
-
- for (Struct st : structs)
+ if(hdr.getDeliveryProperties() != null)
+ {
+ enc.writeStruct32(hdr.getDeliveryProperties());
+ }
+ if(hdr.getMessageProperties() != null)
+ {
+ enc.writeStruct32(hdr.getMessageProperties());
+ }
+ if(hdr.getNonStandardProperties() != null)
{
- enc.writeStruct32(st);
+ for (Struct st : hdr.getNonStandardProperties())
+ {
+ enc.writeStruct32(st);
+ }
}
}
- headerSeg = enc.segment();
+ headerLimit = enc.position();
}
synchronized (sendlock)
{
- fragment(flags, type, method, methodSeg);
+ ByteBuffer buf = enc.underlyingBuffer();
+ buf.position(0);
+ buf.limit(methodLimit);
+
+ fragment(flags, type, method, buf);
if (payload)
{
ByteBuffer body = method.getBody();
- fragment(body == null ? LAST_SEG : 0x0, SegmentType.HEADER, method, headerSeg);
+ buf.limit(headerLimit);
+ buf.position(methodLimit);
+ fragment(body == null ? LAST_SEG : 0x0, SegmentType.HEADER, method, buf);
if (body != null)
{
fragment(LAST_SEG, SegmentType.BODY, method, body);
Propchange: qpid/trunk/qpid/java/common/src/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Modified: qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java (original)
+++ qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java Wed Dec 28 13:02:41 2011
@@ -581,10 +581,10 @@ public class PropertyFieldTableTest exte
table.setBytes("bytes", bytes);
table.setChar("char", 'c');
- table.setDouble("double", Double.MAX_VALUE);
- table.setFloat("float", Float.MAX_VALUE);
table.setInteger("int", Integer.MAX_VALUE);
table.setLong("long", Long.MAX_VALUE);
+ table.setDouble("double", Double.MAX_VALUE);
+ table.setFloat("float", Float.MAX_VALUE);
table.setShort("short", Short.MAX_VALUE);
table.setString("string", "hello");
table.setString("null-string", null);
@@ -823,9 +823,7 @@ public class PropertyFieldTableTest exte
*/
public void testCheckPropertyNamehasMaxLength()
{
- String oldVal = System.getProperty("STRICT_AMQP");
- System.setProperty("STRICT_AMQP", "true");
- FieldTable table = new FieldTable();
+ FieldTable table = new FieldTable(true);
StringBuffer longPropertyName = new StringBuffer(129);
@@ -845,14 +843,6 @@ public class PropertyFieldTableTest exte
}
// so length should be zero
Assert.assertEquals(0, table.getEncodedSize());
- if (oldVal != null)
- {
- System.setProperty("STRICT_AMQP", oldVal);
- }
- else
- {
- System.clearProperty("STRICT_AMQP");
- }
}
/**
@@ -860,9 +850,7 @@ public class PropertyFieldTableTest exte
*/
public void testCheckPropertyNameStartCharacterIsLetter()
{
- String oldVal = System.getProperty("STRICT_AMQP");
- System.setProperty("STRICT_AMQP", "true");
- FieldTable table = new FieldTable();
+ FieldTable table = new FieldTable(true);
// Try a name that starts with a number
try
@@ -876,14 +864,6 @@ public class PropertyFieldTableTest exte
}
// so length should be zero
Assert.assertEquals(0, table.getEncodedSize());
- if (oldVal != null)
- {
- System.setProperty("STRICT_AMQP", oldVal);
- }
- else
- {
- System.clearProperty("STRICT_AMQP");
- }
}
/**
@@ -891,9 +871,7 @@ public class PropertyFieldTableTest exte
*/
public void testCheckPropertyNameStartCharacterIsHashorDollar()
{
- String oldVal = System.getProperty("STRICT_AMQP");
- System.setProperty("STRICT_AMQP", "true");
- FieldTable table = new FieldTable();
+ FieldTable table = new FieldTable(true);
// Try a name that starts with a number
try
@@ -906,14 +884,6 @@ public class PropertyFieldTableTest exte
fail("property name are allowed to start with # and $s");
}
- if (oldVal != null)
- {
- System.setProperty("STRICT_AMQP", oldVal);
- }
- else
- {
- System.clearProperty("STRICT_AMQP");
- }
}
/**
Propchange: qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Modified: qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java (original)
+++ qpid/trunk/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java Wed Dec 28 13:02:41 2011
@@ -60,7 +60,7 @@ public class RangeSetTest extends TestCa
public void test1()
{
- RangeSet ranges = new RangeSet();
+ RangeSet ranges = RangeSetFactory.createRangeSet();
ranges.add(5, 10);
check(ranges);
ranges.add(15, 20);
@@ -77,7 +77,7 @@ public class RangeSetTest extends TestCa
public void test2()
{
- RangeSet rs = new RangeSet();
+ RangeSet rs = RangeSetFactory.createRangeSet();
check(rs);
rs.add(1);
@@ -128,7 +128,7 @@ public class RangeSetTest extends TestCa
public void testAddSelf()
{
- RangeSet a = new RangeSet();
+ RangeSet a = RangeSetFactory.createRangeSet();
a.add(0, 8);
check(a);
a.add(0, 8);
@@ -141,8 +141,8 @@ public class RangeSetTest extends TestCa
public void testIntersect1()
{
- Range a = new Range(0, 10);
- Range b = new Range(9, 20);
+ Range a = Range.newInstance(0, 10);
+ Range b = Range.newInstance(9, 20);
Range i1 = a.intersect(b);
Range i2 = b.intersect(a);
assertEquals(i1.getUpper(), 10);
@@ -153,16 +153,16 @@ public class RangeSetTest extends TestCa
public void testIntersect2()
{
- Range a = new Range(0, 10);
- Range b = new Range(11, 20);
+ Range a = Range.newInstance(0, 10);
+ Range b = Range.newInstance(11, 20);
assertNull(a.intersect(b));
assertNull(b.intersect(a));
}
public void testIntersect3()
{
- Range a = new Range(0, 10);
- Range b = new Range(3, 5);
+ Range a = Range.newInstance(0, 10);
+ Range b = Range.newInstance(3, 5);
Range i1 = a.intersect(b);
Range i2 = b.intersect(a);
assertEquals(i1.getUpper(), 5);
@@ -173,14 +173,14 @@ public class RangeSetTest extends TestCa
public void testSubtract1()
{
- Range a = new Range(0, 10);
+ Range a = Range.newInstance(0, 10);
assertTrue(a.subtract(a).isEmpty());
}
public void testSubtract2()
{
- Range a = new Range(0, 10);
- Range b = new Range(20, 30);
+ Range a = Range.newInstance(0, 10);
+ Range b = Range.newInstance(20, 30);
List<Range> ranges = a.subtract(b);
assertEquals(ranges.size(), 1);
Range d = ranges.get(0);
@@ -190,8 +190,8 @@ public class RangeSetTest extends TestCa
public void testSubtract3()
{
- Range a = new Range(20, 30);
- Range b = new Range(0, 10);
+ Range a = Range.newInstance(20, 30);
+ Range b = Range.newInstance(0, 10);
List<Range> ranges = a.subtract(b);
assertEquals(ranges.size(), 1);
Range d = ranges.get(0);
@@ -201,8 +201,8 @@ public class RangeSetTest extends TestCa
public void testSubtract4()
{
- Range a = new Range(0, 10);
- Range b = new Range(3, 5);
+ Range a = Range.newInstance(0, 10);
+ Range b = Range.newInstance(3, 5);
List<Range> ranges = a.subtract(b);
assertEquals(ranges.size(), 2);
Range low = ranges.get(0);
@@ -215,8 +215,8 @@ public class RangeSetTest extends TestCa
public void testSubtract5()
{
- Range a = new Range(0, 10);
- Range b = new Range(3, 20);
+ Range a = Range.newInstance(0, 10);
+ Range b = Range.newInstance(3, 20);
List<Range> ranges = a.subtract(b);
assertEquals(ranges.size(), 1);
Range d = ranges.get(0);
@@ -226,8 +226,8 @@ public class RangeSetTest extends TestCa
public void testSubtract6()
{
- Range a = new Range(0, 10);
- Range b = new Range(-10, 5);
+ Range a = Range.newInstance(0, 10);
+ Range b = Range.newInstance(-10, 5);
List<Range> ranges = a.subtract(b);
assertEquals(ranges.size(), 1);
Range d = ranges.get(0);
Modified: qpid/trunk/qpid/java/common/templates/method/version/MethodBodyClass.vm
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/templates/method/version/MethodBodyClass.vm?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/templates/method/version/MethodBodyClass.vm (original)
+++ qpid/trunk/qpid/java/common/templates/method/version/MethodBodyClass.vm Wed Dec 28 13:02:41 2011
@@ -46,8 +46,9 @@
package org.apache.qpid.framing.amqp_$version.getMajor()_$version.getMinor();
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
+import java.io.DataInput;
+import org.apache.qpid.codec.MarkableDataInput;
+import java.io.DataOutput;
import java.io.IOException;
import java.util.HashMap;
@@ -58,7 +59,7 @@ public class ${javaClassName} extends AM
{
private static final AMQMethodBodyInstanceFactory FACTORY_INSTANCE = new AMQMethodBodyInstanceFactory()
{
- public AMQMethodBody newInstance(DataInputStream in, long size) throws AMQFrameDecodingException, IOException
+ public AMQMethodBody newInstance(MarkableDataInput in, long size) throws AMQFrameDecodingException, IOException
{
return new ${javaClassName}(in);
}
@@ -86,7 +87,7 @@ public class ${javaClassName} extends AM
// Constructor
- public ${javaClassName}(DataInputStream buffer) throws AMQFrameDecodingException, IOException
+ public ${javaClassName}(MarkableDataInput buffer) throws AMQFrameDecodingException, IOException
{
#foreach( $field in $method.ConsolidatedFields )
_$field.Name = read$field.getEncodingType()( buffer );
@@ -171,7 +172,7 @@ public class ${javaClassName} extends AM
return size;
}
- public void writeMethodPayload(DataOutputStream buffer) throws IOException
+ public void writeMethodPayload(DataOutput buffer) throws IOException
{
#foreach( $field in $method.ConsolidatedFields )
write$field.getEncodingType()( buffer, _$field.Name );
Modified: qpid/trunk/qpid/java/common/templates/model/MethodRegistryClass.vm
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/templates/model/MethodRegistryClass.vm?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/templates/model/MethodRegistryClass.vm (original)
+++ qpid/trunk/qpid/java/common/templates/model/MethodRegistryClass.vm Wed Dec 28 13:02:41 2011
@@ -30,10 +30,10 @@
package org.apache.qpid.framing;
-import java.io.DataInputStream;
import java.io.IOException;
import org.apache.qpid.framing.abstraction.ProtocolVersionMethodConverter;
+import org.apache.qpid.codec.MarkableDataInput;
import java.util.Map;
import java.util.HashMap;
@@ -54,7 +54,7 @@ public abstract class MethodRegistry
#end
- public abstract AMQMethodBody convertToBody(DataInputStream in, long size)
+ public abstract AMQMethodBody convertToBody(MarkableDataInput in, long size)
throws AMQFrameDecodingException, IOException;
public abstract int getMaxClassId();
Modified: qpid/trunk/qpid/java/common/templates/model/version/MethodRegistryClass.vm
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/templates/model/version/MethodRegistryClass.vm?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/templates/model/version/MethodRegistryClass.vm (original)
+++ qpid/trunk/qpid/java/common/templates/model/version/MethodRegistryClass.vm Wed Dec 28 13:02:41 2011
@@ -35,10 +35,10 @@ import org.apache.qpid.protocol.AMQConst
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.io.DataInputStream;
import java.io.IOException;
import org.apache.qpid.framing.abstraction.ProtocolVersionMethodConverter;
+import org.apache.qpid.codec.MarkableDataInput;
public class MethodRegistry_$version.getMajor()_$version.getMinor() extends MethodRegistry
@@ -87,7 +87,7 @@ public class MethodRegistry_$version.get
}
- public AMQMethodBody convertToBody(DataInputStream in, long size)
+ public AMQMethodBody convertToBody(MarkableDataInput in, long size)
throws AMQFrameDecodingException, IOException
{
int classId = in.readUnsignedShort();
Propchange: qpid/trunk/qpid/java/integrationtests/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/integrationtests/src/main/java/org/apache/qpid/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/junit-toolkit/src/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/junit-toolkit/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/management/common/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/management/common/src/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/management/eclipse-plugin/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/management/eclipse-plugin/src/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/management/example/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/perftests/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/systests/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Modified: qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java?rev=1225178&r1=1225177&r2=1225178&view=diff
==============================================================================
--- qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java (original)
+++ qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java Wed Dec 28 13:02:41 2011
@@ -22,11 +22,11 @@ package org.apache.qpid.server.store;
import org.apache.commons.configuration.Configuration;
import org.apache.log4j.Logger;
-import org.apache.qpid.AMQException;
import org.apache.qpid.AMQStoreException;
import org.apache.qpid.framing.AMQShortString;
import org.apache.qpid.framing.FieldTable;
import org.apache.qpid.server.exchange.Exchange;
+import org.apache.qpid.server.message.EnqueableMessage;
import org.apache.qpid.server.queue.AMQQueue;
import org.apache.qpid.server.message.ServerMessage;
import org.apache.qpid.server.logging.LogSubject;
@@ -35,7 +35,7 @@ import java.util.HashMap;
import java.util.Iterator;
import java.nio.ByteBuffer;
-public class SlowMessageStore implements MessageStore
+public class SlowMessageStore implements MessageStore, DurableConfigurationStore
{
private static final Logger _logger = Logger.getLogger(SlowMessageStore.class);
private static final String DELAYS = "delays";
@@ -43,6 +43,7 @@ public class SlowMessageStore implements
private HashMap<String, Long> _postDelays = new HashMap<String, Long>();
private long _defaultDelay = 0L;
private MessageStore _realStore = new MemoryMessageStore();
+ private DurableConfigurationStore _durableConfigurationStore = (MemoryMessageStore) _realStore;
private static final String PRE = "pre";
private static final String POST = "post";
private String DEFAULT_DELAY = "default";
@@ -80,12 +81,13 @@ public class SlowMessageStore implements
" does not.");
}
_realStore = (MessageStore) o;
- _realStore.configureConfigStore(name, recoveryHandler, config, logSubject);
- }
- else
- {
- _realStore.configureConfigStore(name, recoveryHandler, config, logSubject);
+ if(o instanceof DurableConfigurationStore)
+ {
+ _durableConfigurationStore = (DurableConfigurationStore)o;
+ }
}
+ _durableConfigurationStore.configureConfigStore(name, recoveryHandler, config, logSubject);
+
}
private void configureDelays(Configuration config)
@@ -178,28 +180,28 @@ public class SlowMessageStore implements
public void createExchange(Exchange exchange) throws AMQStoreException
{
doPreDelay("createExchange");
- _realStore.createExchange(exchange);
+ _durableConfigurationStore.createExchange(exchange);
doPostDelay("createExchange");
}
public void removeExchange(Exchange exchange) throws AMQStoreException
{
doPreDelay("removeExchange");
- _realStore.removeExchange(exchange);
+ _durableConfigurationStore.removeExchange(exchange);
doPostDelay("removeExchange");
}
public void bindQueue(Exchange exchange, AMQShortString routingKey, AMQQueue queue, FieldTable args) throws AMQStoreException
{
doPreDelay("bindQueue");
- _realStore.bindQueue(exchange, routingKey, queue, args);
+ _durableConfigurationStore.bindQueue(exchange, routingKey, queue, args);
doPostDelay("bindQueue");
}
public void unbindQueue(Exchange exchange, AMQShortString routingKey, AMQQueue queue, FieldTable args) throws AMQStoreException
{
doPreDelay("unbindQueue");
- _realStore.unbindQueue(exchange, routingKey, queue, args);
+ _durableConfigurationStore.unbindQueue(exchange, routingKey, queue, args);
doPostDelay("unbindQueue");
}
@@ -211,14 +213,14 @@ public class SlowMessageStore implements
public void createQueue(AMQQueue queue, FieldTable arguments) throws AMQStoreException
{
doPreDelay("createQueue");
- _realStore.createQueue(queue, arguments);
+ _durableConfigurationStore.createQueue(queue, arguments);
doPostDelay("createQueue");
}
public void removeQueue(AMQQueue queue) throws AMQStoreException
{
doPreDelay("removeQueue");
- _realStore.removeQueue(queue);
+ _durableConfigurationStore.removeQueue(queue);
doPostDelay("removeQueue");
}
@@ -268,19 +270,19 @@ public class SlowMessageStore implements
_underlying = underlying;
}
- public void enqueueMessage(TransactionLogResource queue, Long messageId)
+ public void enqueueMessage(TransactionLogResource queue, EnqueableMessage message)
throws AMQStoreException
{
doPreDelay("enqueueMessage");
- _underlying.enqueueMessage(queue, messageId);
+ _underlying.enqueueMessage(queue, message);
doPostDelay("enqueueMessage");
}
- public void dequeueMessage(TransactionLogResource queue, Long messageId)
+ public void dequeueMessage(TransactionLogResource queue, EnqueableMessage message)
throws AMQStoreException
{
doPreDelay("dequeueMessage");
- _underlying.dequeueMessage(queue, messageId);
+ _underlying.dequeueMessage(queue, message);
doPostDelay("dequeueMessage");
}
@@ -313,7 +315,7 @@ public class SlowMessageStore implements
public void updateQueue(AMQQueue queue) throws AMQStoreException
{
doPreDelay("updateQueue");
- _realStore.updateQueue(queue);
+ _durableConfigurationStore.updateQueue(queue);
doPostDelay("updateQueue");
}
Propchange: qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/testkit/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
Propchange: qpid/trunk/qpid/java/tools/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Dec 28 13:02:41 2011
@@ -0,0 +1,2 @@
+*.iml
+
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org