private void Buffer(object message)
{
if (_settings.BufferSize == 0)
Log.Debug("Singleton not available and buffering is disabled, dropping message [{0}]", message.GetType());
else if (_buffer.Count == _settings.BufferSize)
{
var first = _buffer.Dequeue();
Log.Debug("Singleton not available, buffer is full, dropping first message [{0}]", first.Key.GetType());
_buffer.Enqueue(new KeyValuePair<object, IActorRef>(message, Sender));
}
else
{
Log.Debug("Singleton not available, buffering message type [{0}]", message.GetType());
_buffer.Enqueue(new KeyValuePair<object, IActorRef>(message, Sender));
}
}