Package org.openmeetings.app.data.basic.dao

Source Code of org.openmeetings.app.data.basic.dao.OmTimeZoneDaoImpl

package org.openmeetings.app.data.basic.dao;

import java.util.Date;
import java.util.List;

import javax.persistence.Query;
import javax.persistence.EntityManager;
import javax.persistence.EntityTransaction;
import org.openmeetings.app.persistence.beans.basic.OmTimeZone;
import org.openmeetings.app.persistence.utils.PersistenceSessionUtil;
import org.openmeetings.app.remote.red5.ScopeApplicationAdapter;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;

public class OmTimeZoneDaoImpl {
 
  private static final Logger log = Red5LoggerFactory.getLogger(OmTimeZoneDaoImpl.class, ScopeApplicationAdapter.webAppRootKey);

  private OmTimeZoneDaoImpl() {
  }

  private static OmTimeZoneDaoImpl instance = null;
  public static synchronized OmTimeZoneDaoImpl getInstance() {
    if (instance == null) {
      instance = new OmTimeZoneDaoImpl();
    }
    return instance;
  }
 
  public Long addOmTimeZone(String name, String label, String iCal, Integer orderId) {
    try {
     
      OmTimeZone omTimeZone = new OmTimeZone();
     
      omTimeZone.setJname(name);
      omTimeZone.setLabel(label);
      omTimeZone.setIcal(iCal);
      omTimeZone.setOrderId(orderId);
      omTimeZone.setInserted(new Date());
     
      Object idf = PersistenceSessionUtil.createSession();
      EntityManager session = PersistenceSessionUtil.getSession();
      EntityTransaction tx = session.getTransaction();
      tx.begin();
     
      omTimeZone = session.merge(omTimeZone);
      Long omTimeZoneId = omTimeZone.getOmtimezoneId();
     
      tx.commit();
      PersistenceSessionUtil.closeSession(idf);
     
      return omTimeZoneId;
     
    } catch (Exception ex) {
      log.error("[addOmTimeZone]",ex);
    }
    return null;
  }
 
  public List<OmTimeZone> getOmTimeZones() {
    try {
      String hql = "select sl from OmTimeZone as sl " +
          "ORDER BY sl.orderId";
     
      Object idf = PersistenceSessionUtil.createSession();
      EntityManager session = PersistenceSessionUtil.getSession();
      EntityTransaction tx = session.getTransaction();
      tx.begin();
      Query query = session.createQuery(hql);
      List<OmTimeZone> sList = query.getResultList();
      tx.commit();
      PersistenceSessionUtil.closeSession(idf);
     
      for (OmTimeZone omTimeZone  : sList) {
        omTimeZone.setFrontEndLabel(omTimeZone.getJname()+ " (" + omTimeZone.getLabel() + ")");
      }
     
      return sList;
     
    } catch (Exception ex2) {
      log.error("[getOmTimeZones]: ",ex2);
    }
    return null;
  }
 
  public OmTimeZone getOmTimeZone(String jname) {
    try {
      String hql = "select sl from OmTimeZone as sl " +
              "WHERE sl.jname LIKE :jname";
      Object idf = PersistenceSessionUtil.createSession();
      EntityManager session = PersistenceSessionUtil.getSession();
      EntityTransaction tx = session.getTransaction();
      tx.begin();
      Query query = session.createQuery(hql);
      query.setParameter("jname", jname);
      List<OmTimeZone> sList = query.getResultList();
      tx.commit();
      PersistenceSessionUtil.closeSession(idf);
     
      if (sList.size() > 0) {
        return sList.get(0);
      }
     
    } catch (Exception ex2) {
      log.error("[getOmTimeZone]: ",ex2);
    }
    return null;
  }
 
  public OmTimeZone getOmTimeZoneById(Long omtimezoneId) {
    try {
      String hql = "select sl from OmTimeZone as sl " +
              "WHERE sl.omtimezoneId = :omtimezoneId";
      Object idf = PersistenceSessionUtil.createSession();
      EntityManager session = PersistenceSessionUtil.getSession();
      EntityTransaction tx = session.getTransaction();
      tx.begin();
      Query query = session.createQuery(hql);
      query.setParameter("omtimezoneId", omtimezoneId);
      List<OmTimeZone> sList = query.getResultList();
      tx.commit();
      PersistenceSessionUtil.closeSession(idf);
     
      if (sList.size() > 0) {
        return sList.get(0);
      }
     
    } catch (Exception ex2) {
      log.error("[getOmTimeZoneById]: ",ex2);
    }
    return null;
  }
 
}
TOP

Related Classes of org.openmeetings.app.data.basic.dao.OmTimeZoneDaoImpl

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.