Example usage for com.amazonaws.services.cloudsearchv2.model IndexField setLiteralOptions

List of usage examples for com.amazonaws.services.cloudsearchv2.model IndexField setLiteralOptions

Introduction

In this page you can find the example usage for com.amazonaws.services.cloudsearchv2.model IndexField setLiteralOptions.

Prototype


public void setLiteralOptions(LiteralOptions literalOptions) 

Source Link

Usage

From source file:com.clicktravel.infrastructure.persistence.aws.cloudsearch.manager.IndexDefinitionToIndexFieldMapper.java

License:Apache License

@Override
public IndexField map(final IndexDefinition indexDefinition) {
    if (indexDefinition == null) {
        return null;
    }//from  w  ww.  j a va 2 s  .c  o  m
    final IndexField indexfield = new IndexField().withIndexFieldName(indexDefinition.getName().toLowerCase());
    final boolean searchEnabled = indexDefinition.isSearchEnabled();
    final boolean returnEnabled = indexDefinition.isReturnEnabled();
    final boolean sortEnabled = indexDefinition.isSortEnabled();

    switch (indexDefinition.getFieldType()) {
    case DATETIME:
        indexfield.setIndexFieldType(IndexFieldType.Date);
        final DateOptions dateOptions = new DateOptions().withReturnEnabled(returnEnabled)
                .withSearchEnabled(searchEnabled).withSortEnabled(sortEnabled).withFacetEnabled(false);
        indexfield.setDateOptions(dateOptions);
        return indexfield;
    case DATETIME_ARRAY:
        indexfield.setIndexFieldType(IndexFieldType.DateArray);
        final DateArrayOptions dateArrayOptions = new DateArrayOptions().withReturnEnabled(returnEnabled)
                .withSearchEnabled(searchEnabled).withFacetEnabled(false);
        indexfield.setDateArrayOptions(dateArrayOptions);
        return indexfield;
    case DOUBLE:
        indexfield.setIndexFieldType(IndexFieldType.Double);
        final DoubleOptions doubleOptions = new DoubleOptions().withReturnEnabled(returnEnabled)
                .withSearchEnabled(searchEnabled).withSortEnabled(sortEnabled).withFacetEnabled(false);
        indexfield.setDoubleOptions(doubleOptions);
        return indexfield;
    case DOUBLE_ARRAY:
        indexfield.setIndexFieldType(IndexFieldType.DoubleArray);
        final DoubleArrayOptions doubleArrayOptions = new DoubleArrayOptions().withReturnEnabled(returnEnabled)
                .withSearchEnabled(searchEnabled).withFacetEnabled(false);
        indexfield.setDoubleArrayOptions(doubleArrayOptions);
        return indexfield;
    case INT:
        indexfield.setIndexFieldType(IndexFieldType.Int);
        final IntOptions intOptions = new IntOptions().withReturnEnabled(returnEnabled)
                .withSearchEnabled(searchEnabled).withSortEnabled(sortEnabled).withFacetEnabled(false);
        indexfield.setIntOptions(intOptions);
        return indexfield;
    case INT_ARRAY:
        indexfield.setIndexFieldType(IndexFieldType.IntArray);
        final IntArrayOptions intArrayOptions = new IntArrayOptions().withReturnEnabled(returnEnabled)
                .withSearchEnabled(searchEnabled).withFacetEnabled(false);
        indexfield.setIntArrayOptions(intArrayOptions);
        return indexfield;
    case LATLON:
        indexfield.setIndexFieldType(IndexFieldType.Latlon);
        final LatLonOptions latLonOptions = new LatLonOptions().withReturnEnabled(returnEnabled)
                .withSearchEnabled(searchEnabled).withSortEnabled(sortEnabled).withFacetEnabled(false);
        indexfield.setLatLonOptions(latLonOptions);
        return indexfield;
    case LITERAL:
        indexfield.setIndexFieldType(IndexFieldType.Literal);
        final LiteralOptions literalOptions = new LiteralOptions().withReturnEnabled(returnEnabled)
                .withSearchEnabled(searchEnabled).withSortEnabled(sortEnabled).withFacetEnabled(false);
        indexfield.setLiteralOptions(literalOptions);
        return indexfield;
    case LITERAL_ARRAY:
        indexfield.setIndexFieldType(IndexFieldType.LiteralArray);
        final LiteralArrayOptions literalArrayOptions = new LiteralArrayOptions()
                .withReturnEnabled(returnEnabled).withSearchEnabled(searchEnabled).withFacetEnabled(false);
        indexfield.setLiteralArrayOptions(literalArrayOptions);
        return indexfield;
    case TEXT:
        indexfield.setIndexFieldType(IndexFieldType.Text);
        final TextOptions textOptions = new TextOptions().withReturnEnabled(returnEnabled)
                .withSortEnabled(sortEnabled);
        indexfield.setTextOptions(textOptions);
        return indexfield;
    case TEXT_ARRAY:
        indexfield.setIndexFieldType(IndexFieldType.TextArray);
        final TextArrayOptions textArrayOptions = new TextArrayOptions().withReturnEnabled(returnEnabled);
        indexfield.setTextArrayOptions(textArrayOptions);
        return indexfield;
    default:
        throw new IllegalStateException(String.format("Index field type is unknown. Type received was %s",
                indexDefinition.getFieldType()));
    }
}