package org.trimou.tests.cdi.context;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.enterprise.event.Event;
import javax.inject.Inject;
import javax.inject.Named;
import org.trimou.cdi.context.RenderingScoped;
@Named("foo")
@RenderingScoped
public class Foo {
@Inject
private Event<Foo> event;
private Long createdAt;
@PostConstruct
public void init() {
this.createdAt = System.nanoTime();
}
@PreDestroy
public void destroy() {
event.fire(this);
}
public Long getCreatedAt() {
return createdAt;
}
}