Package qurtext.factory

Source Code of qurtext.factory.VerseFactory

/* Copyright (C) Abu Rizal, 2009.
*
* This file is part of QurText.
*
* QurText is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* QurText is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with QurText. If not, see <http://www.gnu.org/licenses/>.
*/
package qurtext.factory;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.NoSuchElementException;

import javax.jdo.PersistenceManager;

import qurtext.domain.Verse;

public class VerseFactory {

  @SuppressWarnings("unchecked")
  public List<Verse> getSectionVerseList(int chapterNo, int verseNo, int endVerseNo) {
    PersistenceManager pm = PMF.get().getPersistenceManager();
    try {
      String query = "select from " + Verse.class.getName() + " where chapterNo==" + chapterNo + " && verseNo>=" + verseNo + " && verseNo<=" + endVerseNo;
      List<Verse> resultList = new ArrayList<Verse>();
      resultList.addAll((Collection<Verse>) pm.newQuery(query)
          .execute());
      return resultList;
    } finally {
      pm.close();
    }
  }

  public Verse getBasmallah() {
    PersistenceManager pm = PMF.get().getPersistenceManager();
    try {
      Verse result = getVerse(pm, 1, 1);
      return result;
    } catch (NoSuchElementException e) {
      return null;
    } finally {
      pm.close();
    }
  }

  @SuppressWarnings("unchecked")
  private Verse getVerse(PersistenceManager pm, int chapterNo, int verseNo) {
    String query = "select from " + Verse.class.getName() + " where chapterNo==" + chapterNo + " && verseNo==" + verseNo;
    Verse result = ((Collection<Verse>) pm.newQuery(query)
        .execute()).iterator().next();
    return result;
  }
}
TOP

Related Classes of qurtext.factory.VerseFactory

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.