Package net.mitza.odata.parser

Examples of net.mitza.odata.parser.ParserException


  public static Criteria parseCriteria(String criteria, String value, FieldOperator fieldOperator) {
    try {
      if (BYNARY_TYPE.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new BinaryTypeCriteria(value);
      } else if (ITEM_CREATION_DATE.equals(criteria)) {
        return new ItemCreationDateCriteria(value, fieldOperator);
      } else if (ITEM_INITIAL_PUBLISH_DATE.equals(criteria)) {
        return new ItemInitialPublishDateCriteria(value, fieldOperator);
      } else if (ITEM_LAST_PUBLISHED_DATE.equals(criteria)) {
        return new ItemLastPublishedDateCriteria(value, fieldOperator);
      } else if (ITEM_MODIFICATION_DATE.equals(criteria)) {
        return new ItemModificationDateCriteria(value, fieldOperator);
      } else if (ITEM_REFERENCE.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new ItemReferenceCriteria(Integer.parseInt(value));
      } else if (ITEM_SCHEMA.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new ItemSchemaCriteria(Integer.parseInt(value));
      } else if (ITEM_TITLE.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new ItemTitleCriteria(value);
      } else if (MULTIMEDIA.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new MultimediaCriteria(Boolean.parseBoolean(value));
      } else if (PAGE_TEMPLATE.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new PageTemplateCriteria(Integer.parseInt(value));
      } else if (PAGE_URL.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new PageURLCriteria(value);
      } else if (PUBLICATION.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new PublicationCriteria(Integer.parseInt(value));
      } else if (SCHEMA_TITLE.equals(criteria)) {
        return new SchemaTitleCriteria(value, fieldOperator);

        // Publication stuff
      } else if (PUBLICATION_KEY.equals(criteria)) {
        return new PublicationKeyCriteria(value, fieldOperator);
      } else if (PUBLICATION_MULTIMEDIA_PATH.equals(criteria)) {
        return new PublicationMultimediaPathCriteria(value, fieldOperator);
      } else if (PUBLICATION_MULTIMEDIA_URL.equals(criteria)) {
        return new PublicationMultimediaURLCriteria(value, fieldOperator);
      } else if (PUBLICATION_PATH.equals(criteria)) {
        return new PublicationPathCriteria(value, fieldOperator);
      } else if (PUBLICATION_TITLE.equals(criteria)) {
        return new PublicationTitleCriteria(value, fieldOperator);
      } else if (PUBLICATION_URL.equals(criteria)) {
        return new PublicationURLCriteria(value, fieldOperator);

        // Structure Group stuff
      } else if (STRUCTURE_GROUP.equals(criteria)) {
        return new StructureGroupCriteria(value);
      } else if (STRUCTURE_GROUP_DIRECTORY.equals(criteria)) {
        return new StructureGroupDirectoryCriteria(value, fieldOperator);
      } else if (STRUCTURE_GROUP_TITLE.equals(criteria)) {
        return new StructureGroupTitleCriteria(value, fieldOperator);

        // Taxonomy stuff
      } else if (TAXONOMY.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new TaxonomyCriteria(value);
      } else if (TAXONOMY_USED_FOR_IDENTIFICATION.equals(criteria)) {
        if (fieldOperator != FieldOperator.EQUAL) {
          throw new ParserException("Illegal FieldOperator " + fieldOperator + " for criteria " + criteria);
        }
        return new TaxonomyUsedForIdentificationCriteria(Boolean.parseBoolean(value));

        // Custom meta stuff
      } else if (CUSTOM_META_KEY.equals(criteria)) {
        return new CustomMetaKeyCriteria(value, fieldOperator);
      } else if (CUSTOM_META_VALUE.equals(criteria)) {
        return new CustomMetaValueCriteria(value, fieldOperator);
      }
    } catch (NumberFormatException nfe) {
      String messsage = "NumberFormatException occurred: " + nfe.getMessage();
      log.error(messsage, nfe);
      throw new ParserException(messsage, nfe);
    } catch (CriteriaException ce) {
      String messsage = "CriteriaException occurred: " + ce.getMessage();
      log.error(messsage, ce);
      throw new ParserException(messsage, ce);
    }
    throw new ParserException("Unknown criteria " + criteria);
  }
View Full Code Here


      }
    } catch (IndexOutOfBoundsException ioobe) {
      String messsage = "Wrong number of parameters for function " + function +
          ". IndexOutOfBoundsException occurred: " + ioobe.getMessage();
      log.error(messsage, ioobe);
      throw new ParserException(messsage, ioobe);
    } catch (CriteriaException ce) {
      String messsage = "Exception occurred while creating Criteria for function " + function + ". " +
          ce.getMessage();
      log.error(messsage, ce);
      throw new ParserException(messsage, ce);
    }

    if (builder == null) {
      throw new ParserException("Unknown function " + function);
    } else {
      return builder.getCriteria();
    }
  }
View Full Code Here

TOP

Related Classes of net.mitza.odata.parser.ParserException

Copyright © 2018 www.massapicom. 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.