view src/main/java/org/mpi/openmind/scripts/StabiCollection.java @ 90:4b6c0b368f46

new UpdateMpiwgDigitalizations script.
author Robert Casties <casties@mpiwg-berlin.mpg.de>
date Tue, 29 May 2018 21:15:06 +0200
parents 615d27dce9b3
children
line wrap: on
line source

package org.mpi.openmind.scripts;

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.mpi.openmind.cache.WrapperService;
import org.mpi.openmind.repository.bo.Attribute;
import org.mpi.openmind.repository.bo.Entity;
import org.mpi.openmind.repository.services.ServiceRegistry;
import org.mpi.openmind.repository.services.utils.AttributeFilter;

public class StabiCollection {

	public static String file = "/Users/jurzua/Projects/ISMI/workspace/ismi-richfaces/docs/canada/publicView/stabi_codices.txt";
	
	public static void execute(WrapperService ws){
		
		System.out.println("#### StabiCollection #### StabiCollection");
		
		for(String value : getValuesFromFile()){
			List<AttributeFilter> filterList = new ArrayList<AttributeFilter>();
			filterList.add(new AttributeFilter("name", value, "DIGITALIZATION"));
			Map<Entity, Attribute> resultMap = ws.searchEntityByAttributeFilter(filterList, 1);
			Entity digi = resultMap.keySet().iterator().next();
			
			
			
			List<Entity> tmp = ws.getTargetsForSourceRelation(digi, "is_digitalization_of", "CODEX", 1);
			Entity codex = tmp.get(0);
			//System.out.println(codex.getId() + "\t" +  digi.getId());
			//System.out.println("codexIdList.add(new Long("+ codex.getId() +"));");
			System.out.print(codex.getId() + ",");
		}
		
	}
	
	public static List<String> getValuesFromFile(){
		List<String> rs = new ArrayList<String>();
		
		try {
			FileReader a = new FileReader(file);
	        BufferedReader br = new BufferedReader(a);
	        String line;
	        line = br.readLine();

	        while((line = br.readLine()) != null) {
	        	rs.add(line);
	        }			
	        
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		return rs;
	}
	
	
	public static void main(String[] args) {
	
		ServiceRegistry sr = new ServiceRegistry();
		execute(sr.getWrapper());
		
		System.exit(0);
	}

}