Assure intercept methods to not change the message
This was done by cloning.
This commit is contained in:
@@ -164,4 +164,12 @@ public class ConnectMessage extends AbstractMessage {
|
||||
}
|
||||
return base;
|
||||
}
|
||||
|
||||
public ConnectMessage readOnlyClone() {
|
||||
try {
|
||||
return (ConnectMessage) super.clone();
|
||||
} catch (CloneNotSupportedException e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,4 +54,14 @@ public class PublishMessage extends MessageIDMessage {
|
||||
public void setPayload(ByteBuffer payload) {
|
||||
this.m_payload = payload;
|
||||
}
|
||||
|
||||
public PublishMessage readOnlyClone() {
|
||||
try {
|
||||
final PublishMessage clone = (PublishMessage) super.clone();
|
||||
clone.m_payload = this.m_payload.asReadOnlyBuffer();
|
||||
return clone;
|
||||
} catch (CloneNotSupportedException e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user