package org.gcube.portal; import java.util.ArrayList; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.liferay.portal.kernel.events.ActionException; import com.liferay.portal.kernel.events.SimpleAction; import com.liferay.portal.model.VirtualHost; import com.liferay.portal.service.VirtualHostLocalServiceUtil; public class ServletTrigger extends SimpleAction { private static final Logger _log = LoggerFactory.getLogger(ServletTrigger.class); private final String PROTOCOL = "https://"; /* (non-Java-doc) * @see com.liferay.portal.kernel.events.SimpleAction#SimpleAction() */ public ServletTrigger() { super(); } /* (non-Java-doc) * @see com.liferay.portal.kernel.events.SimpleAction#run(String[] arg0) */ public void run(String[] arg0) throws ActionException { try { List urlsToContact = getVirtualHostURLs(); GetCaller gc = new GetCaller(urlsToContact); gc.start(); } catch (Exception e) { e.printStackTrace(); } } /** * I am containg the same servlet for each vHost * @return */ private List getVirtualHostURLs() { _log.info("MAIL_PARSER STARTING ... getVirtualHostURLs() "); List toReturn = new ArrayList(); List vHosts = null; try { vHosts = VirtualHostLocalServiceUtil.getVirtualHosts(0, VirtualHostLocalServiceUtil.getVirtualHostsCount()); for (VirtualHost virtualHost : vHosts) { if (virtualHost.getHostname().compareTo("localhost") != 0 && virtualHost.getLayoutSetId() != 0) { String hostToContact = PROTOCOL+virtualHost.getHostname(); toReturn.add(hostToContact); _log.info("Added host to contact: " + hostToContact); } } } catch (Exception e) { e.printStackTrace(); } return toReturn; } }