Java tutorial
/* ************************************************************************************ * Copyright (C) 2001-2006 Openbravo S.L. * Licensed under the Apache Software License version 2.0 * 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. ************************************************************************************ */ import java.io.IOException; import java.util.ArrayList; import java.util.Enumeration; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletResponse; public class CacheFilter implements Filter { private String[][] replyHeaders = { {} }; public void init(FilterConfig config) { Enumeration<?> names = config.getInitParameterNames(); ArrayList<String[]> tmp = new ArrayList<String[]>(); while (names.hasMoreElements()) { String name = (String) names.nextElement(); String value = config.getInitParameter(name); String[] pair = { name, value }; tmp.add(pair); } replyHeaders = new String[tmp.size()][2]; tmp.toArray(replyHeaders); } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletResponse httpResponse = (HttpServletResponse) response; for (int n = 0; n < replyHeaders.length; n++) { String name = replyHeaders[n][0]; String value = replyHeaders[n][1]; httpResponse.addHeader(name, value); } chain.doFilter(request, response); } public void destroy() { } }