public synchronized HashtableEntry put(Object key, Object value, int len, long expirationTime, long validatorExpirationTime,
                                           byte[] serializedKey, byte[] serializedCacheValue, int valueHashcode, boolean isAliasId) // LI4337-17
    throws IOException,
                    EOFException,
                    FileManagerException,
                    ClassNotFoundException,
                    HashtableOnDiskException {
        if (key == null)
            return null;
        //if ( value == null ) return 0;  // comment this line to allow the value=NULL

        return mapPut(key, value, len, expirationTime, validatorExpirationTime, serializedKey, serializedCacheValue, valueHashcode, isAliasId); // LI4337-17
    }
public synchronized HashtableEntry put ( Object key , Object value , int len , long expirationTime , long validatorExpirationTime , byte [ ] serializedKey , byte [ ] serializedCacheValue , int valueHashcode , boolean isAliasId ) throws IOException , EOFException , FileManagerException , ClassNotFoundException , HashtableOnDiskException { if ( key == null ) return null ; return mapPut ( key , value , len , expirationTime , validatorExpirationTime , serializedKey , serializedCacheValue , valueHashcode , isAliasId ) ; }
************************************************************************
Associates the object with the key and stores it. If an object already
exists for this key it is replaced and the previous object discard. The
object is assumed to have been "manually" serialized by the caller and will
be written up to length "len", directly on disk with no further
serialization.

@param key The key for the object to store.
@param value The object to store (might be serialized cache entry)
@param len The maximum number of bytes from "value" to write to disk.
@param expirationTime The expiration time of this object
@param serializedKey the serialized key
@param serializedCacheValue the serialized cache value (value in cache entry)
@param isAliasId boolean to indicate alias id

@return HashTableEntry of old entry if exists. Return null if the key is null or the entry does not exist

@exception FileManagerException The underlying file manager has a problem.
@exception ClassNotFoundException Some key in the hash bucket cannot be
deserialized while searching to see if the object already exists. The
underlying file is likely corrupted.
@exception IOException The underlying file has a problem and is likely
corrupt.
@exception EOFxception We were asked to seek beyond the end of the file.
The file is likely corrupt.
@exception HashtableOnDiskException The hashtable header is readable but invalid.
One or more of the following is true: the magic string is invalid, the header
pointers are null, the header pointers do not point to a recognizable hashtable.
***********************************************************************