Interface ConsistentErrorHandler (2.0.0)

public interface ConsistentErrorHandler extends ErrorHandler

A marker interface to indicate that all MemcacheServiceException exceptions should be handled by ErrorHandler#handleServiceError(MemcacheServiceException). This interface was added to enable handling MemcacheServiceException thrown by the various MemcacheService#put(Object, Object) methods while preserving backward compatibility with ErrorHandler which did not handle such cases.

Implements

ErrorHandler

Methods

handleDeserializationError(InvalidValueException ivx)

public abstract void handleDeserializationError(InvalidValueException ivx)

Handles deserialization errors. This method is called from either of the get methods, if the retrieved value cannot be deserialized. This normally indicates an application upgrade since the cache entry was stored, and should thus be treated as a cache miss, which is the behavior of LogAndContinueErrorHandler (the default).

Parameter
NameDescription
ivxInvalidValueException

handleServiceError(MemcacheServiceException ex)

public abstract void handleServiceError(MemcacheServiceException ex)

Handles back-end service errors. This method is called from most of the MemcacheService methods in the event of a service error. This is also called for MemcacheService#put(Object, Object) when the combined key and value size is too large.

The handler may throw any RuntimeException, or it may simply return for "permissive" error handling, which will generally emulate behavior of a cache miss due to a discarded entry.

Parameter
NameDescription
exMemcacheServiceException