public List<GenericValue> findByCondition(
     final String entityName,
     final EntityCondition entityCondition,
     final Collection<String> fieldsToSelect,
     final List<String> orderBy) {
   try {
     return delegatorInterface.findByCondition(
         entityName, entityCondition, fieldsToSelect, orderBy);
   } catch (final GenericEntityException e) {
     throw new DataAccessException(e);
   }
 }
 @Override
 public long getCountByAnd(final String entityName, final Map<String, ?> fields) {
   try {
     final EntityCondition condition = new EntityFieldMap(fields, EntityOperator.AND);
     final GenericValue countGV =
         EntityUtil.getOnly(
             delegatorInterface.findByCondition(
                 entityName + "Count", condition, ImmutableList.of(COUNT_FIELD_NAME), null));
     return countGV.getLong(COUNT_FIELD_NAME);
   } catch (final GenericEntityException e) {
     throw new DataAccessException(e);
   }
 }