// Path: src/main/java/com/github/kzwang/osem/annotations/IndexEnum.java
// public enum IndexEnum {
//     /**
//      * Use default value in ElasticSearch
//      */
//     NA,
// 
//     /**
//      * Set "index" to "analyzed"
//      */
//     ANALYZED,
// 
//     /**
//      * Set "index" to "not_analyzed"
//      */
//     NOT_ANALYZED,
// 
//     /**
//      * Set "index" to "no"
//      */
//     NO
// }


import com.github.kzwang.osem.annotations.IndexEnum;
import com.github.kzwang.osem.annotations.IndexableProperties;
import com.github.kzwang.osem.annotations.IndexableProperty;
package com.github.kzwang.osem.model;


public class User {

    @IndexableProperty(index = IndexEnum.NOT_ANALYZED)
    private String userName;

    @IndexableProperties(properties = {
            @IndexableProperty(index = IndexEnum.ANALYZED),
            @IndexableProperty(name = "raw", index = IndexEnum.NOT_ANALYZED)
    })
    private String description;


    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

// Path: src/main/java/com/github/kzwang/osem/annotations/IndexEnum.java
// public enum IndexEnum {
//     /**
//      * Use default value in ElasticSearch
//      */
//     NA,
// 
//     /**
//      * Set "index" to "analyzed"
//      */
//     ANALYZED,
// 
//     /**
//      * Set "index" to "not_analyzed"
//      */
//     NOT_ANALYZED,
// 
//     /**
//      * Set "index" to "no"
//      */
//     NO
// }


// Path: src/test/java/com/github/kzwang/osem/model/User.java
import com.github.kzwang.osem.annotations.IndexEnum;
import com.github.kzwang.osem.annotations.IndexableProperties;
import com.github.kzwang.osem.annotations.IndexableProperty;

package com.github.kzwang.osem.model;


public class User {

    @IndexableProperty(index = IndexEnum.NOT_ANALYZED)
    private String userName;

    @IndexableProperties(properties = {
            @IndexableProperty(index = IndexEnum.ANALYZED),
            @IndexableProperty(name = "raw", index = IndexEnum.NOT_ANALYZED)
    })
    private String description;


    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getDescription() {