question: public int purge ( ) { if ( capacity >= 0 ) { int start = size ( ) ; Object [ ] cache = messageCache . toArray ( ) ; for ( int i = start - 1 ; i >= capacity ; i -- ) { messageCache . remove ( ( IMessage ) cache [ i ] ) ; } return start - size ( ) ; } return 0 ; }
target:  This purges the list's internal message cache so that the oldest messages are removed until the list's capacity requirements are met.