package br.ufes.inf.lprm.scene.examples.fever;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.concurrent.TimeUnit;
import br.ufes.inf.lprm.scene.examples.shared.Person;
import br.ufes.inf.lprm.scene.publishing.Publish;
import br.ufes.inf.lprm.situation.Role;
import br.ufes.inf.lprm.situation.SituationType;
//@Publish(host="host", port=4040)
public class Fever extends SituationType {
@Role(label = "f1")
private Person febrile;
public void setFebrile(Person febrile) {
this.febrile = febrile;
}
public Person getFebrile() {
return febrile;
}
@Override
public void setActive() {
super.setActive();
System.out.println(febrile.getName() + ": Fever activated at " + new SimpleDateFormat("H:mm:ss").format( new Date( this.getActivation().getTimestamp() ) ) );
}
@Override
public void setInactive() {
super.setInactive();
System.out.println(febrile.getName() + ": Fever deactivated at " + new SimpleDateFormat("H:mm:ss").format( new Date( this.getDeactivation().getTimestamp() ) ) + ". It lasted: " + TimeUnit.MILLISECONDS.toSeconds( (this.getDeactivation().getTimestamp() - this.getActivation().getTimestamp()) ) + " seconds" );
}
}