* @return same object to permit progressive setters
*/
publicPduTracksortPdus()
{
Collections.sort(pduList,newComparator<Pdu>(){
@Override
publicintcompare(Pdulhs,Pdurhs)
{
// -1 less than, 1 greater than, 0 equal
if(lhs.occursBefore(rhs))
return-1;
elseif(lhs.occursSameTime(rhs))
return0;
elsereturn1;
}
});
returnthis;
}
/**
* Reverse order of PDU list
* @see <a href="https://stackoverflow.com/questions/10766492/what-is-the-simplest-way-to-reverse-an-arraylist">StackOverflow: What is the Simplest Way to Reverse an ArrayList?</a>
* @see <a href="https://docs.oracle.com/javase/tutorial/getStarted/application/index.html">Java Tutorials: A Closer Look at the "Hello World!" Application</a>
* @param args [address, port, descriptor] command-line arguments are an array of optional String parameters that are passed from execution environment during invocation
*/
publicstaticvoidmain(String[]args)
{
System.out.println("*** PduTrack.main() self test started...");
PduTrackpduTrack=newPduTrack();
pduTrack.setDescriptor("main() self test");
pduTrack.selfTest();
System.out.println("*** PduTrack.main() self test complete.");