You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
129 lines
2.8 KiB
Java
129 lines
2.8 KiB
Java
4 years ago
|
// ProtocolEvent.java
|
||
|
|
||
|
package support; // protocol support package
|
||
|
|
||
|
/**
|
||
|
This is the class for protocol events.
|
||
|
|
||
|
@author Iain A. Robin, Kenneth J. Turner
|
||
|
@version 1.0 (1st September 1999, IAR): initial version
|
||
|
<br/> 1.4 (9th March 2006, KJT): updated for JDK 1.5
|
||
|
<br/> 1.5 (22nd July 2010, KJT): minor tidying; addition of TRAVERSE
|
||
|
event
|
||
|
*/
|
||
|
public class ProtocolEvent {
|
||
|
|
||
|
/** Protocol event user -> protocol */
|
||
|
public final static int SEND = 0;
|
||
|
|
||
|
/** Protocol event protocol -> user */
|
||
|
public final static int DELIVER = 1;
|
||
|
|
||
|
/** Protocol event protocol -> medium */
|
||
|
public final static int TRANSMIT = 2;
|
||
|
|
||
|
/** Protocol event medium -> protocol */
|
||
|
public final static int RECEIVE = 3;
|
||
|
|
||
|
/** Protocol event medium fragmentation */
|
||
|
public final static int FRAGMENT = 4;
|
||
|
|
||
|
/** Protocol event medium loss */
|
||
|
public final static int LOSE = 5;
|
||
|
|
||
|
/** Protocol event timeout and retransmission */
|
||
|
public final static int TIMEOUT = 6;
|
||
|
|
||
|
/** Protocol event arbitrary comment */
|
||
|
public final static int COMMENT = 7;
|
||
|
|
||
|
/** Protocol event entity -> entity */
|
||
|
public final static int TRAVERSE = 8;
|
||
|
|
||
|
/** Protocol event protocol data unit */
|
||
|
private PDU pdu = null;
|
||
|
|
||
|
/** Protocol event type */
|
||
|
private int eventType;
|
||
|
|
||
|
/** Protocol event comment */
|
||
|
private String comment = "";
|
||
|
|
||
|
/** Protocol event target */
|
||
|
private ProtocolEntity target;
|
||
|
|
||
|
/**
|
||
|
Constructor for a protocol event.
|
||
|
|
||
|
@param type event type
|
||
|
@param pdu protocol data unit
|
||
|
*/
|
||
|
public ProtocolEvent(int type, PDU pdu) {
|
||
|
eventType = type;
|
||
|
this.pdu = pdu;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
Constructor for a protocol event.
|
||
|
|
||
|
@param type event type
|
||
|
@param target target entity
|
||
|
@param comment event comment
|
||
|
*/
|
||
|
public ProtocolEvent(int type, ProtocolEntity target, String comment) {
|
||
|
eventType = type;
|
||
|
this.target = target;
|
||
|
this.comment = comment;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
Get the comment attribute of a protocol event.
|
||
|
|
||
|
@return comment
|
||
|
*/
|
||
|
public String getComment() {
|
||
|
return(comment);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
Get the PDU attribute of a protocol event
|
||
|
|
||
|
@return The pDU value
|
||
|
*/
|
||
|
public PDU getPDU() {
|
||
|
return(pdu);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
Get the target attribute of a protocol event.
|
||
|
|
||
|
@return target
|
||
|
*/
|
||
|
public ProtocolEntity getTarget() {
|
||
|
return(target);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
Get the type attribute of a protocol event.
|
||
|
|
||
|
@return The type value
|
||
|
*/
|
||
|
public int getType() {
|
||
|
return(eventType);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
Convert to a string representation of a protocol event.
|
||
|
|
||
|
@return A string representation of the object.
|
||
|
*/
|
||
|
public String toString() {
|
||
|
return(
|
||
|
"Event <Type " + eventType + (pdu != null ?
|
||
|
" " + pdu : " Target " + target.getName() + " Comment " + comment) +
|
||
|
">");
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|