@ Override public V put ( final K aKey , final V aValue ) { // throw out garbage collected values first _processQueue ( ) ; final SoftValue < K , V > aOld = m_aSrcMap . put ( aKey , new SoftValue <> ( aKey , aValue , m_aQueue ) ) ; return aOld == null ? null : aOld . get ( ) ; }
Here we put the key value pair into the HashMap using a SoftValue object .