public class ErrorGeneratingFilter extends IoFilterAdapter
IoFilter
implementation generating random bytes and PDU modification in
your communication streams.
It's quite simple to use :
ErrorGeneratingFilter egf = new ErrorGeneratingFilter();
For activate the change of some bytes in your IoBuffer
, for a probability of 200 out
of 1000 IoBuffer
processed :
egf.setChangeByteProbability(200);
For activate the insertion of some bytes in your IoBuffer
, for a
probability of 200 out of 1000 :
egf.setInsertByteProbability(200);
And for the removing of some bytes :
egf.setRemoveByteProbability(200);
You can activate the error generation for write or read with the
following methods :
egf.setManipulateReads(true);
egf.setManipulateWrites(true);
IoFilter.NextFilter
Constructor and Description |
---|
ErrorGeneratingFilter() |
Modifier and Type | Method and Description |
---|---|
void |
filterWrite(IoFilter.NextFilter nextFilter,
IoSession session,
WriteRequest writeRequest)
Filters
IoSession.write(Object) method invocation. |
int |
getChangeByteProbability() |
int |
getDuplicatePduProbability() |
int |
getInsertByteProbability() |
int |
getMaxInsertByte() |
int |
getRemoveByteProbability() |
int |
getRemovePduProbability() |
int |
getResendPduLasterProbability() |
boolean |
isManipulateReads() |
boolean |
isManipulateWrites() |
void |
messageReceived(IoFilter.NextFilter nextFilter,
IoSession session,
java.lang.Object message)
Filters
IoHandler.messageReceived(IoSession,Object)
event. |
void |
setChangeByteProbability(int changeByteProbability)
Set the probability for the change byte error.
|
void |
setDuplicatePduProbability(int duplicatePduProbability)
not functional ATM
|
void |
setInsertByteProbability(int insertByteProbability)
Set the probability for the insert byte error.
|
void |
setManipulateReads(boolean manipulateReads)
Set to true if you want to apply error to the read
IoBuffer |
void |
setManipulateWrites(boolean manipulateWrites)
Set to true if you want to apply error to the written
IoBuffer |
void |
setMaxInsertByte(int maxInsertByte)
Set the maximum number of byte the filter can insert in a
IoBuffer . |
void |
setRemoveByteProbability(int removeByteProbability)
Set the probability for the remove byte error.
|
void |
setRemovePduProbability(int removePduProbability)
not functional ATM
|
void |
setResendPduLasterProbability(int resendPduLasterProbability)
not functional ATM
|
destroy, exceptionCaught, filterClose, init, messageSent, onPostAdd, onPostRemove, onPreAdd, onPreRemove, sessionClosed, sessionCreated, sessionIdle, sessionOpened, toString
public void filterWrite(IoFilter.NextFilter nextFilter, IoSession session, WriteRequest writeRequest) throws java.lang.Exception
IoFilterAdapter
IoSession.write(Object)
method invocation.filterWrite
in interface IoFilter
filterWrite
in class IoFilterAdapter
java.lang.Exception
public void messageReceived(IoFilter.NextFilter nextFilter, IoSession session, java.lang.Object message) throws java.lang.Exception
IoFilterAdapter
IoHandler.messageReceived(IoSession,Object)
event.messageReceived
in interface IoFilter
messageReceived
in class IoFilterAdapter
java.lang.Exception
public int getChangeByteProbability()
public void setChangeByteProbability(int changeByteProbability)
IoBuffer
.changeByteProbability
- probability of modifying an IoBuffer out of 1000 processed IoBuffer
public int getDuplicatePduProbability()
public void setDuplicatePduProbability(int duplicatePduProbability)
duplicatePduProbability
- public int getInsertByteProbability()
public void setInsertByteProbability(int insertByteProbability)
IoBuffer
.changeByteProbability
- probability of inserting in IoBuffer out of 1000 processed IoBuffer
public boolean isManipulateReads()
public void setManipulateReads(boolean manipulateReads)
IoBuffer
manipulateReads
- public boolean isManipulateWrites()
public void setManipulateWrites(boolean manipulateWrites)
IoBuffer
manipulateWrites
- public int getRemoveByteProbability()
public void setRemoveByteProbability(int removeByteProbability)
IoBuffer
.changeByteProbability
- probability of modifying an IoBuffer
out of 1000 processed IoBufferpublic int getRemovePduProbability()
public void setRemovePduProbability(int removePduProbability)
removePduProbability
- public int getResendPduLasterProbability()
public void setResendPduLasterProbability(int resendPduLasterProbability)
resendPduLasterProbability
- public int getMaxInsertByte()
Copyright © 2004-2019 Apache MINA Project. All Rights Reserved.