All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.spy.memcached.transcoders.Transcoder Maven / Gradle / Ivy

The newest version!
// Copyright (c) 2006  Dustin Sallings 

package net.spy.memcached.transcoders;

import net.spy.memcached.CachedData;

/**
 * Transcoder is an interface for classes that convert between byte arrays and
 * objects for storage in the cache.
 */
public interface Transcoder {

	/**
	 * Should the transcoder be run asyncronously.
     * @return True if the CachedData should be decoded Asyncronously
	 */
	boolean asyncDecode(CachedData d);

	/**
	 * Encode the given object for storage.
	 *
	 * @param o the object
	 * @return the CachedData representing what should be sent
	 */
	CachedData encode(T o);

	/**
	 * Decode the cached object into the object it represents.
	 *
	 * @param d the data
	 * @return the return value
	 */
	T decode(CachedData d);

	/**
	 * Get the maximum size of objects handled by this transcoder.
	 */
	int getMaxSize();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy