package dmo.fs.db.dodex.hib;

import io.quarkus.arc.InjectableInstance;
import io.quarkus.hibernate.orm.PersistenceUnit;
import org.hibernate.reactive.mutiny.Mutiny;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class MutinySessionFactory {
  protected static final Logger logger = LoggerFactory.getLogger(MutinySessionFactory.class.getName());
  /*
      To use;
           export QUARKUS_HIBERNATE_ORM_SQLSERVER_ACTIVE=true  or
           export QUARKUS_HIBERNATE_ORM_ORACLE_ACTIVE=true
   */
  @PersistenceUnit("oracle")
  InjectableInstance<Mutiny.SessionFactory> oracleFactory;

  @PersistenceUnit("sqlserver")
  InjectableInstance<Mutiny.SessionFactory> sqlserverFactory;

  public InjectableInstance
      <Mutiny.SessionFactory> getSqlserverSessionFactory() {
    return sqlserverFactory;
  }

  public InjectableInstance
      <Mutiny.SessionFactory> getOracleSessionFactory() {
    return oracleFactory;
  }
}

