import pl.edu.icm.synat.api.services.store.StatelessStore import pl.edu.icm.synat.api.services.store.model.RecordConditions import pl.edu.icm.synat.api.services.store.model.batch.operations.BatchOperations import pl.edu.icm.synat.api.services.store.model.batch.operations.RemoveRecord store = serviceUtils.getService('Store', StatelessStore.class) conditions = new RecordConditions() conditions.withTags("dataset:driver") results = store.listRecords(conditions, null, 1000) token = results.getNextToken(); remove(store, results) iter = 1; println "deleted "+ results.getItems().size()*iter while (token!=null) { iter++ results = store.listRecords(conditions, token, 1000) token = results.getNextToken(); remove(store, results) println "deleted "+ results.getItems().size()*iter } def remove(store, results){ def operationsToExecute = new BatchOperations(); for(result in results.getItems()){ operationsToExecute.getOperations().add(new RemoveRecord(result)); } store.executeBatch(operationsToExecute) }