/******************************************************************************* * Copyright (c) 2011-2016 Medevit OG, Medelexis AG * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Marco Descher, initial API and implementaion * Lucia Amman, bug fixes and improvements * Sponsors: M. + P. Richter *******************************************************************************/ package at.medevit.elexis.gdt; import java.io.File; import java.util.List; import org.eclipse.ui.IStartup; import at.medevit.elexis.gdt.constants.SystemConstants; import at.medevit.elexis.gdt.interfaces.IGDTCommunicationPartner; import at.medevit.elexis.gdt.tools.DirectoryWatcher; import at.medevit.elexis.gdt.tools.GDTCommPartnerCollector; import ch.elexis.core.ui.util.Log; public class EarlyStartup implements IStartup { private static Log logger = Log.get(EarlyStartup.class.getName()); @Override public void earlyStartup(){ List<IGDTCommunicationPartner> lp = GDTCommPartnerCollector.getRegisteredCommPartners(); if (lp == null) { logger.log("There are no registered communication partners", Log.DEBUGMSG); return; } for (IGDTCommunicationPartner igdtCommunicationPartner : lp) { if (igdtCommunicationPartner.getConnectionType() == SystemConstants.FILE_COMMUNICATION) { String incomingDirString = igdtCommunicationPartner.getIncomingDirectory(); logger.log("Found directory " + incomingDirString + "to watch by comm partner " + igdtCommunicationPartner.getLabel(), Log.DEBUGMSG); File incomingDir = null; if (incomingDirString != null) incomingDir = new File(incomingDirString); if (incomingDir != null && incomingDir.isDirectory()) DirectoryWatcher.getInstance().addDirectoryToWatch(incomingDir); } } } }