javax.portlet.annotations.EventMethod Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of portlet-api Show documentation
Show all versions of portlet-api Show documentation
The Java Portlet API version 3.0 developed by the Java Community Process JSR-362 Expert Group.
/* 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.
*/
/*
* This source code implements specifications defined by the Java
* Community Process. In order to remain compliant with the specification
* DO NOT add / change / or delete method signatures!
*/
package javax.portlet.annotations;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
import static java.lang.annotation.RetentionPolicy.*;
/**
*
* Designates a method corresponding to the portlet API processEvent method.
* The annotated method must have the following signature:
*
* public void <methodName>(EventRequest, EventResponse)
*
* where the method name can be freely selected.
*
* The method declaration may contain a throws clause. Exceptions declared in the
* throws clause should be of type {@link javax.portlet.PortletException} or
* {@link java.io.IOException}.
* Checked exceptions of any other type will be caught, wrapped with a PortletException,
* and rethrown.
*
*
* @see javax.portlet.EventPortlet#processEvent(javax.portlet.EventRequest, javax.portlet.EventResponse) processEvent
*
*/
@Retention(RUNTIME) @Target({METHOD})
public @interface EventMethod {
/**
* The portlet name for the annotated method.
*
* @return The portlet name
*/
String portletName();
/**
*
* The processing event QName definitions supported by this method.
*
* At least one processing event QName must be specified.
*
*
* @see EventDefinition
* @see PortletQName
*
* @return The processing event QNames
*/
PortletQName[] processingEvents();
/**
*
* The QName definitions of the events published by this method.
*
*
* @see EventDefinition
* @see PortletQName
*
* @return The processing event QNames
*/
PortletQName[] publishingEvents() default {};
}