java/sql-dk/src/info/globalcode/sql/dk/configuration/PropertyDeclaration.java
author František Kučera <franta-hg@frantovo.cz>
Sat, 15 Aug 2015 10:04:28 +0200
branchv_0
changeset 205 d6624c3b146a
child 207 2bba68ef47c1
permissions -rw-r--r--
property annotations for documentation of formatter properties
franta-hg@205
     1
/**
franta-hg@205
     2
 * SQL-DK
franta-hg@205
     3
 * Copyright © 2015 František Kučera (frantovo.cz)
franta-hg@205
     4
 *
franta-hg@205
     5
 * This program is free software: you can redistribute it and/or modify
franta-hg@205
     6
 * it under the terms of the GNU General Public License as published by
franta-hg@205
     7
 * the Free Software Foundation, either version 3 of the License, or
franta-hg@205
     8
 * (at your option) any later version.
franta-hg@205
     9
 *
franta-hg@205
    10
 * This program is distributed in the hope that it will be useful,
franta-hg@205
    11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
franta-hg@205
    12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
franta-hg@205
    13
 * GNU General Public License for more details.
franta-hg@205
    14
 *
franta-hg@205
    15
 * You should have received a copy of the GNU General Public License
franta-hg@205
    16
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
franta-hg@205
    17
 */
franta-hg@205
    18
package info.globalcode.sql.dk.configuration;
franta-hg@205
    19
franta-hg@205
    20
import java.lang.annotation.ElementType;
franta-hg@205
    21
import java.lang.annotation.Repeatable;
franta-hg@205
    22
import java.lang.annotation.Retention;
franta-hg@205
    23
import static java.lang.annotation.RetentionPolicy.RUNTIME;
franta-hg@205
    24
import java.lang.annotation.Target;
franta-hg@205
    25
franta-hg@205
    26
/**
franta-hg@205
    27
 *
franta-hg@205
    28
 * @author Ing. František Kučera (frantovo.cz)
franta-hg@205
    29
 */
franta-hg@205
    30
@Retention(RUNTIME)
franta-hg@205
    31
@Target({ElementType.TYPE})
franta-hg@205
    32
@Repeatable(PropertyDeclarations.class)
franta-hg@205
    33
public @interface PropertyDeclaration {
franta-hg@205
    34
franta-hg@205
    35
	/**
franta-hg@205
    36
	 * @return name of the property
franta-hg@205
    37
	 */
franta-hg@205
    38
	String name();
franta-hg@205
    39
franta-hg@205
    40
	/**
franta-hg@205
    41
	 * @return data type of the value: String, numbers, Boolean or Enum
franta-hg@205
    42
	 */
franta-hg@205
    43
	Class type();
franta-hg@205
    44
franta-hg@205
    45
	/**
franta-hg@205
    46
	 * @return documentation for the users
franta-hg@205
    47
	 */
franta-hg@205
    48
	String description();
franta-hg@205
    49
}