@Override protected Object getParameterValue(SqlStatementBuilder stm, Params params) { return params.get(name); } }
@Override public Map<String, Object> toMap() { return params.map(); }
@Override public <T extends EntityBase> T set(String field, Object value) { params.set(field, value); return (T)this; }
@Override public SqlValue getValue(SqlContext context, Params parameters) { Object v; if(parameters.isArray()) { v = parameters.get(index); }else { v = parameters.get(name); } if(null == v && null != defaultValue) { v = defaultValue.getValue(context, parameters.map()); return SqlValue.generated(trySerialize(v)); }else{ return SqlValue.of(trySerialize(v)); } }
protected boolean test(Params params) { for(NamedParamNode n : paramNodes) { if(nullable) { if(!params.contains(n.getName())) { return false; } }else { Object v = params.get(n.getName()); if(null == v) { return false; } } /* if(v instanceof CharSequence && ((CharSequence) v).length() == 0) { return false; } */ } return true; }
if(null == writeGeneratedValue && !parameters.isReadonly()) { writeGeneratedValue = true; parameters.set(name, v.get());
@Override public boolean contains(String field) { return params.contains(field); }
@Override public BatchSqlStatement createBatchStatement(SqlContext context, Object[] params) { DynamicSql.ExecutionSqls sqls = sql.resolveExecutionSqls(context, Params.empty());
@Override protected Object getParameterValue(SqlStatementBuilder stm, Params params) { return params.get(name); }
@Override public Set<String> getFieldNames() { return params.map().keySet(); }
@Override public Params set(String name, Object value) { super.set(name, value); for(int i=0;i<list.size();i++){ list.get(i).set(name, value); } return this; } }
@Override public Object get(String field) { return params.get(field); }
public CompositeParams add(Params parameters){ if(null != parameters){ map.putAll(parameters.map()); list.add(parameters); } return this; }
public CriteriaWhere<T> param(String name, Object p) { Assert.notNull(this.name,"Parameter name must be specified before setting parameter value"); String pname = null == name ? this.name : name; append(":" + pname); params.set(pname, p); this.name = null; this.op = null; return this; }
@Override public boolean resolveDynamic(SqlContext context, Sql sql, Appendable buf, Params params) throws IOException { Object v = params.get(name); if(null != v) { String s = v.toString(); if(s.length() > 0) { buf.append(s); return true; } } return false; }
@SuppressWarnings({ "unchecked", "rawtypes" }) public Map<String, Object> toMap(Object object) throws InvalidParametersException { if(null == object){ throw new InvalidParameterException("Cannot convert null to map"); } if(object instanceof Map){ return ((Map)object); }else if(object instanceof Params){ return ((Params)object).map(); } if(Beans.isSimpleProperty(object.getClass())){ throw new InvalidParameterException("Cannot convert value of simple type '" + object.getClass().getName() + "' to map"); } return Beans.toMap(object); }