Update of /cvsroot/tail/Tail/src/java/net/sf/tail/series
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv8274/src/java/net/sf/tail/series
Added Files:
SerializableTimeSeries.java
Log Message:
refatoração do timeSeries
--- NEW FILE: SerializableTimeSeries.java ---
package net.sf.tail.series;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import net.sf.tail.Tick;
import net.sf.tail.TimeSeries;
import net.sf.tail.TimeSeriesLoader;
public class SerializableTimeSeries implements TimeSeries {
private String name;
private String seriesAdress;
private transient TimeSeries series;
private TimeSeriesLoader loader;
public SerializableTimeSeries(String name, String seriesAdress, TimeSeriesLoader loader) throws FileNotFoundException, IOException {
this.name = name;
this.seriesAdress = seriesAdress;
this.loader = loader;
this.series = loader.load(new FileInputStream(seriesAdress), name);
}
public String getName() {
return name;
}
public String getSeriesAdress() {
return seriesAdress;
}
public TimeSeries getSeries()
{
if(series == null) reloadSeries();
return series;
}
public TimeSeries reloadSeries()
{
try {
this.series = loader.load(new FileInputStream(seriesAdress), name);
} catch (FileNotFoundException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
return series;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((name == null) ? 0 : name.hashCode());
result = prime * result + ((seriesAdress == null) ? 0 : seriesAdress.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
final SerializableTimeSeries other = (SerializableTimeSeries) obj;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
if (seriesAdress == null) {
if (other.seriesAdress != null)
return false;
} else if (!seriesAdress.equals(other.seriesAdress))
return false;
return true;
}
public int getBegin() {
return getSeries().getBegin();
}
public int getEnd() {
return getSeries().getEnd();
}
public String getPeriod() {
return getSeries().getPeriod();
}
public int getSize() {
return getSeries().getSize();
}
public Tick getTick(int i) {
return getSeries().getTick(i);
}
}
|