/**
* This file is part of the source code and related artifacts for eGym Application.
*
* Copyright © 2013 eGym GmbH
*/
package de.egym.logqueue;
import java.util.ArrayList;
import java.util.List;
import net.jcip.annotations.ThreadSafe;
import com.google.inject.Singleton;
import de.egym.logqueue.writer.EgymLogWriter;
/**
* Simple writer implementation which is collecting all log records in a list.
*/
@Singleton
@ThreadSafe
class InMemoryWriter implements EgymLogWriter<String> {
private final List<String> logMessages = new ArrayList<>();
@Override
public synchronized void write(String logMessage) {
if (logMessage != null) {
logMessages.add(logMessage);
}
}
public synchronized List<String> getLogMessages() {
return new ArrayList<>(logMessages);
}
}