X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=lib%2Fservlet-api%2Fjavax%2Fservlet%2Fhttp%2FHttpSessionBindingEvent.java;fp=lib%2Fservlet-api%2Fjavax%2Fservlet%2Fhttp%2FHttpSessionBindingEvent.java;h=a921719afca39ccdd229625c70e97bfb7f09b963;hp=0000000000000000000000000000000000000000;hb=454e6afd89d77c1005eae4838e74e82fae759668;hpb=c2ca9ecd6facc79051cca2e6d46f211dfd54c7b9 diff --git a/lib/servlet-api/javax/servlet/http/HttpSessionBindingEvent.java b/lib/servlet-api/javax/servlet/http/HttpSessionBindingEvent.java new file mode 100644 index 00000000..a921719a --- /dev/null +++ b/lib/servlet-api/javax/servlet/http/HttpSessionBindingEvent.java @@ -0,0 +1,111 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. 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. + */ + +package javax.servlet.http; + +/** + * Events of this type are either sent to an object that implements + * {@link HttpSessionBindingListener} when it is bound or unbound from a + * session, or to a {@link HttpSessionAttributeListener} that has been + * configured in the deployment descriptor when any attribute is bound, unbound + * or replaced in a session. + *

+ * The session binds the object by a call to + * HttpSession.setAttribute and unbinds the object by a call to + * HttpSession.removeAttribute. + * + * @see HttpSession + * @see HttpSessionBindingListener + * @see HttpSessionAttributeListener + */ +public class HttpSessionBindingEvent extends HttpSessionEvent { + + private static final long serialVersionUID = 1L; + + /* The name to which the object is being bound or unbound */ + private final String name; + + /* The object is being bound or unbound */ + private final Object value; + + /** + * Constructs an event that notifies an object that it has been bound to or + * unbound from a session. To receive the event, the object must implement + * {@link HttpSessionBindingListener}. + * + * @param session + * the session to which the object is bound or unbound + * @param name + * the name with which the object is bound or unbound + * @see #getName + * @see #getSession + */ + public HttpSessionBindingEvent(HttpSession session, String name) { + super(session); + this.name = name; + this.value = null; + } + + /** + * Constructs an event that notifies an object that it has been bound to or + * unbound from a session. To receive the event, the object must implement + * {@link HttpSessionBindingListener}. + * + * @param session + * the session to which the object is bound or unbound + * @param name + * the name with which the object is bound or unbound + * @see #getName + * @see #getSession + */ + public HttpSessionBindingEvent(HttpSession session, String name, + Object value) { + super(session); + this.name = name; + this.value = value; + } + + /** Return the session that changed. */ + @Override + public HttpSession getSession() { + return super.getSession(); + } + + /** + * Returns the name with which the attribute is bound to or unbound from the + * session. + * + * @return a string specifying the name with which the object is bound to or + * unbound from the session + */ + public String getName() { + return name; + } + + /** + * Returns the value of the attribute that has been added, removed or + * replaced. If the attribute was added (or bound), this is the value of the + * attribute. If the attribute was removed (or unbound), this is the value + * of the removed attribute. If the attribute was replaced, this is the old + * value of the attribute. + * + * @since 2.3 + */ + public Object getValue() { + return this.value; + } +}