package biz.target;
|
|
import java.util.Map.Entry;
|
|
import foundation.data.entity.Entity;
|
import foundation.data.entity.EntitySet;
|
import foundation.data.object.DataObject;
|
import foundation.persist.NamedSQL;
|
import foundation.util.MapList;
|
|
public class TargetDBActions {
|
private MapList<String, EntitySet> targetBatchUpdate;
|
|
public TargetDBActions() {
|
targetBatchUpdate = new MapList<String, EntitySet>();
|
}
|
|
public void addOneActions(String tableName, Entity entity) throws Exception {
|
EntitySet entitySet = targetBatchUpdate.get(tableName);
|
|
if (entitySet == null) {
|
DataObject dataObject = DataObject.getInstance(tableName);
|
entitySet = dataObject.createTableEntitySet();
|
}
|
|
String id = entity.getId();
|
if (entitySet.getEntity(id) != null) {
|
entitySet.delete(id);
|
}
|
|
entitySet.append(entity);
|
targetBatchUpdate.set(tableName, entitySet);
|
}
|
|
public void execute() throws Exception {
|
for (Entry<String, EntitySet> entry : targetBatchUpdate.getItemMap().entrySet()) {
|
String tableName = entry.getKey();
|
EntitySet entitySet = entry.getValue();
|
DataObject dataObject = DataObject.getInstance(tableName);
|
dataObject.batchUpdateEntitySet(entitySet);
|
}
|
}
|
}
|