1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty.buffer;
17
18 import io.netty.util.internal.PlatformDependent;
19
20 import java.nio.ByteBuffer;
21
22 class UnpooledUnsafeNoCleanerDirectByteBuf extends UnpooledUnsafeDirectByteBuf {
23
24 UnpooledUnsafeNoCleanerDirectByteBuf(ByteBufAllocator alloc, int initialCapacity, int maxCapacity) {
25 super(alloc, initialCapacity, maxCapacity);
26 }
27
28 @Override
29 protected ByteBuffer allocateDirect(int initialCapacity) {
30 return PlatformDependent.allocateDirectNoCleaner(initialCapacity);
31 }
32
33 ByteBuffer reallocateDirect(ByteBuffer oldBuffer, int initialCapacity) {
34 return PlatformDependent.reallocateDirectNoCleaner(oldBuffer, initialCapacity);
35 }
36
37 @Override
38 protected void freeDirect(ByteBuffer buffer) {
39 PlatformDependent.freeDirectNoCleaner(buffer);
40 }
41
42 @Override
43 public ByteBuf capacity(int newCapacity) {
44 checkNewCapacity(newCapacity);
45
46 int oldCapacity = capacity();
47 if (newCapacity == oldCapacity) {
48 return this;
49 }
50
51 trimIndicesToCapacity(newCapacity);
52 setByteBuffer(reallocateDirect(buffer, newCapacity), false);
53 return this;
54 }
55 }