All Downloads are FREE. Search and download functionalities are using the official Maven repository.

clime.messadmin.model.ISessionInfo Maven / Gradle / Ivy

Go to download

Notification system and Session administration for J2EE Web Applications

There is a newer version: 4.1.1
Show newest version
/**
 * 
 */
package clime.messadmin.model;

import java.security.Principal;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.Map;

import javax.servlet.http.HttpSession;

/**
 * @author Cédrik LIME
 */
public interface ISessionInfo extends HttpSession {

	// Inherited methods from HttpSession

	//public long getCreationTime();
	//public long getLastAccessedTime();
	//public int getMaxInactiveInterval();
	//public void invalidate();
	//public boolean isNew();
	//public void removeAttribute(String name);
	//public void setMaxInactiveInterval(int interval);

	// Methods from ISessionInfo

	/**
	 * Returns the session attributes as a Map.
	 *
	 * @return 		an Map<String,Object> containing the
	 *			attributes
	 *
	 * @exception IllegalStateException	if this method is called on an
	 *					invalidated session
	 *
	 * @see javax.servlet.http.HttpSession#getAttributeNames()
	 * @see javax.servlet.http.HttpSession#getAttribute(java.lang.String)
	 */
	public Map/**/ getAttributes();

	/**
	 * @return number of exceptions generated during request processing
	 */
	public int getNErrors();
	/**
	 * @return last error generated during request processing, or null if none
	 */
	public ErrorData getLastError();

	public String getLastRequestURL();

	public String getRemoteHost();

	public Principal getUserPrincipal();

	public String getRemoteUser();

	public int getLastResponseStatus();

	public int getHits();

	public long getRequestLastLength();

	public long getResponseLastLength();

	public long getRequestMinLength();

	public long getResponseMinLength();

	public Date getRequestMinLengthDate();

	public Date getResponseMinLengthDate();

	public long getRequestMaxLength();

	public long getResponseMaxLength();

	public Date getRequestMaxLengthDate();

	public Date getResponseMaxLengthDate();

	public long getRequestTotalLength();

	public long getResponseTotalLength();

	public double getRequestMeanLength();

	public double getResponseMeanLength();

	public double getRequestStdDevLength();

	public double getResponseStdDevLength();

	public Date getLastRequestDate();

	public Date getLastResponseDate();

	public boolean isSecure();

	public boolean isSerializable();

	public String getUserAgent();

	/**
	 * @see javax.servlet.http.HttpServletRequest#getAuthType()
	 */
	public String getAuthType();

	public String getReferer();

	public int getLastUsedTime();

	public int getMinUsedTime();

	public Date getMinUsedTimeDate();

	public int getMaxUsedTime();

	public Date getMaxUsedTimeDate();

	public int getTotalUsedTime();

	public double getMeanUsedTime();

	public double getStdDevUsedTime();

	public int getIdleTime();
	public int getTTL();
	public int getAge();
	public Object getGuessedUser();
	public Locale getGuessedLocale();

	/**
	 * cipher suite
	 * @see #isSecure()
	 */
	public String getSslCipherSuite();
	/**
	 * bit size of the algorithm
	 * @see #isSecure()
	 */
	public Integer getSslAlgorithmSize();
	// TODO see if this is not too expensive (memory) to keep
//	/**
//	 * The order of this array is defined as being in ascending order of trust. The first
//	 * certificate in the chain is the one set by the client, the next is the one used to
//	 * authenticate the first, and so on.
//	 * @see #isSecure()
//	 */
//	public X509Certificate[] getSslCertificates();

	/**
	 * @return session-specific data (user plugin)
	 */
	public List/*>*/ getSessionSpecificData();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy