java.lang.Object
org.mule.runtime.extension.api.declaration.type.annotation.StereotypeTypeAnnotation
All Implemented Interfaces:
org.mule.metadata.api.annotation.TypeAnnotation

public class StereotypeTypeAnnotation extends Object implements org.mule.metadata.api.annotation.TypeAnnotation
A public TypeAnnotation intended to be used on ObjectFieldType types in order to communicate an associated StereotypeModel
Since:
1.0
  • Field Details

  • Constructor Details

    • StereotypeTypeAnnotation

      public StereotypeTypeAnnotation(List<org.mule.runtime.api.meta.model.stereotype.StereotypeModel> allowedStereotypes)
      Creates a new instance
      Parameters:
      allowedStereotypes - the stereotypes models
  • Method Details

    • fromDefinitions

      public static StereotypeTypeAnnotation fromDefinitions(List<Class<? extends StereotypeDefinition>> definitionClasses)
      Creates a new instance which only holds a reference to the definitionClasses. Those classes are to later be resolved into StereotypeModel instances through an invocation to the resolveStereotypes(Function) method
      Parameters:
      definitionClasses - stereotype definitions
    • fromAllowedDefinitions

      public static StereotypeTypeAnnotation fromAllowedDefinitions(List<Class<? extends org.mule.sdk.api.stereotype.StereotypeDefinition>> definitionClasses)
    • getAllowedStereotypes

      public List<org.mule.runtime.api.meta.model.stereotype.StereotypeModel> getAllowedStereotypes()
      Returns:
      The allowed stereotypes
    • resolveAllowedStereotypes

      public void resolveAllowedStereotypes(Function<Class<? extends org.mule.sdk.api.stereotype.StereotypeDefinition>,org.mule.runtime.api.meta.model.stereotype.StereotypeModel> resolver, Function<Class<? extends StereotypeDefinition>,org.mule.runtime.api.meta.model.stereotype.StereotypeModel> legacyResolver)
    • resolveAllowedStereotypes

      public void resolveAllowedStereotypes(org.mule.metadata.api.model.ObjectType objectType, BiFunction<org.mule.metadata.api.model.ObjectType,Class<? extends org.mule.sdk.api.stereotype.StereotypeDefinition>,org.mule.runtime.api.meta.model.stereotype.StereotypeModel> resolver, BiFunction<org.mule.metadata.api.model.ObjectType,Class<? extends StereotypeDefinition>,org.mule.runtime.api.meta.model.stereotype.StereotypeModel> legacyResolver)
    • resolveStereotypes

      @Deprecated public void resolveStereotypes(Function<Class<? extends StereotypeDefinition>,org.mule.runtime.api.meta.model.stereotype.StereotypeModel> resolver)
      Deprecated.
    • resolveStereotypes

      @Deprecated public void resolveStereotypes(org.mule.metadata.api.model.ObjectType objectType, BiFunction<org.mule.metadata.api.model.ObjectType,Class<? extends StereotypeDefinition>,org.mule.runtime.api.meta.model.stereotype.StereotypeModel> resolver)
    • getName

      public String getName()
      Specified by:
      getName in interface org.mule.metadata.api.annotation.TypeAnnotation
      Returns:
      NAME
    • isPublic

      public boolean isPublic()
      Specified by:
      isPublic in interface org.mule.metadata.api.annotation.TypeAnnotation
      Returns:
      true
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object