import pl.edu.icm.model.bwmeta.y.constants.HierarchyWithLevelIds import pl.edu.icm.synat.api.services.store.StatelessStore import pl.edu.icm.synat.api.services.store.events.RecordEditedEvent import pl.edu.icm.synat.api.services.store.model.RecordConditions import pl.edu.icm.synat.api.services.store.model.RecordId import pl.edu.icm.synat.events.Event import pl.edu.icm.synat.events.EventBus store = serviceUtils.getService('Store', StatelessStore.class) eventBus = serviceUtils.getService('store.recordEvent', EventBus.class,"jms") conditions = new RecordConditions() conditions.withTags("hierarchyLevel:bwmeta1.hierarchy-class.hierarchy_Journal=bwmeta1.level.hierarchy_Journal_Journal") //results = store.listRecordContents(conditions, "bwmeta1.element.springer-000000040702", 1000) //w springerze czasopisma zaczynaja siÄ™ jakos po tym tokenie results = store.listRecordContents(conditions, null, 1000) token = results.getNextToken(); types = new ArrayList(); bwmetaDeserializer = new pl.edu.icm.synat.application.model.bwmeta.utils.BWMetaDeserializerImpl() recordBwmetaExtractor = new pl.edu.icm.synat.logic.model.utils.impl.RecordBwmetaExtractorImpl(bwmetaDeserializer) iter =1; check(results) println token while (token!=null) { results = store.listRecordContents(conditions, token, 1000) token = results.getNextToken(); check(results) } def check(results){ for(result in results.getItems()){ def element = recordBwmetaExtractor.extractElement(result); if(element!=null){ def struct = element.getStructure(HierarchyWithLevelIds.EXT_HIERARCHY_JOURNAL) if(struct!=null && HierarchyWithLevelIds.EXT_LEVEL_JOURNAL_JOURNAL.equals(struct.getCurrent().getLevel())){ println element.getId() final Event event = new RecordEditedEvent(new Date(), 'Store', new RecordId(element.getId()), false, null); eventBus.reportEvent(event); } } } print iter++ +" " }