pooledbytebufferimpl.java

来自「java 文件下载器。可自定义」· Java 代码 · 共 75 行

JAVA
75
字号
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   PooledByteBufferImpl.java

package org.gudy.azureus2.pluginsimpl.local.utils;

import java.io.IOException;
import java.nio.ByteBuffer;
import java.util.Map;
import org.gudy.azureus2.core3.util.*;
import org.gudy.azureus2.plugins.utils.PooledByteBuffer;

public class PooledByteBufferImpl
	implements PooledByteBuffer
{

	private DirectByteBuffer buffer;

	public PooledByteBufferImpl(DirectByteBuffer _buffer)
	{
		buffer = _buffer;
	}

	public PooledByteBufferImpl(int size)
	{
		buffer = DirectByteBufferPool.getBuffer((byte)1, size);
	}

	public PooledByteBufferImpl(byte data[])
	{
		buffer = DirectByteBufferPool.getBuffer((byte)1, data.length);
		buffer.put((byte)1, data);
		buffer.position((byte)1, 0);
	}

	public PooledByteBufferImpl(byte data[], int offset, int length)
	{
		buffer = DirectByteBufferPool.getBuffer((byte)1, length);
		buffer.put((byte)1, data, offset, length);
		buffer.position((byte)1, 0);
	}

	public byte[] toByteArray()
	{
		buffer.position((byte)1, 0);
		int len = buffer.limit((byte)1);
		byte res[] = new byte[len];
		buffer.get((byte)1, res);
		buffer.position((byte)1, 0);
		return res;
	}

	public ByteBuffer toByteBuffer()
	{
		return buffer.getBuffer((byte)1);
	}

	public Map toMap()
		throws IOException
	{
		return BDecoder.decode(toByteArray());
	}

	public DirectByteBuffer getBuffer()
	{
		return buffer;
	}

	public void returnToPool()
	{
		buffer.returnToPool();
	}
}

⌨️ 快捷键说明

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