⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 basestoreoperationimpl.java

📁 memcached JAVA客户端API,应用广泛,运行比较稳定。
💻 JAVA
字号:
package net.spy.memcached.protocol.ascii;import java.nio.ByteBuffer;import net.spy.memcached.KeyUtil;import net.spy.memcached.ops.OperationCallback;import net.spy.memcached.ops.OperationState;import net.spy.memcached.ops.OperationStatus;/** * Base class for ascii store operations (add, set, replace, append, prepend). */abstract class BaseStoreOperationImpl extends OperationImpl {	private static final int OVERHEAD = 32;	private static final OperationStatus STORED =		new OperationStatus(true, "STORED");	protected final String type;	protected final String key;	protected final int flags;	protected final int exp;	protected final byte[] data;	public BaseStoreOperationImpl(String t, String k, int f, int e,			byte[] d, OperationCallback cb) {		super(cb);		type=t;		key=k;		flags=f;		exp=e;		data=d;	}	@Override	public void handleLine(String line) {		assert getState() == OperationState.READING			: "Read ``" + line + "'' when in " + getState() + " state";		getCallback().receivedStatus(matchStatus(line, STORED));		transitionState(OperationState.COMPLETE);	}	@Override	public void initialize() {		ByteBuffer bb=ByteBuffer.allocate(data.length				+ KeyUtil.getKeyBytes(key).length + OVERHEAD);		setArguments(bb, type, key, flags, exp, data.length);		assert bb.remaining() >= data.length + 2			: "Not enough room in buffer, need another "				+ (2 + data.length - bb.remaining());		bb.put(data);		bb.put(CRLF);		bb.flip();		setBuffer(bb);	}	@Override	protected void wasCancelled() {		// XXX:  Replace this comment with why I did this		getCallback().receivedStatus(CANCELLED);	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -