diff src/de/mpiwg/anteater/events/EventController.java @ 0:036535fcd179

anteater
author jdamerow
date Fri, 14 Sep 2012 10:30:43 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/de/mpiwg/anteater/events/EventController.java	Fri Sep 14 10:30:43 2012 +0200
@@ -0,0 +1,44 @@
+package de.mpiwg.anteater.events;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import de.mpiwg.anteater.AnteaterConfiguration;
+import de.mpiwg.anteater.events.processors.EventCreatorProcessor;
+import de.mpiwg.anteater.events.processors.IEventProcessor;
+import de.mpiwg.anteater.events.processors.PermitOrApplicantEventProcessor;
+import de.mpiwg.anteater.results.ResultsCarrier;
+import de.mpiwg.anteater.xml.impl.EventXMLManager;
+
+public class EventController {
+	
+	private List<IEventProcessor> processors;
+	private AnteaterConfiguration configuration;
+	
+	public EventController(AnteaterConfiguration configuration) {
+		processors = new ArrayList<IEventProcessor>();
+		processors.add(new EventCreatorProcessor());
+		processors.add(new PermitOrApplicantEventProcessor());
+		this.configuration = configuration;
+	}
+
+	public void createEvents(List<ResultsCarrier> results) {
+		
+		for (ResultsCarrier carrier : results) {
+			List<ResearchEvent> events = new ArrayList<ResearchEvent>();
+			
+			for (IEventProcessor processor : processors) {
+				processor.processEvents(events, carrier);
+			}
+			
+			File textfile = new File(carrier.getTextInfo().getFilepath());
+			String resultFile = configuration.getEventFolderPath()  + File.separator + textfile.getName();
+			EventXMLManager eventManager = new EventXMLManager(resultFile);
+			
+			for (ResearchEvent event : events) {
+				eventManager.addEvent(event);
+			}
+		}
+	}
+}