package org.simantics.db.tests.api.story.sessionGarbageCollection; import java.util.ArrayList; import java.util.Collection; import org.simantics.databoard.Bindings; import org.simantics.db.Resource; import org.simantics.db.WriteGraph; import org.simantics.db.common.utils.ListUtils; import org.simantics.db.exception.DatabaseException; import org.simantics.db.layer0.util.SessionGarbageCollection; import org.simantics.db.testing.common.WriteCommand; import org.simantics.layer0.Layer0; import org.simantics.utils.datastructures.collections.CollectionUtils; public class AppendList extends WriteCommand { @Override protected void run(WriteGraph graph, CollectDuringWriteAndRead environment) throws DatabaseException { Layer0 L0 = Layer0.getInstance(graph); Resource root = environment.getRoot(); int listSize = environment.getListSize(); int index = environment.incrementAndGetIndex(); Collection lists = graph.getObjects(root, L0.ConsistsOf); if(lists.size() == 0) return; int position = environment.randomNatural() % lists.size(); Resource r = CollectionUtils.element(lists, position); for(int i=0,index2=0;i<3;i++) { ArrayList rs = new ArrayList(); for(int j=0;j