@MustBeLocked (ELockType.WRITE)
  protected final void putInCacheNotLocked (@Nonnull final KEYTYPE aKey, @Nonnull final VALUETYPE aValue)
  {
    ValueEnforcer.notNull (aKey, "cacheKey");
    ValueEnforcer.notNull (aValue, "cacheValue");

    // try again in write lock
    if (m_aCache == null)
    {
      // Create a new map to cache the objects
      m_aCache = createCache ();
      if (m_aCache == null)
        throw new IllegalStateException ("No cache created!");
    }
    m_aCache.put (aKey, aValue);
  }
@ MustBeLocked ( ELockType . WRITE ) protected final void putInCacheNotLocked ( @ Nonnull final KEYTYPE aKey , @ Nonnull final VALUETYPE aValue ) { ValueEnforcer . notNull ( aKey , "cacheKey" ) ; ValueEnforcer . notNull ( aValue , "cacheValue" ) ; if ( m_aCache == null ) { m_aCache = createCache ( ) ; if ( m_aCache == null ) throw new IllegalStateException ( "No cache created!" ) ; } m_aCache . put ( aKey , aValue ) ; }
Put a new value into the cache.

@param aKey
The cache key. May not be <code>null</code>.
@param aValue
The cache value. May not be <code>null</code>.