code: public Entry insertAfter(Entry newEntry, Entry insertAfter)
    {
      if (tc.isEntryEnabled())
        SibTr.entry(tc, "insertAfter", new Object[] { newEntry, insertAfter });
  
      Entry insertedEntry = null;    
  
      //check that the params are not null, if either is, there is nothing to do.
      if(newEntry != null &&
         insertAfter != null)
      {
        //call the internal unsynchronized insert method
        insertedEntry = insertAfter.forceInsertAfter(newEntry);            
      }
      
      if (tc.isEntryEnabled())
        SibTr.exit(tc, "insertAfter", insertedEntry);
      
      return insertedEntry;
    }
docs: Synchronized. Insert an entry into the list after a given one. The
  new entry must not already be in a list. The entry after which the new
  one is to be inserted must be in this list.
  
  @param newEntry The entry to be added.
  @param insertAfter The entry after which the new one is to be inserted