001    /*
002     * ----------------------------------------------------------------------
003     * Copyright (C) 2009 Enrique Lara (k957@68k.org)
004     *
005     * TinLizard is free software; you can redistribute it and/or
006     * modify it under the terms of the GNU Lesser General Public License
007     * as published by the Free Software Foundation; either version 3.0
008     * of the License, or (at your option) any later version.
009     *
010     * TinLizard is distributed in the hope that it will be useful,
011     * but WITHOUT ANY WARRANTY; without even the implied warranty of
012     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
013     * GNU Lesser General Public License for more details.
014     *
015     * You should have received a copy of the GNU Lesser General Public License
016     * along with TinLizard. If not, see http://www.gnu.org/licenses/.
017     * ----------------------------------------------------------------------
018     */
019    package tinlizard.web;
020    
021    import org.kohsuke.stapler.framework.AbstractWebAppMain;
022    
023    //https://stapler.dev.java.net/getting-started.html
024    /**
025     * Entry point from Stapler into TinLizard.
026     */
027    public final class WebAppMain extends AbstractWebAppMain<TinLizardWeb> {
028        public WebAppMain() {
029            super(TinLizardWeb.class);
030        }
031    
032        protected String getApplicationName() {
033            return "TinLizard";
034        }
035    
036        protected Object createApplication() throws Exception {
037            TinLizardWeb.getInstance().startup(this.home.getAbsolutePath());
038    
039            return TinLizardWeb.getInstance();
040        }
041    
042        protected void cleanUp(final TinLizardWeb app) {
043            TinLizardWeb.getInstance().shutdown();
044        }
045    }