public class SizeBasedMessageBuffer extends Object implements MessageBuffer
MessageBuffer which evicts from the largest buffers first.| Constructor and Description |
|---|
SizeBasedMessageBuffer() |
SizeBasedMessageBuffer(int limit) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
bubbleDown(MessageQueue biggest,
int position) |
protected void |
bubbleUp(MessageQueue queue,
int queueSize) |
void |
clear() |
MessageQueue |
createMessageQueue()
Creates a new message queue instance
|
int |
getSize() |
void |
onSizeChanged(MessageQueue queue,
int delta,
int queueSize)
After a message queue has changed we may need to perform some evictions
|
protected void |
swap(int firstPosition,
MessageQueue first,
int secondPosition,
MessageQueue second) |
public SizeBasedMessageBuffer()
public SizeBasedMessageBuffer(int limit)
public int getSize()
getSize in interface MessageBufferpublic MessageQueue createMessageQueue()
createMessageQueue in interface MessageBufferpublic void onSizeChanged(MessageQueue queue, int delta, int queueSize)
onSizeChanged in interface MessageBufferdelta - queueSize - public void clear()
clear in interface MessageBufferprotected void bubbleUp(MessageQueue queue, int queueSize)
protected void bubbleDown(MessageQueue biggest, int position)
protected void swap(int firstPosition, MessageQueue first, int secondPosition, MessageQueue second)
Copyright © 2005–2020 The Apache Software Foundation. All rights reserved.