001// -------------------------------------------------------------------------------- 002// Copyright 2002-2024 Echo Three, LLC 003// 004// Licensed under the Apache License, Version 2.0 (the "License"); 005// you may not use this file except in compliance with the License. 006// You may obtain a copy of the License at 007// 008// http://www.apache.org/licenses/LICENSE-2.0 009// 010// Unless required by applicable law or agreed to in writing, software 011// distributed under the License is distributed on an "AS IS" BASIS, 012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013// See the License for the specific language governing permissions and 014// limitations under the License. 015// -------------------------------------------------------------------------------- 016 017package com.echothree.view.client.web.struts.sprout.annotation; 018 019import java.lang.annotation.ElementType; 020import java.lang.annotation.Retention; 021import java.lang.annotation.RetentionPolicy; 022import java.lang.annotation.Target; 023import org.apache.struts.config.ActionConfig; 024 025@Target(ElementType.TYPE) 026@Retention(RetentionPolicy.RUNTIME) 027public @interface SproutAction 028{ 029 String path(); 030 Class mappingClass() default ActionConfig.class; 031 String scope() default "request"; 032 String name() default ""; 033 String parameter() default ""; 034 boolean validate() default false; 035 String input() default ""; 036 SproutProperty[] properties() default { }; 037 SproutForward[] forwards() default { }; 038}