Class Telegram

  • All Implemented Interfaces:
    java.lang.Comparable

    public class Telegram
    extends java.lang.Object
    implements java.lang.Comparable
    This object is used for communication between entities.
    Author:
    kong
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static double SMALLEST_DELAY
      These telegrams will be stored in a priority queue.
    • Constructor Summary

      Constructors 
      Constructor Description
      Telegram()  
      Telegram​(double delayTime, java.lang.String sender, java.lang.String receiver, int type)  
      Telegram​(double delayTime, java.lang.String sender, java.lang.String receiver, int type, TObject info)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int compareTo​(java.lang.Object o2)  
      boolean equals​(java.lang.Object o)  
      double getCreatedTime()  
      double getDelayTime()  
      TObject getInfo()  
      java.lang.String getReceiver()  
      java.lang.String getSender()  
      int getType()  
      int hashCode()
      It is generally necessary to override the hashCode method whenever equals method is overridden, so as to maintain the general contract for the hashCode method, which states that equal objects must have equal hash codes.
      void setDelayTime​(double delay)  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • SMALLEST_DELAY

        public static final double SMALLEST_DELAY
        These telegrams will be stored in a priority queue. Therefore the operator needs to be overloaded so that the PQ can sort the telegrams by time priority. Note how the times must be smaller than SmallestDelay apart before two Telegrams are considered unique.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Telegram

        public Telegram()
      • Telegram

        public Telegram​(double delayTime,
                        java.lang.String sender,
                        java.lang.String receiver,
                        int type)
      • Telegram

        public Telegram​(double delayTime,
                        java.lang.String sender,
                        java.lang.String receiver,
                        int type,
                        TObject info)
    • Method Detail

      • getSender

        public java.lang.String getSender()
      • getReceiver

        public java.lang.String getReceiver()
      • getType

        public int getType()
      • getDelayTime

        public double getDelayTime()
      • setDelayTime

        public void setDelayTime​(double delay)
      • getCreatedTime

        public double getCreatedTime()
      • getInfo

        public TObject getInfo()
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        It is generally necessary to override the hashCode method whenever equals method is overridden, so as to maintain the general contract for the hashCode method, which states that equal objects must have equal hash codes.
        Overrides:
        hashCode in class java.lang.Object
      • compareTo

        public int compareTo​(java.lang.Object o2)
        Specified by:
        compareTo in interface java.lang.Comparable
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object