private String batchInfoKey;
private String batchDataKey;
- private StorageObject storage;
- private EntityAdapterDefinition definition;
+ private EntityAdapterModel model;
+ private String definition;
private String whereClause;
private String orderByClause;
private int nrEntitiesToSkip;
public EntityBatchingProducerNode(
String aBatchDataKey,
String aBatchInfoKey,
- StorageObject aStorage,
- EntityAdapterDefinition aDefinition,
+ EntityAdapterModel aModel,
+ String aDefinition,
String aWhereClause,
String anOrderByClause,
int aNrEntitiesPerBatch,
int aMinNrEntitiesInFirstBatch,
int aNrEntitiesToSkip,
ProducerNode aBatchSubNode) {
- this(aBatchDataKey, aBatchInfoKey, aStorage, aDefinition, aWhereClause,
+ this(aBatchDataKey, aBatchInfoKey, aModel, aDefinition, aWhereClause,
anOrderByClause, aNrEntitiesPerBatch, aMinNrEntitiesInFirstBatch, aNrEntitiesToSkip,
aBatchSubNode, null);
}
public EntityBatchingProducerNode(
String aBatchDataKey,
String aBatchInfoKey,
- StorageObject aStorage,
- EntityAdapterDefinition aDefinition,
+ EntityAdapterModel aModel,
+ String aDefinition,
String aWhereClause,
String anOrderByClause,
int aNrEntitiesPerBatch,
batchDataKey = aBatchDataKey;
batchInfoKey = aBatchInfoKey;
- storage = aStorage;
+ model = aModel;
definition = aDefinition;
whereClause = aWhereClause;
orderByClause = anOrderByClause;
batchesData = new Vector();
batchLocations = new Vector();
- nrEntities = storage.getSize(expandedWhereClause)-nrEntitiesToSkip;
+ nrEntities = model.getMappingForName(definition).getStorage().getSize(expandedWhereClause)-nrEntitiesToSkip;
nrEntitiesInFirstBatch = nrEntities % nrEntitiesPerBatch;
while (nrEntitiesInFirstBatch<minNrEntitiesInFirstBatch && nrEntities-nrEntitiesInFirstBatch>=nrEntitiesPerBatch)
nrEntitiesInFirstBatch = nrEntitiesInFirstBatch + nrEntitiesPerBatch;
}
batchData = new HashMap();
- aValueMap.put(batchInfoKey, batchData);
+ ParameterExpander.setValueForKey(aValueMap, batchInfoKey, batchData);
batchData.put("all", batchesData);
batchData.put("first", batchesData.get(0));
batchData.put("last", batchesData.get(batchesData.size()-1));
else
batchData.put("next", null);
- Iterator j = new EntityIteratorAdapter(storage, expandedWhereClause, expandedOrderByClause,
- location.nrEntities, definition, location.nrEntities, location.firstEntity);
+ Iterator j = new EntityIteratorAdapter(expandedWhereClause, expandedOrderByClause,
+ location.nrEntities, model, definition, location.nrEntities, location.firstEntity);
List entities = new Vector();
while (j.hasNext())
entities.add(0, j.next());
- aValueMap.put( batchDataKey, entities );
+ ParameterExpander.setValueForKey(aValueMap, batchDataKey, entities );
batchSubNode.produce(aValueMap, aVerb, aLogger);
}