Clover coverage report - Ledge Web - SNAPSHOT
Coverage timestamp: Fri Nov 17 2006 05:20:55 CET
file stats: LOC: 73   Methods: 2
NCLOC: 23   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
MVCInitializerValve.java - 100% 100% 100%
coverage
 1    //
 2    // Copyright (c) 2003, Caltha - Gajda, Krzewski, Mach, Potempski Sp.J.
 3    // All rights reserved.
 4    //
 5    // Redistribution and use in source and binary forms, with or without modification,
 6    // are permitted provided that the following conditions are met:
 7    //
 8    // * Redistributions of source code must retain the above copyright notice,
 9    // this list of conditions and the following disclaimer.
 10    // * Redistributions in binary form must reproduce the above copyright notice,
 11    // this list of conditions and the following disclaimer in the documentation
 12    // and/or other materials provided with the distribution.
 13    // * Neither the name of the Caltha - Gajda, Krzewski, Mach, Potempski Sp.J.
 14    // nor the names of its contributors may be used to endorse or promote products
 15    // derived from this software without specific prior written permission.
 16    //
 17    // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 18    // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 19    // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 20    // IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
 21    // INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 22    // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
 23    // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 24    // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 25    // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 26    // POSSIBILITY OF SUCH DAMAGE.
 27    //
 28   
 29    package org.objectledge.web.mvc;
 30   
 31    import org.objectledge.context.Context;
 32    import org.objectledge.parameters.Parameters;
 33    import org.objectledge.parameters.RequestParameters;
 34    import org.objectledge.pipeline.Valve;
 35    import org.objectledge.web.WebConfigurator;
 36   
 37    /**
 38    * Pipeline processing valve that initializes the MVC parameters (view and action) by means of the
 39    * {@link org.objectledge.web.mvc.MVCContext} object.
 40    *
 41    * @author <a href="mailto:pablo@caltha.pl">Pawel Potempski</a>
 42    * @version $Id: MVCInitializerValve.java,v 1.9 2005/07/22 17:25:50 pablo Exp $
 43    */
 44    public class MVCInitializerValve
 45    implements Valve
 46    {
 47    /** the web configuration component */
 48    private WebConfigurator webConfigurator;
 49   
 50    /**
 51    * Constructor.
 52    *
 53    * @param webConfigurator the web configuration component.
 54    */
 55  828 public MVCInitializerValve(WebConfigurator webConfigurator)
 56    {
 57  828 this.webConfigurator = webConfigurator;
 58    }
 59   
 60    /**
 61    * Run the pipeline valve - initialize and store the pipeline context.
 62    *
 63    * @param context the context.
 64    */
 65  828 public void process(Context context)
 66    {
 67  828 MVCContext mvcContext = new MVCContext();
 68  828 Parameters requestParamters = RequestParameters.getRequestParameters(context);
 69  828 mvcContext.setAction(requestParamters.get(webConfigurator.getActionToken(), null));
 70  828 mvcContext.setView(requestParamters.get(webConfigurator.getViewToken(), null));
 71  828 context.setAttribute(MVCContext.class, mvcContext);
 72    }
 73    }