// Path: uncode-dal/src/main/java/cn/uncode/dal/criteria/Criterion.java
// public enum Condition{
//     IS_NULL(1),
//     IS_NOT_NULL(2),
//     EQUAL(3),
//     NOT_EQUAL(4),
//     GREATER_THAN(5),
//     GREATER_THAN_OR_EQUAL(6),
//     LESS_THAN(7),
//     LESS_THAN_OR_EQUAL(8),
//     LIKE(9),
//     NOT_LIKE(10),
//     IN(11),
//     NOT_IN(12),
//     BETWEEN(13),
//     NOT_BETWEEN(14),
//     SQL(15);
//         
//     public final int type;
//     Condition(int type){
//     	this.type = type;
//     }
//         
//     public int getType(){
//     	return this.type;
//     }
//        
// }


import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import cn.uncode.dal.criteria.Criterion.Condition;
    	return sb.toString();
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }
        
        protected void addCriterion(String sql) {
            if (StringUtils.isEmpty(sql)) {
                throw new RuntimeException("Sql cannot be null");
            }
            criteria.add(new Criterion(sql));
        }
        
// Path: uncode-dal/src/main/java/cn/uncode/dal/criteria/Criterion.java
// public enum Condition{
//     IS_NULL(1),
//     IS_NOT_NULL(2),
//     EQUAL(3),
//     NOT_EQUAL(4),
//     GREATER_THAN(5),
//     GREATER_THAN_OR_EQUAL(6),
//     LESS_THAN(7),
//     LESS_THAN_OR_EQUAL(8),
//     LIKE(9),
//     NOT_LIKE(10),
//     IN(11),
//     NOT_IN(12),
//     BETWEEN(13),
//     NOT_BETWEEN(14),
//     SQL(15);
//         
//     public final int type;
//     Condition(int type){
//     	this.type = type;
//     }
//         
//     public int getType(){
//     	return this.type;
//     }
//        
// }


// Path: uncode-dal/src/main/java/cn/uncode/dal/criteria/QueryCriteria.java
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import cn.uncode.dal.criteria.Criterion.Condition;

    	return sb.toString();
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }
        
        protected void addCriterion(String sql) {
            if (StringUtils.isEmpty(sql)) {
                throw new RuntimeException("Sql cannot be null");
            }
            criteria.add(new Criterion(sql));
        }
        
        protected void addCriterion(Condition condition, String column) {