Example #1
0
  private void initParams(List params) throws ClassNotFoundException {

    NamedParameter param;
    for (Iterator iterator = params.iterator(); iterator.hasNext(); ) {
      String s = (String) iterator.next();

      for (StringTokenizer tokenizer = new StringTokenizer(s, ";"); tokenizer.hasMoreTokens(); ) {
        String name = tokenizer.nextToken();
        String type = tokenizer.nextToken();
        if (name.equalsIgnoreCase("return")) {
          returnType = NamedParameter.createQName(type);
        } else if (name.equalsIgnoreCase("returnClass")) {
          returnClass = ClassHelper.loadClass(type, getClass());
        } else {
          String mode = tokenizer.nextToken();
          QName paramName = (QName) converter.convert(QName.class, name);
          QName qtype = null;
          if (type.startsWith("qname{")) {
            qtype = (QName) converter.convert(QName.class, name);
          } else {
            qtype = NamedParameter.createQName(type);
          }
          param = new NamedParameter(paramName, qtype, mode);
          addNamedParameter(param);
        }
      }
    }
  }
Example #2
0
 /**
  * returns list of entities meeting the specified criteria.
  *
  * @param criterion varargs criterion. (use something like Restrictions.eq(propertyName, value);)
  *     null criterion returns all.
  * @param sortOrder the Order Object. Null value indicates no sort order.
  * @return the non null list.
  * @throws HibernateException if there is an error in persistence
  */
 @Nonnull
 public List<T_ENTITY> listWithJQL(String qlString, NamedParameter... params) {
   List<T_ENTITY> result = null;
   try {
     EntityManager em = getEntityManager();
     begin();
     TypedQuery<T_ENTITY> query = em.createQuery(qlString, entityClass);
     for (NamedParameter param : params) {
       query.setParameter(param.getName(), param.getValue());
     }
     result = query.getResultList();
     commit();
   } finally {
     cleanup();
   }
   return result;
 }
Example #3
0
 /**
  * @param qlString
  * @param params
  * @return
  */
 @Nullable
 public T_ENTITY findOneWithJQL(String qlString, NamedParameter... params) {
   T_ENTITY result = null;
   try {
     EntityManager em = getEntityManager();
     begin();
     TypedQuery<T_ENTITY> query = em.createQuery(qlString, entityClass);
     for (NamedParameter param : params) {
       query.setParameter(param.getName(), param.getValue());
     }
     result = query.getSingleResult();
     commit();
   } catch (Exception e) {
     LOG.info("no entity matching query");
   } finally {
     cleanup();
   }
   return result;
 }
Example #4
0
 protected String buildWhereClause(Operation op, String prefix, NamedParameter param) {
   if (op == Operation.NULL || op == Operation.NOT_NULL) {
     return buildFieldId(prefix, param.getField()) + " " + op.getRepresentation();
   }
   return buildFieldId(prefix, param.getField()) + buildParameterName(op, param.getName());
 }