[31] | 1 | /************************************************************************************ |
---|
| 2 | * Copyright (C) 2008 by Politehnica University of Bucharest and Rutgers University |
---|
| 3 | * All rights reserved. |
---|
| 4 | * Refer to LICENSE for terms and conditions of use. |
---|
| 5 | ***********************************************************************************/ |
---|
| 6 | package vnsim.core.events; |
---|
| 7 | |
---|
| 8 | |
---|
| 9 | import java.io.Serializable; |
---|
| 10 | import java.util.LinkedList; |
---|
| 11 | |
---|
| 12 | import vnsim.core.*; |
---|
| 13 | |
---|
| 14 | |
---|
| 15 | /** |
---|
| 16 | * @author Victor Gradinescu |
---|
| 17 | * |
---|
| 18 | */ |
---|
| 19 | public class ReceiveEvent extends Event{ |
---|
| 20 | public Communicator sender; |
---|
| 21 | public Communicator receiver; |
---|
| 22 | byte[] message; |
---|
| 23 | |
---|
| 24 | int messageType; |
---|
| 25 | |
---|
| 26 | Serializable messageObject; |
---|
| 27 | |
---|
| 28 | public LinkedList<ReceiveEvent> signals = new LinkedList<ReceiveEvent>(); |
---|
| 29 | |
---|
| 30 | boolean unicast = false; |
---|
| 31 | |
---|
| 32 | public boolean isUnicast() { |
---|
| 33 | return unicast; |
---|
| 34 | } |
---|
| 35 | |
---|
| 36 | public void setUnicast(boolean unicast) { |
---|
| 37 | this.unicast = unicast; |
---|
| 38 | } |
---|
| 39 | |
---|
| 40 | |
---|
| 41 | public ReceiveEvent(int t, Communicator receiver, byte[] message, Serializable messageObject, int type){ |
---|
| 42 | super(t); |
---|
| 43 | signals.add(this); |
---|
| 44 | this.receiver = receiver; |
---|
| 45 | this.message = message; |
---|
| 46 | this.messageObject = messageObject; |
---|
| 47 | if (messageObject != null) { |
---|
| 48 | message = new byte[1]; |
---|
| 49 | message[0] = (byte)type; |
---|
| 50 | } |
---|
| 51 | } |
---|
| 52 | |
---|
| 53 | public byte[] getMessage() { |
---|
| 54 | return message; |
---|
| 55 | } |
---|
| 56 | public void setMessage(byte[] message) { |
---|
| 57 | this.message = message; |
---|
| 58 | } |
---|
| 59 | |
---|
| 60 | public Serializable getMessageObject() { |
---|
| 61 | return messageObject; |
---|
| 62 | } |
---|
| 63 | |
---|
| 64 | public Communicator getReceiver() { |
---|
| 65 | return receiver; |
---|
| 66 | } |
---|
| 67 | public void setReceiver(Communicator receiver) { |
---|
| 68 | this.receiver = receiver; |
---|
| 69 | } |
---|
| 70 | public Communicator getSender() { |
---|
| 71 | return sender; |
---|
| 72 | } |
---|
| 73 | public void setSender(Communicator sender) { |
---|
| 74 | this.sender = sender; |
---|
| 75 | } |
---|
| 76 | |
---|
| 77 | public String toString() { |
---|
| 78 | return "["+time+": Recv "+message+" from "+receiver+" ]"; |
---|
| 79 | } |
---|
| 80 | |
---|
| 81 | |
---|
| 82 | } |
---|