1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 package org.apache.jetspeed.mockobjects.portlet; 18 19 import java.util.Enumeration; 20 import java.util.Hashtable; 21 import javax.portlet.PortletContext; 22 import javax.portlet.PortletSession; 23 24 /*** 25 * A mock portlet session, useful for unit testing and offline utilities 26 * Note: currently doesn't support scoping 27 * 28 * @author <a href="mailto:taylor@apache.org">David Sean Taylor</a> 29 * @version $Id: MockPortletSession.java 516448 2007-03-09 16:25:47Z ate $ 30 */ 31 public class MockPortletSession implements PortletSession 32 { 33 // Hashtable (not HashMap) makes enumerations easier to work with 34 Hashtable attributes = new Hashtable(); 35 36 public MockPortletSession() 37 { 38 } 39 40 41 /* (non-Javadoc) 42 * @see javax.portlet.PortletSession#getAttribute(java.lang.String) 43 */ 44 public Object getAttribute(String name) 45 { 46 return attributes.get(name); 47 } 48 49 /* (non-Javadoc) 50 * @see javax.portlet.PortletSession#getAttribute(java.lang.String, int) 51 */ 52 public Object getAttribute(String name, int scope) 53 { 54 return attributes.get(name); 55 } 56 57 /* (non-Javadoc) 58 * @see javax.portlet.PortletSession#getAttributeNames(int) 59 */ 60 public Enumeration getAttributeNames(int scope) 61 { 62 return attributes.keys(); 63 } 64 65 /* (non-Javadoc) 66 * @see javax.portlet.PortletSession#getCreationTime() 67 */ 68 public long getCreationTime() 69 { 70 // TODO Auto-generated method stub 71 return 0; 72 } 73 74 /* (non-Javadoc) 75 * @see javax.portlet.PortletSession#getId() 76 */ 77 public String getId() 78 { 79 // TODO Auto-generated method stub 80 return null; 81 } 82 83 /* (non-Javadoc) 84 * @see javax.portlet.PortletSession#getLastAccessedTime() 85 */ 86 public long getLastAccessedTime() 87 { 88 // TODO Auto-generated method stub 89 return 0; 90 } 91 92 /* (non-Javadoc) 93 * @see javax.portlet.PortletSession#getMaxInactiveInterval() 94 */ 95 public int getMaxInactiveInterval() 96 { 97 // TODO Auto-generated method stub 98 return 0; 99 } 100 101 /* (non-Javadoc) 102 * @see javax.portlet.PortletSession#invalidate() 103 */ 104 public void invalidate() 105 { 106 // TODO Auto-generated method stub 107 } 108 109 /* (non-Javadoc) 110 * @see javax.portlet.PortletSession#isNew() 111 */ 112 public boolean isNew() 113 { 114 // TODO Auto-generated method stub 115 return false; 116 } 117 118 /* (non-Javadoc) 119 * @see javax.portlet.PortletSession#removeAttribute(java.lang.String) 120 */ 121 public void removeAttribute(String name) 122 { 123 attributes.remove(name); 124 } 125 126 /* (non-Javadoc) 127 * @see javax.portlet.PortletSession#removeAttribute(java.lang.String, int) 128 */ 129 public void removeAttribute(String name, int scope) 130 { 131 attributes.remove(name); 132 } 133 134 /* (non-Javadoc) 135 * @see javax.portlet.PortletSession#setAttribute(java.lang.String, java.lang.Object) 136 */ 137 public void setAttribute(String name, Object value) 138 { 139 attributes.put(name, value); 140 } 141 142 public Enumeration getAttributeNames() 143 { 144 return this.getAttributeNames(PortletSession.PORTLET_SCOPE); 145 } 146 147 148 /* (non-Javadoc) 149 * @see javax.portlet.PortletSession#setAttribute(java.lang.String, java.lang.Object, int) 150 */ 151 public void setAttribute(String name, Object value, int scope) 152 { 153 attributes.put(name, value); 154 } 155 156 /* (non-Javadoc) 157 * @see javax.portlet.PortletSession#setMaxInactiveInterval(int) 158 */ 159 public void setMaxInactiveInterval(int interval) 160 { 161 // TODO Auto-generated method stub 162 } 163 /* (non-Javadoc) 164 * @see javax.portlet.PortletSession#getPortletContext() 165 */ 166 public PortletContext getPortletContext() 167 { 168 // TODO Auto-generated method stub 169 return null; 170 } 171 }