/*
* #%~
* RT Trace Viewer Plugin
* %%
* Copyright (C) 2008 - 2014 Overture
* %%
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public
* License along with this program. If not, see
* <http://www.gnu.org/licenses/gpl-3.0.html>.
* #~%
*/
package org.overture.ide.plugins.rttraceviewer.view;
import java.io.IOException;
import org.overture.ide.plugins.rttraceviewer.data.TraceData;
import org.overture.interpreter.messages.rtlog.nextgen.NextGenRTLogger;
public class TraceFileParser extends Thread {
private String fileName = null;
private boolean isFinished = false;
private Object lock = new Object();
public TraceData data = null;
public Exception error = null;
public TraceFileParser(String file)
{
this.fileName = file;
}
@Override
public void run()
{
try
{
NextGenRTLogger logger = NextGenRTLogger.getInstanceFromFile(fileName);
data = new TraceData(logger);
}
catch (IOException e) {
error = e;
}
catch (ClassNotFoundException e) {
error = e;
}
synchronized (lock)
{
isFinished = true;
}
}
public boolean isFinished()
{
return isFinished;
}
}