use of io.requery.query.element.QueryType.INSERT in project requery by requery.
the class EntityDataStore method insert.
@Override
public <K, E extends T> Iterable<K> insert(Iterable<E> entities, @Nullable Class<K> keyClass) {
Iterator<E> iterator = entities.iterator();
if (iterator.hasNext()) {
try (TransactionScope transaction = new TransactionScope(transactionProvider)) {
E entity = iterator.next();
EntityProxy<E> proxy = context.proxyOf(entity, true);
EntityWriter<E, T> writer = context.write(proxy.type().getClassType());
GeneratedKeys<E> keys = writer.batchInsert(entities, keyClass != null);
transaction.commit();
@SuppressWarnings("unchecked") Iterable<K> result = (Iterable<K>) keys;
return result;
}
}
return null;
}