
com.skype.connector.test.CSVRecorder Maven / Gradle / Ivy
/*******************************************************************************
* Copyright (c) 2006-2007 Koji Hisano - UBION Inc. Developer
* Copyright (c) 2006-2007 UBION Inc.
*
* Copyright (c) 2006-2007 Skype Technologies S.A.
*
* Skype4Java is licensed under either the Apache License, Version 2.0 or
* the Eclipse Public License v1.0.
* You may use it freely in commercial and non-commercial products.
* You may obtain a copy of the licenses at
*
* the Apache License - http://www.apache.org/licenses/LICENSE-2.0
* the Eclipse Public License - http://www.eclipse.org/legal/epl-v10.html
*
* If it is possible to cooperate with the publicity of Skype4Java, please add
* links to the Skype4Java web site
* in your web site or documents.
*
* Contributors:
* Koji Hisano - initial API and implementation
******************************************************************************/
package com.skype.connector.test;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.Writer;
import com.skype.connector.ConnectorUtils;
public final class CSVRecorder extends Recorder {
private PrintWriter writer;
public CSVRecorder(String filePath) throws IOException {
this(new File(filePath));
}
public CSVRecorder(File file) throws IOException {
this(new FileWriter(file));
}
public CSVRecorder(Writer writer) {
ConnectorUtils.checkNotNull("writer", writer);
this.writer = new PrintWriter(new BufferedWriter(writer));
}
@Override
protected void recordReceivedMessage(long time, String message) {
write("received", time, message);
}
@Override
protected void recordSentMessage(long time, String message) {
write("sent", time, message);
}
private synchronized void write(String header, long time, String message) {
writer.print(header);
writer.print(',');
writer.print(time);
writer.print(',');
writer.println(message);
}
public void close() {
writer.close();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy