package fr.mcc.ginco.cli;
import javax.annotation.PostConstruct;
import javax.inject.Inject;
import javax.inject.Named;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate4.SessionHolder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.support.TransactionSynchronizationManager;
/**
* Ginco session initializer.
*/
@Service
public class SessionInitier {
@Inject
@Named("gincoSessionFactory")
private SessionFactory sessionFactory;
/**
* Init session.
*/
@PostConstruct
public void init() {
Session session = sessionFactory.openSession();
TransactionSynchronizationManager.bindResource(sessionFactory, new SessionHolder(session));
}
}