package com.sas.unravl.annotations; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** * An annotation for UnRAVLBodygenerator plugin classes, which will allow * UnRAVLRuntime to associate a string (the annotation value) with this class * within "body" element. For example, the class * com.sas.unravl.generators.JsonRequestBodyGenerator uses the annotation * * <pre> * {@literal @}UnRAVLRequestBodyGeneratorPlugin("json") * </pre> * * so that UnRAVL scripts which use the "body" scriptlet * * <pre> * "body" : { "json" : { ... } } * </pre> * * can execute that body generator by instantiating a JsonRequestBodyGenerator. * * @author DavidBiesack@sas.com */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.TYPE) public @interface UnRAVLRequestBodyGeneratorPlugin { /** * The tags by which this plugin is named in UnRAVL scripts * * @return the plugin tags */ String[] value(); }