Package com.esri.gpt.catalog.discovery

Examples of com.esri.gpt.catalog.discovery.PropertyValueType


    Timestamp tsValue = null;
    if (value instanceof Timestamp) {
      tsValue = (Timestamp)value;
    } else if (value instanceof String) {
      try {
        PropertyValueType valueType = PropertyValueType.TIMESTAMP;
        tsValue = (Timestamp)valueType.evaluate((String)value);
      } catch (IllegalArgumentException e) {}     
    }
    if (tsValue != null) {
      boolean bIndex = !this.getIndexingOption().equals(Field.Index.NO);
      NumericField fld = new NumericField(this.getName(),this.getStorageOption(),bIndex);
View Full Code Here


                                 boolean lowerBoundaryIsInclusive,
                                 boolean upperBoundaryIsInclusive)
    throws DiscoveryException {
    literalLowerValue = Val.chkStr(literalLowerValue);
    literalUpperValue = Val.chkStr(literalUpperValue);
    PropertyValueType valueType = PropertyValueType.TIMESTAMP;
    Long lLower = null;
    Long lUpper = null;
    if (literalLowerValue.length() > 0) {
      try {
        Timestamp ts = (Timestamp)valueType.evaluate(literalLowerValue,true,false);
        if (ts != null) lLower = ts.getTime();
      } catch (NumberFormatException e) {
        throw new DiscoveryException("Invalid Timestamp: "+literalLowerValue);
      }
    }
    if (literalUpperValue.length() > 0) {
      try {
        Timestamp ts = (Timestamp)valueType.evaluate(literalUpperValue,false,true);
        if (ts != null) lUpper = ts.getTime();
      } catch (NumberFormatException e) {
        throw new DiscoveryException("Invalid Timestamp: "+literalUpperValue);
      }
    }
View Full Code Here

  protected String makeValueToQuery(String value,
                                    boolean isLowerBoundary,
                                    boolean isUpperBoundary)
    throws DiscoveryException {
    try {
      PropertyValueType valueType = PropertyValueType.TIMESTAMP;
      Timestamp tsValue = (Timestamp)valueType.evaluate(
          value,isLowerBoundary,isUpperBoundary);
      if (tsValue == null) return null;
     
      if (isLowerBoundary) {
        LOGGER.finer("Lower boundary timestamp to query: "+tsValue);
View Full Code Here

       
      } else if (clause instanceof PropertyClause) {
        PropertyClauseAdapter adapter = new PropertyClauseAdapter(getQueryAdapter());
        PropertyClause subClause = (PropertyClause)clause;
        if ((subClause.getTarget() != null) && (subClause.getTarget().getMeaning() != null)) {
          PropertyValueType pvt = subClause.getTarget().getMeaning().getValueType();
          if ((pvt != null) && pvt.equals(PropertyValueType.TIMEPERIOD)) {
            adapter = new TimeperiodClauseAdapter(getQueryAdapter());
          }
        }
        adapter.adaptPropertyClause(activeBooleanQuery,logicalClause,subClause);
       
View Full Code Here

    Storeable storable = null;
   
    String fieldName = meaning.getName();
    PropertyMeaningType meaningType = meaning.getMeaningType();
    PropertyComparisonType comparisonType = meaning.getComparisonType();
    PropertyValueType valueType = meaning.getValueType();
   
    if (meaning instanceof PropertyMeaning.AnyText) {
      PropertyMeaning.AnyText anyText = (PropertyMeaning.AnyText)meaning;
      storable = new AnyTextProperty(fieldName,anyText.getNamesToConsider());

    } else if (comparisonType.equals(PropertyComparisonType.ANYTEXT)) {
      storable = new AnyTextProperty(fieldName,new StringSet());
     
    } else if (fieldName.equalsIgnoreCase("body")) {
      storable = new Storeable(fieldName);
      DatastoreField field = new DatastoreField(fieldName,
          Field.Store.NO,Field.Index.ANALYZED,Field.TermVector.NO);
      storable.getFields().add(field);
           
    } else if (comparisonType.equals(PropertyComparisonType.KEYWORD)) {
      storable = new Storeable(fieldName);
      storable.setComparisonField(new LowerCaseField(fieldName));
      storable.setRetrievalField(new ReferenceField(fieldName+".ref"));
      storable.getFields().add(storable.getComparisonField());
      storable.getFields().add(storable.getRetrievalField());
     
    } else if (!meaningType.equals(PropertyMeaningType.DATEMODIFIED) &&
                valueType.equals(PropertyValueType.TIMESTAMP)) {
      storable = new Storeable(fieldName);
      storable.setComparisonField(new TimestampField(fieldName));
      storable.setTermsField(new TermsField(fieldName+".input"));
      storable.getFields().add(storable.getComparisonField());
      storable.getFields().add(storable.getTermsField());
      storable.setRetrievalField(storable.getComparisonField());
     
    } else if (comparisonType.equals(PropertyComparisonType.VALUE)) {
      DatastoreField field = null;
     
      if (valueType.equals(PropertyValueType.DOUBLE)) {
        field = new DoubleField(fieldName,DoubleField.DEFAULT_PRECISION);
       
      } else if (valueType.equals(PropertyValueType.GEOMETRY)) {
        storable = new GeometryProperty(fieldName);

      } else if (valueType.equals(PropertyValueType.TIMEPERIOD)) {
        storable = new TimeperiodProperty(fieldName);
       
      } else if (valueType.equals(PropertyValueType.LONG)) {
        field = new LongField(fieldName);
       
      } else if (valueType.equals(PropertyValueType.STRING)) {
        field = new DatastoreField(fieldName,
                    Field.Store.YES,Field.Index.NOT_ANALYZED,Field.TermVector.NO);
       
      } else if (valueType.equals(PropertyValueType.TIMESTAMP)) {
        field = new TimestampField(fieldName);
       
      } else {
       
        // TODO issue warning here (value type not recognized)
View Full Code Here

    Double dValue = null;
    if (value instanceof Double) {
      dValue = (Double)value;
    } else if (value instanceof String) {
      try {
        PropertyValueType valueType = PropertyValueType.DOUBLE;
        dValue = (Double)valueType.evaluate((String)value);
      } catch (IllegalArgumentException e) {}     
    }
    if (dValue != null) {
      boolean bIndex = !this.getIndexingOption().equals(Field.Index.NO);
      NumericField fld = new NumericField(this.getName(),this.getStorageOption(),bIndex);
View Full Code Here

                                 boolean lowerBoundaryIsInclusive,
                                 boolean upperBoundaryIsInclusive)
    throws DiscoveryException {
    literalLowerValue = Val.chkStr(literalLowerValue);
    literalUpperValue = Val.chkStr(literalUpperValue);
    PropertyValueType valueType = PropertyValueType.DOUBLE;
    Double dLower = null;
    Double dUpper = null;
    if (literalLowerValue.length() > 0) {
      try {
        dLower = (Double)valueType.evaluate(literalLowerValue);
      } catch (NumberFormatException e) {
        throw new DiscoveryException("Invalid Double: "+literalLowerValue);
      }
    }
    if (literalUpperValue.length() > 0) {
      try {
        dUpper = (Double)valueType.evaluate(literalUpperValue);
      } catch (NumberFormatException e) {
        throw new DiscoveryException("Invalid Double: "+literalUpperValue);
      }
    }
    if ((dLower == null) && (dUpper == null)) {
View Full Code Here

  protected String makeValueToQuery(String value,
                                    boolean isLowerBoundary,
                                    boolean isUpperBoundary)
    throws DiscoveryException {
    try {
      PropertyValueType valueType = PropertyValueType.DOUBLE;
      Double dValue = (Double)valueType.evaluate(value);
      return NumericUtils.doubleToPrefixCoded(dValue);
    } catch (NumberFormatException e) {
      throw new DiscoveryException("Invalid Double: "+value);
    }
  }
View Full Code Here

    Long lValue = null;
    if (value instanceof Long) {
      lValue = (Long)value;
    } else if (value instanceof String) {
      try {
        PropertyValueType valueType = PropertyValueType.LONG;
        lValue = (Long)valueType.evaluate((String)value);
      } catch (IllegalArgumentException e) {}     
    }
    if (lValue != null) {
      boolean bIndex = !this.getIndexingOption().equals(Field.Index.NO);
      NumericField fld = new NumericField(this.getName(),this.getStorageOption(),bIndex);
View Full Code Here

                                 boolean lowerBoundaryIsInclusive,
                                 boolean upperBoundaryIsInclusive)
    throws DiscoveryException {
    literalLowerValue = Val.chkStr(literalLowerValue);
    literalUpperValue = Val.chkStr(literalUpperValue);
    PropertyValueType valueType = PropertyValueType.LONG;
    Long lLower = null;
    Long lUpper = null;
    if (literalLowerValue.length() > 0) {
      try {
        lLower = (Long)valueType.evaluate(literalLowerValue);
      } catch (NumberFormatException e) {
        throw new DiscoveryException("Invalid Long: "+literalLowerValue);
      }
    }
    if (literalUpperValue.length() > 0) {
      try {
        lUpper = (Long)valueType.evaluate(literalUpperValue);
      } catch (NumberFormatException e) {
        throw new DiscoveryException("Invalid Long: "+literalUpperValue);
      }
    }
    if ((lLower == null) && (lUpper == null)) {
View Full Code Here

TOP

Related Classes of com.esri.gpt.catalog.discovery.PropertyValueType

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.