public DefaultBatchDeleteCommand(Dao dao,EntityMapping em,Object[] ids) { super(dao,em); this.idObjectArray = ids; this.idParameters = new Params[idObjectArray.length]; for(int i=0;i<idObjectArray.length;i++){ idParameters[i] = context.getParameterStrategy().createIdParameters(context, em, idObjectArray[i]); } }
public DefaultExistsCommand(Dao dao, EntityMapping em, Object id) { super(dao, em, SqlCommand.EXISTS_COMMAND); this.idParameters = context.getParameterStrategy().createIdParameters(context, em, id); }
public DefaultFindCommand(Dao dao, EntityMapping em, Object id, Class<T> resultClass, boolean checkNotFound) { super(dao,em); this.resultClass = resultClass; this.sqlCommand = metadata.getSqlCommand(em.getEntityName(), SqlCommand.FIND_COMMAND_NAME); this.id = id; this.idParameters = context.getParameterStrategy().createIdParameters(context, em, id); this.checkNotFound = checkNotFound; }
protected void createCompositeIdCommand() { MapParams p = new MapParams(); List<Params> ps = new ArrayList<Params>(); for(Object id : ids) { if(id != null) { ps.add(context.getParameterStrategy().createIdParameters(context, em, id)); } } String sql = createCompositeFindListSql(p, ps); this.sqlCommand = context.getSqlFactory().createSqlCommand(context, sql); this.idParameters = p; }
protected Params createParameters(SqlContext context, Object params){ ParamsFactory factory = context.getOrmContext().getParameterStrategy(); if(null == params){ return EmptyParams.INSTANCE; } if(!params.getClass().isArray()){ return factory.createParams(params); } Object[] values = Objects2.toObjectArray(params); if(values.length == 1){ return factory.createParams(values[0]); } return new ArrayParams(values); }
protected void id(Object id){ Args.notNull(id,"id"); params().putAll(context.getParameterStrategy().createIdParameters(context, em, id).map()); }
public DefaultDeleteCommand(Dao dao,EntityMapping em,Object id) { super(dao,em); this.eventHandler = context.getEntityEventHandler(); this.primaryCommand = metadata.getSqlCommand(em.getEntityName(), SqlCommand.DELETE_COMMAND_NAME); this.id = id; this.idParameter = context.getParameterStrategy().createIdParameters(context, em, id); }
protected void prepareIdAndSerialization(Object id, Map<String,Object> fields) { if(null != id) { String[] keyNames = em.getKeyFieldNames(); if(keyNames.length == 1){ fields.put(keyNames[0],id); }else{ Params idParams = context.getParameterStrategy().createIdParameters(context, em, id); for(int i=0;i<keyNames.length;i++){ fields.put(keyNames[i], idParams.get(keyNames[i])); } } } //Serialize field(s). for(FieldMapping fm : em.getFieldMappings()){ if(null != fm.getSerializer()) { Object value = fields.get(fm.getFieldName()); Object encoded = fm.getSerializer().trySerialize(fm, value); if(encoded != value) { fields.put(fm.getFieldName(), encoded); } } } } }
@Override public CriteriaWhere<T> id(Object id) { EntityMapping em = q.getEntityMapping(); if(em.getKeyFieldNames().length == 1) { return name(em.getKeyFieldNames()[0]).eq(id); } if(em.getKeyFieldNames().length > 0) { Params params = c.getParameterStrategy().createIdParameters(c, em, id); for(int i=0;i<em.getKeyFieldNames().length;i++) { if(i > 0) { and(); } String name = em.getKeyFieldNames()[i]; name(em.getKeyFieldNames()[i]).eq(params.get(name)); } return this; } throw new IllegalStateException("No id column(s) in entity '" + em.getEntityName() + "'"); }