1 package com.anite.antelope.test;
2 /* ====================================================================
3 * The Apache Software License, Version 1.1
4 *
5 * Copyright (c) 2001-2002 The Apache Software Foundation. All rights
6 * reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 *
12 * 1. Redistributions of source code must retain the above copyright
13 * notice, this list of conditions and the following disclaimer.
14 *
15 * 2. Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in
17 * the documentation and/or other materials provided with the
18 * distribution.
19 *
20 * 3. The end-user documentation included with the redistribution,
21 * if any, must include the following acknowledgment:
22 * "This product includes software developed by the
23 * Apache Software Foundation (http://www.apache.org/)."
24 * Alternately, this acknowledgment may appear in the software itself,
25 * if and wherever such third-party acknowledgments normally appear.
26 *
27 * 4. The names "Apache" and "Apache Software Foundation" and
28 * "Apache Turbine" must not be used to endorse or promote products
29 * derived from this software without prior written permission. For
30 * written permission, please contact apache@apache.org.
31 *
32 * 5. Products derived from this software may not be called "Apache",
33 * "Apache Turbine", nor may "Apache" appear in their name, without
34 * prior written permission of the Apache Software Foundation.
35 *
36 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
37 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
38 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
39 * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
40 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
41 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
42 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
43 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
44 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
45 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
46 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
47 * SUCH DAMAGE.
48 * ====================================================================
49 *
50 * This software consists of voluntary contributions made by many
51 * individuals on behalf of the Apache Software Foundation. For more
52 * information on the Apache Software Foundation, please see
53 * <http://www.apache.org/>.
54 */
55 import com.mockobjects.servlet.MockHttpSession;
56 /***
57 * Extension to the basic MockHttpSession to provide some extra parameters
58 * required by Turbine.
59 *
60 * @author <a href="mailto:epugh@upstate.com">Eric Pugh</a>
61 * @version $Id: EnhancedMockHttpSession.html,v 1.3 2004/06/25 10:04:14 bengidley Exp $
62 */
63 public class EnhancedMockHttpSession extends MockHttpSession
64 {
65 private boolean isNew = true;
66 private int maxInactiveInterval =0;
67
68 /***
69 *
70 */
71 public EnhancedMockHttpSession()
72 {
73 super();
74 }
75 /***
76 * The default MockHttpSession doesn't implement this method. It always
77 * returns true.
78 */
79 public boolean isNew()
80 {
81 return isNew;
82 }
83
84 public void setMaxInactiveInterval(int maxInactiveInterval){
85 this.maxInactiveInterval =maxInactiveInterval;
86 }
87
88 public int getMaxInactiveInterval(){
89 return maxInactiveInterval;
90 }
91
92 /***
93 * The underlying mock objects throws an Assert failure if we don't have
94 * an attribute. However, in Turbine, getting a null is okay, it just
95 * means we haven't put the object in yet!
96 */
97 public Object getAttribute(String attributeName)
98 {
99 try
100 {
101 return super.getAttribute(attributeName);
102 }
103 catch (junit.framework.AssertionFailedError afe)
104 {
105 return null;
106 }
107 }
108 }