1 /* 2 * Copyright 2008 :torweg free software group 3 * 4 * This program is free software: you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation, either version 3 of the License, or 7 * (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program. If not, see <http://www.gnu.org/licenses/>. 16 * 17 */ 18 package org.torweg.pulse.annotations; 19 20 import java.lang.annotation.Documented; 21 import java.lang.annotation.ElementType; 22 import java.lang.annotation.Retention; 23 import java.lang.annotation.RetentionPolicy; 24 import java.lang.annotation.Target; 25 26 /** 27 * defines the method of the annotated 28 * {@link org.torweg.pulse.bundle.Controller} which shall be executed when the 29 * controller has no specific action. 30 * <p> 31 * Methods annotated with {@code @AnyAction} are expected to have any of the 32 * following signatures:<br/> 33 * {@code Object} methodName()<br/> 34 * {@code Object} methodName({@code Bundle})<br/> 35 * {@code Object} methodName({@code ServiceRequest})<br/> 36 * {@code Object} methodName({@code Bundle, ServiceRequest})<br/> 37 * </p> 38 * 39 * @see org.torweg.pulse.bundle.Controller 40 * @see org.torweg.pulse.service.request.Command 41 * @author Thomas Weber 42 * @version $Revision: 1933 $ 43 */ 44 @Documented 45 @Retention(RetentionPolicy.RUNTIME) 46 @Target({ ElementType.METHOD }) 47 public @interface AnyAction { 48 49 } 50