1 /*
2 * This file is part of hyphenType. hyphenType is free software: you can
3 * redistribute it and/or modify it under the terms of the GNU General Public
4 * License as published by the Free Software Foundation, either version 3 of the
5 * License, or (at your option) any later version. hyphenType is distributed in
6 * the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
7 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
8 * the GNU General Public License for more details. You should have received a
9 * copy of the GNU General Public License along with hyphenType. If not, see
10 * <http://www.gnu.org/licenses/>.
11 */
12 package org.hyphenType.datastructure.annotations;
13
14 import java.lang.annotation.ElementType;
15 import java.lang.annotation.Retention;
16 import java.lang.annotation.RetentionPolicy;
17 import java.lang.annotation.Target;
18
19 /**
20 * @author Aurelio Akira M. Matsui
21 */
22 @Retention(RetentionPolicy.RUNTIME)
23 @Target(ElementType.METHOD)
24 public @interface OptionMapValue {
25
26 String keyName();
27
28 String valueName();
29
30 String option();
31
32 @SuppressWarnings("unchecked")
33 Class valueType() default String.class;
34
35 boolean mandatory() default false;
36 }