All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.opencb.commons.annotations.DataField Maven / Gradle / Ivy

The newest version!
package org.opencb.commons.annotations;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD})
public @interface DataField {

    /**
     * @return id of the field.
     */
    String id() default "";

    @Deprecated
    String name() default "";

    String[] alias() default {};

    String[] uncommentedClasses() default {};

    boolean required() default false;

    boolean indexed() default false;

    boolean managed() default false;

    boolean immutable() default false;

    boolean unique() default false;

    boolean deprecated() default false;

    // boolean navigate() default true;

    String defaultValue() default "";

    /**
     * @return Version when this field was added, eg. "2.1"
     */
    String since() default "";

    String[] dependsOn() default {};

    String description() default "";

//    @Deprecated
//    Class dataTypeClass() default Void.class;
//
//    @Deprecated
//    UpdateParam update() default @UpdateParam;
//
//    @Deprecated
//    CreateParam create() default @CreateParam;
//
//    @Deprecated
//    SearchParam search() default @SearchParam;
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy