package org.lucci.madhoc.network.monitor.measure;
import org.lucci.madhoc.network.Connection;
import org.lucci.madhoc.simulation.measure.NaturalNumberSensor;
import org.lucci.madhoc.simulation.measure.Unit;
import org.lucci.madhoc.simulation.projection.Projection;
public class ConnectionAverageAgeSensor extends NaturalNumberSensor
{
public String getName()
{
return ("connections average age");
}
public Unit getUnit()
{
return (Unit.NUMBER_OF_CONNECTION);
}
@Override
public Double takeNewDoubleValue(Projection projection)
{
double sum = 0; double currentDate = projection.getNetwork().getSimulation()
.getSimulatedTime();
for (Connection myConnection : projection.getNetwork().getConnections())
{
sum += currentDate - myConnection.getCreationDate();
}
return sum / projection.getNetwork().getConnections().size();
}
}