diff --git a/quickfixj-core/src/main/java/quickfix/FieldMap.java b/quickfixj-core/src/main/java/quickfix/FieldMap.java index 2e9202f3f..afa34294c 100644 --- a/quickfixj-core/src/main/java/quickfix/FieldMap.java +++ b/quickfixj-core/src/main/java/quickfix/FieldMap.java @@ -75,6 +75,15 @@ public void clear() { groups.clear(); } + public void reset() { + fields.clear(); + for(List groupList : groups.values()) { + for(Group group : groupList) + group.reset(); + } + groups.clear(); + } + public boolean isEmpty() { return fields.isEmpty(); } diff --git a/quickfixj-core/src/main/java/quickfix/Message.java b/quickfixj-core/src/main/java/quickfix/Message.java index 7ed213419..5d45396a0 100644 --- a/quickfixj-core/src/main/java/quickfix/Message.java +++ b/quickfixj-core/src/main/java/quickfix/Message.java @@ -350,6 +350,12 @@ public void clear() { position = 0; } + @Override + public void reset() { + super.reset(); + this.position = 0; + } + public static class Header extends FieldMap { static final long serialVersionUID = -3193357271891865972L; private static final int[] EXCLUDED_HEADER_FIELDS = { BeginString.FIELD, BodyLength.FIELD,