Annotation Type DeepPersonalData


  • @Retention(RUNTIME)
    @Target({ANNOTATION_TYPE,FIELD})
    @Repeatable(DeepPersonalDataContainer.class)
    public @interface DeepPersonalData
    Field annotation that marks the field as containing an object that contains personal data. This triggers the Axon Data Protection Module to process the value held in this field, examining it for annotations and encrypting accordingly. The annotation can also be used as a meta-annotation on some other application-specific annotation.

    Please see the Axon Data Protection Module guide for a detailed discussion of the usage of this annotation.

    For use in Scala programs, there is a deepPersonalData type alias for this annotation, defined in the package object of the api package. This alias has the scala.annotation.meta.field meta-annotation which allows it to be directly used on Scala class parameters, including case classes.

    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      Scope scope
      Get the Scope of the annotation.
    • Element Detail

      • scope

        Scope scope
        Get the Scope of the annotation. For non-Map fields, this should always be DEFAULT, whereas for Map fields it should always be KEY, VALUE, or BOTH.
        Returns:
        the scope
        Default:
        io.axoniq.dataprotection.api.Scope.DEFAULT