/******************************************************************************* * Copyright (c) 2008, 2015 IBM Corporation and others. * 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: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.help.server; import org.eclipse.core.runtime.CoreException; /** * @since 3.4 * Abstract class representing a web server which can be used to host the Eclipse help * system using the extension point org.eclipse.help.base.server. Classes extending this * abstract class must be capable of launching a Web Server and */ public abstract class HelpServer { /** * Start a server application to host the Eclipse help system. The server is * responsible for initializing the servlets, jsp files and other resources * for the help system as defined by the extension points <code>org.eclipse.equinox.http.registry.resources</code> * and <code>org.eclipse.equinox.http.registry.servlets</code> for the httpcontextId * <code>org.eclipse.help.webapp.help</code> * @param webappName The name of this web application * @throws Exception */ public abstract void start(String webappName) throws Exception; /** * Stop a server application. If an application of this name has not been started do nothing * @param webappName the name of a running web application * @throws CoreException */ public abstract void stop(String webappName) throws CoreException ; /** * Returns the port number the app server listens on * @return integer port number, 0 if server not started */ public abstract int getPort(); /** * Returns the host name or ip the app server runs on. * * @return String representation of host name of IP, null if server not * started yet */ public abstract String getHost(); }