com.servicerocket.confluence.randombits.storage.servlet.RequestHeaderStorage Maven / Gradle / Ivy
package com.servicerocket.confluence.randombits.storage.servlet;
import java.util.Enumeration;
import java.util.Set;
import javax.servlet.http.HttpServletRequest;
import com.servicerocket.confluence.randombits.storage.StringBasedStorage;
public class RequestHeaderStorage extends StringBasedStorage {
private HttpServletRequest req;
private Set headerNames;
public RequestHeaderStorage( HttpServletRequest req ) {
super( BoxType.Virtual );
this.req = req;
}
@Override protected Set baseNameSet() {
if ( headerNames == null ) {
headerNames = new java.util.HashSet();
Enumeration names = req.getHeaderNames();
while ( names.hasMoreElements() )
headerNames.add( names.nextElement() );
}
return headerNames;
}
@Override protected String getBaseString( String name ) {
return req.getHeader( name );
}
@Override protected void setBaseString( String name, String value ) {
checkReadOnly();
}
@Override public boolean isReadOnly() {
return true;
}
}