1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package gov.nist.secauto.metaschema.databind.model.annotations;
7   
8   import static java.lang.annotation.ElementType.FIELD;
9   import static java.lang.annotation.ElementType.METHOD;
10  import static java.lang.annotation.RetentionPolicy.RUNTIME;
11  
12  import java.lang.annotation.Documented;
13  import java.lang.annotation.Retention;
14  import java.lang.annotation.Target;
15  
16  /**
17   * Indicates that the target of this annotation is a flag whose value should be
18   * the property/item name of the field's value in JSON or YAML.
19   * <p>
20   * Use of this annotation is mutually exclusive with the {@link BoundFieldValue}
21   * annotation.
22   */
23  // TODO: remove this and move this to MetaschemaField
24  @Documented
25  @Retention(RUNTIME)
26  @Target({ FIELD, METHOD })
27  public @interface JsonFieldValueKeyFlag {
28    // no fields
29  }