String
containing the real path for a given virtual path. For example,
* the virtual path "/index.html" has a real path of whatever file on the server's filesystem
* would be served by a request for "/index.html".
* This method returns null
if the virtual path cannot be translated to a real path for
* any reason.
*
* @param s A String
specifying a virtual path.
* @return A String
specifying the real path, or null
if the translation cannot
* be performed.
*/
public abstract String mapPath(String s);
/**
* Returns the portion of the request URI that indicates the context of the request, i.e. the servlet
* context under which Venice is installed. The context path always comes first in a request URI. The
* path starts with a "/" character but does not end with a "/" character.
*
* @return A String
specifying the portion of the request URI that indicates the context
* of the request.
*/
public abstract String getContextPath();
/**
* Returns the part of this request's URI that calls the servlet. This includes either the servlet name
* or a path to the servlet, but does not include any extra path information or a query string.
*
* @return A String
containing the name or path of the servlet being called, as specified
* in the request URI.
*/
public abstract String getServletPath();
/**
* Returns any extra path information associated with the URI the client sent when it made this request.
* The extra path information follows the servlet path but precedes the query string. This method
* returns null
if there was no extra path information. In Venice, the path information is
* used to specify parameters in certain servlets.
*
* @return A String
specifying extra path information that comes after the servlet path
* but before the query string in the request URI; or null
if the URI does not
* have any extra path information.
*/
public abstract String getPathInfo();
/**
* Returns the query string that is contained in the request URI after the path. This method returns
* null
if the URI does not have a query string.
*
* @return A String
containing the query string or null
if the URI contains
* no query string.
*/
public abstract String getQueryString();
/**
* Returns the name of the HTTP method with which this request was made, for example, GET, POST, or PUT.
*
* @return A String
specifying the name of the method with which this request was made.
*/
public abstract String getVerb();
/**
* Returns the Internet Protocol (IP) address of the client that sent the request.
*
* @return A String
containing the IP address of the client that sent the request.
*/
public abstract String getSourceAddress();
/**
* Returns true
if the request parameter with the specified name is defined,
* false
if not. For standard Venice requests, parameters are contained in the
* query string or posted form data.
*
* @param name Parameter name to be checked.
* @return See above.
*/
public abstract boolean hasParameter(String name);
/**
* Returns the value of a request parameter as a String
, or null
if the
* parameter does not exist. For standard Venice requests, parameters are contained in the query
* string or posted form data.
* You should only use this method when you are sure the parameter has only one value. If the parameter * might have more than one value, use {@link #getParameterValues(java.lang.String)}.
* If you use this method with a multivalued parameter, the value returned is equal to the first value
* in the array returned by getParameterValues
.
*
* @param name A String
specifying the name of the parameter.
* @return A String
representing the single value of the parameter.
* @see #getParameterValues(java.lang.String)
*/
public abstract String getParameter(String name);
/**
* Returns the value of a request parameter as a int
, or a specified default value if
* the parameter does not exist. For standard Venice requests, parameters are contained in the query
* string or posted form data.
* If you use this method with a multivalued parameter, the value returned is equal to the
* int
equivalent of the first value in the array returned by getParameterValues
.
*
* @param name A String
specifying the name of the parameter.
* @param default_value The default value to use for the parameter if the specified parameter does not exist.
* @return An int
representing the single value of the parameter.
*/
public abstract int getParameterInt(String name, int default_value);
/**
* Returns the value of a request parameter as a short
, or a specified default value if
* the parameter does not exist. For standard Venice requests, parameters are contained in the query
* string or posted form data.
* If you use this method with a multivalued parameter, the value returned is equal to the
* short
equivalent of the first value in the array returned by getParameterValues
.
*
* @param name A String
specifying the name of the parameter.
* @param default_value The default value to use for the parameter if the specified parameter does not exist.
* @return A short
representing the single value of the parameter.
*/
public abstract short getParameterShort(String name, short default_value);
/**
* Returns the value of a request parameter as a long
, or a specified default value if
* the parameter does not exist. For standard Venice requests, parameters are contained in the query
* string or posted form data.
* If you use this method with a multivalued parameter, the value returned is equal to the
* long
equivalent of the first value in the array returned by getParameterValues
.
*
* @param name A String
specifying the name of the parameter.
* @param default_value The default value to use for the parameter if the specified parameter does not exist.
* @return A long
representing the single value of the parameter.
*/
public abstract long getParameterLong(String name, long default_value);
/**
* Returns an Enumeration
of String
objects containing the names of the
* parameters contained in this request. If the request has no parameters, the method returns an empty
* Enumeration.
*
* @return An Enumeration
of String
objects, each String
* containing the name of a request parameter, or an empty Enumeration
if the
* request has no parameters.
*/
public abstract Enumeration getParameterNames();
/**
* Returns an array of String
objects containing all of the values the given request
* parameter has, or null
if the parameter does not exist.
* If the parameter has a single value, the array has a length of 1.
*
* @param name A String
containing the name of the parameter whose value is requested.
* @return An array of String
objects containing the parameter's values.
* @see #getParameter(java.lang.String)
*/
public abstract String[] getParameterValues(String name);
/**
* Returns true
if the specified parameter is a file parameter, false
if
* not. If the parameter does not exist, the return value is false
.
*
* @param name A String
containing the name of the parameter to test.
* @return See above.
*/
public abstract boolean isFileParam(String name);
/**
* Returns the MIME type of the specified parameter. If the type cannot be determined, the return
* value is null
.
* N.B.: For non-file parameters, or all parameters to a request that is not a file upload, the MIME
* type is "text/plain".
*
* @param name A String
containing the name of the parameter to test.
* @return See above.
*/
public abstract String getParameterType(String name);
/**
* Returns the size in bytes of the specified parameter. If the size cannot be determined, the return
* value is -1.
* N.B.: For non-file parameters, or all parameters to a request that is not a file upload, the size
* is the number of bytes occupied by the parameter, expressed in UTF-8 encoding.
*
* @param name A String
containing the name of the parameter to test.
* @return See above.
*/
public abstract int getParameterSize(String name);
/**
* Returns an InputStream
reading from the data of the named file parameter. If the
* named parameter does not exist or is not a file parameter, returns null;
*
* @param name A
String
containing the name of the parameter whose value is requested.
* @return See above.
* @exception com.silverwrist.util.ServletMultipartException If there is a problem retrieving
* the parameter data stream.
*/
public abstract InputStream getParameterDataStream(String name) throws ServletMultipartException;
/**
* Returns true
if the parameter set reflects the clicking of an image button with a
* specified name, false
if not.
*
* @param name A String
containing the name of the image button to test.
* @return See above.
*/
public abstract boolean isImageButtonClicked(String name);
/**
* Returns the application-level attribute with the given name, or null
if there is no
* attribute by that name.
*
* @param name A String
specifying the name of the attribute.
* @return An Object
containing the value of the attribute, or null
if no
* attribute exists matching the given name.
*/
public abstract Object getAppAttribute(String name);
/**
* Sets the application-level attribute with the given name.
*
* @param name A String
specifying the name of the attribute.
* @param o The object to be bound as the value of that attribute, or null
if the binding
* is to be removed.
*/
public abstract void setAppAttribute(String name, Object o);
/**
* Returns the session-level attribute with the given name, or null
if there is no
* attribute by that name.
*
* @param name A String
specifying the name of the attribute.
* @return An Object
containing the value of the attribute, or null
if no
* attribute exists matching the given name.
*/
public abstract Object getSessionAttribute(String name);
/**
* Sets the session-level attribute with the given name.
*
* @param name A String
specifying the name of the attribute.
* @param o The object to be bound as the value of that attribute, or null
if the binding
* is to be removed.
*/
public abstract void setSessionAttribute(String name, Object o);
/**
* Returns the request-level attribute with the given name, or null
if there is no
* attribute by that name.
*
* @param name A String
specifying the name of the attribute.
* @return An Object
containing the value of the attribute, or null
if no
* attribute exists matching the given name.
*/
public abstract Object getRequestAttribute(String name);
/**
* Sets the request-level attribute with the given name.
*
* @param name A String
specifying the name of the attribute.
* @param o The object to be bound as the value of that attribute, or null
if the binding
* is to be removed.
*/
public abstract void setRequestAttribute(String name, Object o);
/**
* Returns the instance of the Venice engine associated with the application.
*
* @return See above.
*/
public abstract VeniceEngine getEngine();
/**
* Returns the instance of the Venice user object associated with the session.
*
* @return See above.
*/
public abstract UserContext getUser();
/**
* Returns the current servlet location. This is used, for instance, as the context to return to
* after a login.
*
* @return The current servlet location.
*/
public abstract String getLocation();
/**
* Sets the "current" servlet location that is displayed. This is used, for instance,
* as the context to return to after a login.
*
* @param str The new location to be set.
*/
public abstract void setLocation(String str);
/**
* Returns true
if the "Log In" link is to be displayed on the outer frame,
* false
if not.
*
* @return See above.
*/
public abstract boolean getDisplayLogin();
/**
* Sets whether or not the "Log In" link is to be displayed on the outer frame.
*
* @param val true
to display the "Log In" link on the outer frame,
* false
to omit it.
*/
public abstract void setDisplayLogin(boolean val);
public abstract MenuComponent getMenu(String name);
public abstract MenuComponent getMenu(String name, Map vars);
public abstract Dialog getDialog(String name);
public abstract Content[] getSideBoxes() throws AccessError, DataException;
public abstract CommunityContext getCommunity();
public abstract CommunityContext getCommunity(boolean required, String on_error) throws ErrorBox;
public abstract String getDefaultServletAddress(CommunityContext comm);
public abstract void registerCleanup(AutoCleanup ac);
public abstract String getConfigProperty(String name);
public abstract String getConfigProperty(String name, String default_val);
} // end interface RequestInput