You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2005/03/24 17:50:16 UTC

cvs commit: jakarta-tapestry/config log4j.properties

hlship      2005/03/24 08:50:16

  Modified:    framework/src/java/org/apache/tapestry/services/impl
                        RequestCycleFactoryImpl.java
               framework/src/java/org/apache/tapestry
                        ApplicationServlet.java IRequestCycle.java
                        TapestryMessages.java TapestryStrings2.properties
               framework/src/descriptor/META-INF tapestry.request.xml
               framework/src/java/org/apache/tapestry/engine
                        AbstractEngine.java RequestCycle.java
               framework/src/java/org/apache/tapestry/services
                        RequestCycleFactory.java
               config   log4j.properties
  Added:       framework/src/test/org/apache/tapestry/request
                        TestRequestContext.java
               framework/src/java/org/apache/tapestry/request
                        RequestContext.java
               framework/src/java/org/apache/tapestry/engine
                        RequestCycleEnvironment.java
               framework/src/test/org/apache/tapestry/engine
                        TestRequestCycle.java
  Log:
  Restore the missing RequestContext class, for compatibility reasons.
  
  Revision  Changes    Path
  1.8       +36 -3     jakarta-tapestry/framework/src/java/org/apache/tapestry/services/impl/RequestCycleFactoryImpl.java
  
  Index: RequestCycleFactoryImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/services/impl/RequestCycleFactoryImpl.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- RequestCycleFactoryImpl.java	10 Mar 2005 18:49:15 -0000	1.7
  +++ RequestCycleFactoryImpl.java	24 Mar 2005 16:50:15 -0000	1.8
  @@ -16,6 +16,9 @@
   
   import java.util.Iterator;
   
  +import javax.servlet.http.HttpServletRequest;
  +import javax.servlet.http.HttpServletResponse;
  +
   import org.apache.hivemind.ErrorHandler;
   import org.apache.tapestry.IEngine;
   import org.apache.tapestry.IRequestCycle;
  @@ -24,9 +27,11 @@
   import org.apache.tapestry.engine.IMonitor;
   import org.apache.tapestry.engine.IMonitorFactory;
   import org.apache.tapestry.engine.RequestCycle;
  +import org.apache.tapestry.engine.RequestCycleEnvironment;
   import org.apache.tapestry.engine.ServiceEncoder;
   import org.apache.tapestry.engine.ServiceEncodingImpl;
   import org.apache.tapestry.record.PropertyPersistenceStrategySource;
  +import org.apache.tapestry.request.RequestContext;
   import org.apache.tapestry.services.AbsoluteURLBuilder;
   import org.apache.tapestry.services.Infrastructure;
   import org.apache.tapestry.services.RequestCycleFactory;
  @@ -36,6 +41,9 @@
   import org.apache.tapestry.web.WebResponse;
   
   /**
  + * Service that creates instances of {@link org.apache.tapestry.IRequestCycle}on behalf of an
  + * engine.
  + * 
    * @author Howard M. Lewis Ship
    * @since 3.1
    */
  @@ -53,8 +61,24 @@
   
       private AbsoluteURLBuilder _absoluteURLBuilder;
   
  -    public IRequestCycle newRequestCycle(IEngine engine, WebRequest request, WebResponse response)
  +    private RequestCycleEnvironment _environment;
  +
  +    private HttpServletRequest _servletRequest;
  +
  +    private HttpServletResponse _servletResponse;
  +
  +    public void initializeService()
  +    {
  +        RequestContext context = new RequestContext(_servletRequest, _servletResponse);
  +
  +        _environment = new RequestCycleEnvironment(_errorHandler, _infrastructure, context,
  +                _strategySource, _absoluteURLBuilder);
  +    }
  +
  +    public IRequestCycle newRequestCycle(IEngine engine)
       {
  +        WebRequest request = _infrastructure.getRequest();
  +
           IMonitor monitor = _monitorFactory.createMonitor(request);
   
           QueryParameterMap parameters = extractParameters(request);
  @@ -63,8 +87,7 @@
   
           IEngineService service = findService(parameters);
   
  -        return new RequestCycle(engine, request, response, parameters, service, _infrastructure,
  -                _strategySource, _absoluteURLBuilder, _errorHandler, monitor);
  +        return new RequestCycle(engine, parameters, service, monitor, _environment);
       }
   
       private IEngineService findService(QueryParameterMap parameters)
  @@ -146,4 +169,14 @@
       {
           _absoluteURLBuilder = absoluteURLBuilder;
       }
  +
  +    public void setServletRequest(HttpServletRequest servletRequest)
  +    {
  +        _servletRequest = servletRequest;
  +    }
  +
  +    public void setServletResponse(HttpServletResponse servletResponse)
  +    {
  +        _servletResponse = servletResponse;
  +    }
   }
  \ No newline at end of file
  
  
  
  1.13      +15 -0     jakarta-tapestry/framework/src/java/org/apache/tapestry/ApplicationServlet.java
  
  Index: ApplicationServlet.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/ApplicationServlet.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- ApplicationServlet.java	17 Mar 2005 22:22:19 -0000	1.12
  +++ ApplicationServlet.java	24 Mar 2005 16:50:15 -0000	1.13
  @@ -27,6 +27,8 @@
   import javax.servlet.http.HttpServletResponse;
   import javax.servlet.http.HttpSession;
   
  +import org.apache.commons.logging.Log;
  +import org.apache.commons.logging.LogFactory;
   import org.apache.hivemind.ClassResolver;
   import org.apache.hivemind.Registry;
   import org.apache.hivemind.Resource;
  @@ -73,6 +75,8 @@
   
   public class ApplicationServlet extends HttpServlet
   {
  +    private static final Log LOG = LogFactory.getLog(ApplicationServlet.class);
  +
       /**
        * Invokes {@link #doService(HttpServletRequest, HttpServletResponse)}.
        * 
  @@ -174,6 +178,11 @@
   
       public void init(ServletConfig config) throws ServletException
       {
  +        String name = config.getServletName();
  +
  +        long startTime = System.currentTimeMillis();
  +        long elapsedToRegistry = 0;
  +
           super.init(config);
   
           _resolver = createClassResolver();
  @@ -183,6 +192,8 @@
   
               _registry = constructRegistry(config);
   
  +            elapsedToRegistry = System.currentTimeMillis() - startTime;
  +
               initializeApplication();
           }
           catch (Exception ex)
  @@ -191,6 +202,10 @@
   
               throw new ServletException(TapestryMessages.servletInitFailure(ex), ex);
           }
  +
  +        long elapsedOverall = System.currentTimeMillis() - startTime;
  +
  +        LOG.info(TapestryMessages.servletInit(name, elapsedToRegistry, elapsedOverall));
       }
   
       /**
  
  
  
  1.12      +10 -0     jakarta-tapestry/framework/src/java/org/apache/tapestry/IRequestCycle.java
  
  Index: IRequestCycle.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/IRequestCycle.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- IRequestCycle.java	22 Mar 2005 13:40:54 -0000	1.11
  +++ IRequestCycle.java	24 Mar 2005 16:50:15 -0000	1.12
  @@ -17,6 +17,7 @@
   import org.apache.hivemind.ApplicationRuntimeException;
   import org.apache.tapestry.engine.IEngineService;
   import org.apache.tapestry.engine.IMonitor;
  +import org.apache.tapestry.request.RequestContext;
   import org.apache.tapestry.services.Infrastructure;
   
   /**
  @@ -293,4 +294,13 @@
        */
   
       public Infrastructure getInfrastructure();
  +
  +    /**
  +     * Returns the {@link RequestContext}. This is provided to ease the upgrade from Tapestry 3.0.
  +     * 
  +     * @since 3.1
  +     * @deprecated To be removed in 3.2.
  +     */
  +
  +    public RequestContext getRequestContext();
   }
  \ No newline at end of file
  
  
  
  1.8       +6 -0      jakarta-tapestry/framework/src/java/org/apache/tapestry/TapestryMessages.java
  
  Index: TapestryMessages.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/TapestryMessages.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- TapestryMessages.java	5 Jan 2005 23:17:12 -0000	1.7
  +++ TapestryMessages.java	24 Mar 2005 16:50:15 -0000	1.8
  @@ -34,4 +34,10 @@
       {
           return _formatter.format("component-is-locked", component.getExtendedId());
       }
  +
  +    public static String servletInit(String name, long elapsedToRegistry, long elapsedOverall)
  +    {
  +        return _formatter.format("servlet-init", name, new Long(elapsedToRegistry), new Long(
  +                elapsedOverall));
  +    }
   }
  \ No newline at end of file
  
  
  
  1.7       +1 -0      jakarta-tapestry/framework/src/java/org/apache/tapestry/TapestryStrings2.properties
  
  Index: TapestryStrings2.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/TapestryStrings2.properties,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- TapestryStrings2.properties	6 Jan 2005 02:17:12 -0000	1.6
  +++ TapestryStrings2.properties	24 Mar 2005 16:50:15 -0000	1.7
  @@ -12,6 +12,7 @@
   # See the License for the specific language governing permissions and
   # limitations under the License.
   
  +servlet-init=Initialized application servlet ''{0}'': {1} millis to create HiveMind Registry, {2} millis overall.
   servlet-init-failure=Unable to initialize application servlet: {0}
   no-accessor=Component {0} does not have accessor methods for property {1}.
   component-is-locked=Component {0} is active and its configuration state may not be changed.
  
  
  
  1.25      +2 -0      jakarta-tapestry/framework/src/descriptor/META-INF/tapestry.request.xml
  
  Index: tapestry.request.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/descriptor/META-INF/tapestry.request.xml,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- tapestry.request.xml	22 Mar 2005 13:40:54 -0000	1.24
  +++ tapestry.request.xml	24 Mar 2005 16:50:16 -0000	1.25
  @@ -203,6 +203,8 @@
           <set-service property="strategySource" service-id="tapestry.persist.PropertyPersistenceStrategySource"/>       
           <set-service property="infrastructure" service-id="tapestry.Infrastructure"/>
   		    <set-service property="absoluteURLBuilder" service-id="AbsoluteURLBuilder"/>
  +        <set-service property="servletRequest" service-id="tapestry.globals.HttpServletRequest"/>
  +        <set-service property="servletResponse" service-id="tapestry.globals.HttpServletResponse"/>
         </construct>
       </invoke-factory>
       
  
  
  
  1.1                  jakarta-tapestry/framework/src/test/org/apache/tapestry/request/TestRequestContext.java
  
  Index: TestRequestContext.java
  ===================================================================
  // Copyright 2005 The Apache Software Foundation
  //
  // Licensed under the Apache License, Version 2.0 (the "License");
  // you may not use this file except in compliance with the License.
  // You may obtain a copy of the License at
  //
  //     http://www.apache.org/licenses/LICENSE-2.0
  //
  // Unless required by applicable law or agreed to in writing, software
  // distributed under the License is distributed on an "AS IS" BASIS,
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  // See the License for the specific language governing permissions and
  // limitations under the License.
  
  package org.apache.tapestry.request;
  
  import java.util.ArrayList;
  import java.util.Collections;
  import java.util.Enumeration;
  import java.util.List;
  
  import javax.servlet.http.HttpServletRequest;
  import javax.servlet.http.HttpServletResponse;
  import javax.servlet.http.HttpSession;
  
  import org.apache.hivemind.test.HiveMindTestCase;
  import org.easymock.MockControl;
  
  /**
   * Tests for {@link org.apache.tapestry.request.RequestContext}.
   * 
   * @author Howard M. Lewis Ship
   * @since 3.1
   */
  public class TestRequestContext extends HiveMindTestCase
  {
      private HttpSession newSession()
      {
          return (HttpSession) newMock(HttpSession.class);
      }
  
      private HttpServletRequest newRequest(boolean create, HttpSession session)
      {
          MockControl control = newControl(HttpServletRequest.class);
          HttpServletRequest request = (HttpServletRequest) control.getMock();
  
          request.getSession(create);
          control.setReturnValue(session);
  
          return request;
      }
  
      private HttpServletRequest newRequest()
      {
          return (HttpServletRequest) newMock(HttpServletRequest.class);
      }
  
      private HttpServletResponse newResponse()
      {
          return (HttpServletResponse) newMock(HttpServletResponse.class);
      }
  
      public void testGetParameter()
      {
          MockControl control = newControl(HttpServletRequest.class);
          HttpServletRequest request = (HttpServletRequest) control.getMock();
          HttpServletResponse response = newResponse();
  
          String value = "VALUE";
  
          request.getParameter("myparam");
          control.setReturnValue(value);
  
          replayControls();
  
          RequestContext rc = new RequestContext(request, response);
  
          assertSame(value, rc.getParameter("myparam"));
  
          verifyControls();
      }
  
      public void testGetParameters()
      {
          MockControl control = newControl(HttpServletRequest.class);
          HttpServletRequest request = (HttpServletRequest) control.getMock();
          HttpServletResponse response = newResponse();
  
          String[] values =
          { "this", "that" };
  
          request.getParameterValues("myparam");
          control.setReturnValue(values);
  
          replayControls();
  
          RequestContext rc = new RequestContext(request, response);
  
          assertSame(values, rc.getParameters("myparam"));
  
          verifyControls();
      }
  
      public void testGetParameterNames()
      {
          MockControl control = newControl(HttpServletRequest.class);
          HttpServletRequest request = (HttpServletRequest) control.getMock();
          HttpServletResponse response = newResponse();
  
          List names = new ArrayList();
          names.add("fred");
          names.add("barney");
  
          Enumeration e = Collections.enumeration(names);
  
          request.getParameterNames();
          control.setReturnValue(e);
  
          replayControls();
  
          RequestContext rc = new RequestContext(request, response);
  
          String[] pnames = rc.getParameterNames();
  
          assertListsEqual(new String[]
          { "fred", "barney" }, pnames);
  
          verifyControls();
      }
  
      public void testGetRequestAndResponse()
      {
          HttpServletRequest request = newRequest();
          HttpServletResponse response = newResponse();
  
          replayControls();
  
          RequestContext rc = new RequestContext(request, response);
  
          assertSame(request, rc.getRequest());
          assertSame(response, rc.getResponse());
  
          verifyControls();
      }
  
      public void testGetAttribute()
      {
          MockControl control = newControl(HttpServletRequest.class);
          HttpServletRequest request = (HttpServletRequest) control.getMock();
          HttpServletResponse response = newResponse();
  
          Object attribute = new Object();
  
          request.getAttribute("myattr");
          control.setReturnValue(attribute);
  
          replayControls();
  
          RequestContext rc = new RequestContext(request, response);
  
          assertSame(attribute, rc.getAttribute("myattr"));
  
          verifyControls();
      }
  
      public void testGetSession()
      {
          HttpSession session = newSession();
          HttpServletRequest request = newRequest(false, session);
          HttpServletResponse response = newResponse();
  
          replayControls();
  
          RequestContext rc = new RequestContext(request, response);
  
          assertSame(session, rc.getSession());
  
          verifyControls();
      }
  
      public void testCreateSession()
      {
          HttpSession session = newSession();
          HttpServletRequest request = newRequest(true, session);
          HttpServletResponse response = newResponse();
  
          replayControls();
  
          RequestContext rc = new RequestContext(request, response);
  
          assertSame(session, rc.createSession());
  
          verifyControls();
      }
  }
  
  
  1.11      +17 -724   jakarta-tapestry/framework/src/java/org/apache/tapestry/request/RequestContext.java
  
  
  
  
  1.27      +1 -4      jakarta-tapestry/framework/src/java/org/apache/tapestry/engine/AbstractEngine.java
  
  Index: AbstractEngine.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/engine/AbstractEngine.java,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- AbstractEngine.java	22 Mar 2005 13:40:53 -0000	1.26
  +++ AbstractEngine.java	24 Mar 2005 16:50:16 -0000	1.27
  @@ -256,10 +256,7 @@
           {
               try
               {
  -                cycle = _infrastructure.getRequestCycleFactory().newRequestCycle(
  -                        this,
  -                        request,
  -                        response);
  +                cycle = _infrastructure.getRequestCycleFactory().newRequestCycle(this);
   
                   monitor = cycle.getMonitor();
                   service = cycle.getService();
  
  
  
  1.14      +25 -21    jakarta-tapestry/framework/src/java/org/apache/tapestry/engine/RequestCycle.java
  
  Index: RequestCycle.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/engine/RequestCycle.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- RequestCycle.java	22 Mar 2005 13:40:53 -0000	1.13
  +++ RequestCycle.java	24 Mar 2005 16:50:16 -0000	1.14
  @@ -22,7 +22,6 @@
   import org.apache.commons.logging.Log;
   import org.apache.commons.logging.LogFactory;
   import org.apache.hivemind.ApplicationRuntimeException;
  -import org.apache.hivemind.ErrorHandler;
   import org.apache.hivemind.ErrorLog;
   import org.apache.hivemind.impl.ErrorLogImpl;
   import org.apache.hivemind.util.Defense;
  @@ -37,11 +36,10 @@
   import org.apache.tapestry.Tapestry;
   import org.apache.tapestry.record.PageRecorderImpl;
   import org.apache.tapestry.record.PropertyPersistenceStrategySource;
  +import org.apache.tapestry.request.RequestContext;
   import org.apache.tapestry.services.AbsoluteURLBuilder;
   import org.apache.tapestry.services.Infrastructure;
   import org.apache.tapestry.util.QueryParameterMap;
  -import org.apache.tapestry.web.WebRequest;
  -import org.apache.tapestry.web.WebResponse;
   
   /**
    * Provides the logic for processing a single request cycle. Provides access to the
  @@ -60,12 +58,8 @@
   
       private IEngineService _service;
   
  -    private WebRequest _request;
  -
       private IMonitor _monitor;
   
  -    private WebResponse _response;
  -
       /** @since 3.1 */
   
       private PropertyPersistenceStrategySource _strategySource;
  @@ -123,26 +117,31 @@
   
       private ErrorLog _log;
   
  +    private RequestContext _requestContext;
  +
       /**
        * Standard constructor used to render a response page.
        */
   
  -    public RequestCycle(IEngine engine, WebRequest request, WebResponse response,
  -            QueryParameterMap parameters, IEngineService service, Infrastructure infrastructure,
  -            PropertyPersistenceStrategySource strategySource,
  -            AbsoluteURLBuilder absoluteURLBuilder, ErrorHandler errorHandler, IMonitor monitor)
  +    public RequestCycle(IEngine engine, QueryParameterMap parameters, IEngineService service,
  +            IMonitor monitor, RequestCycleEnvironment environment)
       {
  +        // Variant from instance to instance
  +
           _engine = engine;
  -        _request = request;
  -        _response = response;
           _parameters = parameters;
           _service = service;
  -        _infrastructure = infrastructure;
  -        _pageSource = _infrastructure.getPageSource();
  -        _strategySource = strategySource;
  -        _absoluteURLBuilder = absoluteURLBuilder;
  -        _log = new ErrorLogImpl(errorHandler, LOG);
           _monitor = monitor;
  +
  +        // Invariant from instance to instance
  +
  +        _infrastructure = environment.getInfrastructure();
  +        _pageSource = _infrastructure.getPageSource();
  +        _strategySource = environment.getStrategySource();
  +        _absoluteURLBuilder = environment.getAbsoluteURLBuilder();
  +        _requestContext = environment.getRequestContext();
  +        _log = new ErrorLogImpl(environment.getErrorHandler(), LOG);
  +
       }
   
       /**
  @@ -185,7 +184,7 @@
   
       public String encodeURL(String URL)
       {
  -        return _response.encodeURL(URL);
  +        return _infrastructure.getResponse().encodeURL(URL);
       }
   
       public IEngine getEngine()
  @@ -621,7 +620,7 @@
           b.append("rewinding", _rewinding);
   
           if (_service != null)
  -            b.append("service", _service.getName());
  +            b.append("service", _service);
   
           b.append("serviceParameters", _serviceParameters);
   
  @@ -639,7 +638,7 @@
   
       public String getAbsoluteURL(String partialURL)
       {
  -        String contextPath = _request.getContextPath();
  +        String contextPath = _infrastructure.getRequest().getContextPath();
   
           return _absoluteURLBuilder.constructURL(contextPath + partialURL);
       }
  @@ -659,4 +658,9 @@
       {
           return _infrastructure;
       }
  +
  +    public RequestContext getRequestContext()
  +    {
  +        return _requestContext;
  +    }
   }
  \ No newline at end of file
  
  
  
  1.1                  jakarta-tapestry/framework/src/java/org/apache/tapestry/engine/RequestCycleEnvironment.java
  
  Index: RequestCycleEnvironment.java
  ===================================================================
  // Copyright 2005 The Apache Software Foundation
  //
  // Licensed under the Apache License, Version 2.0 (the "License");
  // you may not use this file except in compliance with the License.
  // You may obtain a copy of the License at
  //
  //     http://www.apache.org/licenses/LICENSE-2.0
  //
  // Unless required by applicable law or agreed to in writing, software
  // distributed under the License is distributed on an "AS IS" BASIS,
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  // See the License for the specific language governing permissions and
  // limitations under the License.
  
  package org.apache.tapestry.engine;
  
  import org.apache.hivemind.ErrorHandler;
  import org.apache.tapestry.record.PropertyPersistenceStrategySource;
  import org.apache.tapestry.request.RequestContext;
  import org.apache.tapestry.services.AbsoluteURLBuilder;
  import org.apache.tapestry.services.Infrastructure;
  
  /**
   * An object that contains all the invariant parameters to the
   * {@link org.apache.tapestry.engine.RequestCycle#RequestCycle(IEngine, QueryParameterMap, IEngineService, IMonitor, RequestCycleEnvironment)}
   * constructor.
   * 
   * @author Howard M. Lewis Ship
   * @since 3.1
   */
  public class RequestCycleEnvironment
  {
      private Infrastructure _infrastructure;
  
      private PropertyPersistenceStrategySource _strategySource;
  
      private AbsoluteURLBuilder _absoluteURLBuilder;
  
      private ErrorHandler _errorHandler;
  
      private RequestContext _requestContext;
  
      public RequestCycleEnvironment(ErrorHandler errorHandler, Infrastructure infrastructure,
              RequestContext requestContext, PropertyPersistenceStrategySource strategySource,
              AbsoluteURLBuilder absoluteURLBuilder)
      {
          _errorHandler = errorHandler;
          _infrastructure = infrastructure;
          _requestContext = requestContext;
          _strategySource = strategySource;
          _absoluteURLBuilder = absoluteURLBuilder;
      }
  
      public AbsoluteURLBuilder getAbsoluteURLBuilder()
      {
          return _absoluteURLBuilder;
      }
  
      public ErrorHandler getErrorHandler()
      {
          return _errorHandler;
      }
  
      public Infrastructure getInfrastructure()
      {
          return _infrastructure;
      }
  
      public PropertyPersistenceStrategySource getStrategySource()
      {
          return _strategySource;
      }
  
      public RequestContext getRequestContext()
      {
          return _requestContext;
      }
  }
  
  
  1.5       +1 -1      jakarta-tapestry/framework/src/java/org/apache/tapestry/services/RequestCycleFactory.java
  
  Index: RequestCycleFactory.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/framework/src/java/org/apache/tapestry/services/RequestCycleFactory.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- RequestCycleFactory.java	10 Mar 2005 18:49:15 -0000	1.4
  +++ RequestCycleFactory.java	24 Mar 2005 16:50:16 -0000	1.5
  @@ -34,5 +34,5 @@
        * (that were encoding into the URL).
        */
   
  -    public IRequestCycle newRequestCycle(IEngine engine, WebRequest request, WebResponse response);
  +    public IRequestCycle newRequestCycle(IEngine engine);
   }
  \ No newline at end of file
  
  
  
  1.1                  jakarta-tapestry/framework/src/test/org/apache/tapestry/engine/TestRequestCycle.java
  
  Index: TestRequestCycle.java
  ===================================================================
  // Copyright 2005 The Apache Software Foundation
  //
  // Licensed under the Apache License, Version 2.0 (the "License");
  // you may not use this file except in compliance with the License.
  // You may obtain a copy of the License at
  //
  //     http://www.apache.org/licenses/LICENSE-2.0
  //
  // Unless required by applicable law or agreed to in writing, software
  // distributed under the License is distributed on an "AS IS" BASIS,
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  // See the License for the specific language governing permissions and
  // limitations under the License.
  
  package org.apache.tapestry.engine;
  
  import org.apache.hivemind.ErrorHandler;
  import org.apache.hivemind.test.HiveMindTestCase;
  import org.apache.tapestry.IEngine;
  import org.apache.tapestry.IRequestCycle;
  import org.apache.tapestry.pageload.PageSource;
  import org.apache.tapestry.record.PropertyPersistenceStrategySource;
  import org.apache.tapestry.request.RequestContext;
  import org.apache.tapestry.services.AbsoluteURLBuilder;
  import org.apache.tapestry.services.Infrastructure;
  import org.apache.tapestry.util.QueryParameterMap;
  import org.easymock.MockControl;
  
  /**
   * Tests for {@link org.apache.tapestry.engine.RequestCycle}. Mostly just tests changes for 3.1
   * (3.0 code is still mostly tested via the mock integration tests).
   * 
   * @author Howard M. Lewis Ship
   * @since 3.1
   */
  public class TestRequestCycle extends HiveMindTestCase
  {
      private IEngine newEngine()
      {
          return (IEngine) newMock(IEngine.class);
      }
  
      private IMonitor newMonitor()
      {
          return (IMonitor) newMock(IMonitor.class);
      }
  
      private PropertyPersistenceStrategySource newStrategySource()
      {
          return (PropertyPersistenceStrategySource) newMock(PropertyPersistenceStrategySource.class);
      }
  
      private PageSource newPageSource()
      {
          return (PageSource) newMock(PageSource.class);
      }
  
      private Infrastructure newInfrastructure()
      {
          return newInfrastructure(newPageSource());
      }
  
      private ErrorHandler newErrorHandler()
      {
          return (ErrorHandler) newMock(ErrorHandler.class);
      }
  
      private AbsoluteURLBuilder newBuilder()
      {
          return (AbsoluteURLBuilder) newMock(AbsoluteURLBuilder.class);
      }
  
      private Infrastructure newInfrastructure(PageSource source)
      {
          MockControl control = newControl(Infrastructure.class);
          Infrastructure infrastructure = (Infrastructure) control.getMock();
  
          infrastructure.getPageSource();
          control.setReturnValue(source);
  
          return infrastructure;
      }
  
      private IEngineService newService()
      {
          return (IEngineService) newMock(IEngineService.class);
      }
  
      private RequestCycleEnvironment newEnvironment(RequestContext context)
      {
          return new RequestCycleEnvironment(newErrorHandler(), newInfrastructure(), context,
                  newStrategySource(), newBuilder());
      }
  
      public void testGetters()
      {
          RequestContext context = new RequestContext(null, null);
          Infrastructure infrastructure = newInfrastructure();
          RequestCycleEnvironment env = new RequestCycleEnvironment(newErrorHandler(),
                  infrastructure, context, newStrategySource(), newBuilder());
          IEngine engine = newEngine();
          IEngineService service = newService();
          IMonitor monitor = newMonitor();
  
          replayControls();
  
          IRequestCycle cycle = new RequestCycle(engine, new QueryParameterMap(), service, monitor,
                  env);
  
          assertSame(infrastructure, cycle.getInfrastructure());
          assertSame(context, cycle.getRequestContext());
          assertSame(service, cycle.getService());
          assertSame(engine, cycle.getEngine());
          assertSame(monitor, cycle.getMonitor());
  
          verifyControls();
      }
  
      public void testForgetPage()
      {
          RequestContext context = new RequestContext(null, null);
          Infrastructure infrastructure = newInfrastructure();
          PropertyPersistenceStrategySource source = newStrategySource();
          RequestCycleEnvironment env = new RequestCycleEnvironment(newErrorHandler(),
                  infrastructure, context, source, newBuilder());
          IEngine engine = newEngine();
          IEngineService service = newService();
          IMonitor monitor = newMonitor();
  
          replayControls();
  
          IRequestCycle cycle = new RequestCycle(engine, new QueryParameterMap(), service, monitor,
                  env);
          
          cycle.getEngine();
          
          verifyControls();
  
          source.discardAllStoredChanged("MyPage", cycle);
  
          replayControls();
  
          cycle.forgetPage("MyPage");
  
          verifyControls();
          
          source.discardAllStoredChanged("MyPage", cycle);
  
          replayControls();
  
          cycle.discardPage("MyPage");
  
          verifyControls();
      }
  }
  
  
  1.11      +2 -0      jakarta-tapestry/config/log4j.properties
  
  Index: log4j.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/config/log4j.properties,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- log4j.properties	16 Jan 2005 17:18:46 -0000	1.10
  +++ log4j.properties	24 Mar 2005 16:50:16 -0000	1.11
  @@ -24,3 +24,5 @@
   log4j.category.org.apache.commons.digester.Digester=FATAL
   log4j.category.org.apache.hivemind=ERROR
   log4j.category.hivemind=ERROR
  +
  +log4j.category.org.apache.tapestry.ApplicationServlet=info
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org