001 /* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017 package org.apache.commons.fileupload; 018 019 import java.util.Enumeration; 020 import java.util.Hashtable; 021 import javax.portlet.PortletContext; 022 import javax.portlet.PortletSession; 023 024 /** 025 * A mock portlet session, useful for unit testing and offline utilities 026 * Note: currently doesn't support scoping 027 * 028 * @author <a href="mailto:taylor@apache.org">David Sean Taylor</a> 029 * @version $Id: MockPortletSession.java 479262 2006-11-26 03:09:24Z niallp $ 030 */ 031 public class MockPortletSession implements PortletSession 032 { 033 // Hashtable (not HashMap) makes enumerations easier to work with 034 Hashtable attributes = new Hashtable(); 035 036 public MockPortletSession() 037 { 038 } 039 040 041 /* (non-Javadoc) 042 * @see javax.portlet.PortletSession#getAttribute(java.lang.String) 043 */ 044 public Object getAttribute(String name) 045 { 046 return attributes.get(name); 047 } 048 049 /* (non-Javadoc) 050 * @see javax.portlet.PortletSession#getAttribute(java.lang.String, int) 051 */ 052 public Object getAttribute(String name, int scope) 053 { 054 return attributes.get(name); 055 } 056 057 /* (non-Javadoc) 058 * @see javax.portlet.PortletSession#getAttributeNames(int) 059 */ 060 public Enumeration getAttributeNames(int scope) 061 { 062 return attributes.keys(); 063 } 064 065 /* (non-Javadoc) 066 * @see javax.portlet.PortletSession#getCreationTime() 067 */ 068 public long getCreationTime() 069 { 070 // TODO Auto-generated method stub 071 return 0; 072 } 073 074 /* (non-Javadoc) 075 * @see javax.portlet.PortletSession#getId() 076 */ 077 public String getId() 078 { 079 // TODO Auto-generated method stub 080 return null; 081 } 082 083 /* (non-Javadoc) 084 * @see javax.portlet.PortletSession#getLastAccessedTime() 085 */ 086 public long getLastAccessedTime() 087 { 088 // TODO Auto-generated method stub 089 return 0; 090 } 091 092 /* (non-Javadoc) 093 * @see javax.portlet.PortletSession#getMaxInactiveInterval() 094 */ 095 public int getMaxInactiveInterval() 096 { 097 // TODO Auto-generated method stub 098 return 0; 099 } 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 }