All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hmsonline.virgil.QueryParser Maven / Gradle / Ivy

There is a newer version: 1.0.0
Show newest version
//
// Copyright (c) 2012 Health Market Science, Inc.
//
package com.hmsonline.virgil;

import org.apache.commons.lang.StringUtils;

/**
 * @author Isaac Rieksts
 *
 */
public class QueryParser {
  private static final String AND = " AND ";
  private static final String EQ_DELIM = ":";
  
  public static Query parse(String query){
    String [] peaces;
    Query q = new Query();
    if(StringUtils.isBlank(query)) {
      return q;
    }
    
    if(StringUtils.indexOf(query, AND) > -1) {
      peaces = StringUtils.split(query, AND);
    }
    else {
      peaces = new String [] {query};
    }
    
    for(String peace : peaces) {
      if(peace != null && peace.indexOf(EQ_DELIM) > -1) {
        String [] kv = peace.split(EQ_DELIM);
        q.addEq(StringUtils.trim(kv[0]), StringUtils.trim(kv[1]));
      }
    }
    
    return q;
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy