Class SimpleFromAvroTransformer

All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware, ExpressionCapable, GenericTransformer<org.springframework.messaging.Message<?>,org.springframework.messaging.Message<?>>, NamedComponent, Transformer

public class SimpleFromAvroTransformer extends AbstractTransformer implements org.springframework.beans.factory.BeanClassLoaderAware
An Apache Avro transformer to create generated SpecificRecord objects from byte[].
Since:
5.2
  • Constructor Details

    • SimpleFromAvroTransformer

      public SimpleFromAvroTransformer(Class<? extends org.apache.avro.specific.SpecificRecord> defaultType)
      Construct an instance with the supplied default type to create.
      Parameters:
      defaultType - the type.
  • Method Details

    • setBeanClassLoader

      public void setBeanClassLoader(ClassLoader classLoader)
      Specified by:
      setBeanClassLoader in interface org.springframework.beans.factory.BeanClassLoaderAware
    • typeExpression

      public SimpleFromAvroTransformer typeExpression(org.springframework.expression.Expression expression)
      Set the expression to evaluate against the message to determine the type. Default headers['avro_type'].
      Parameters:
      expression - the expression.
      Returns:
      the transformer
    • typeExpression

      public SimpleFromAvroTransformer typeExpression(String expression)
      Set the expression to evaluate against the message to determine the type id. Default headers['avro_type'].
      Parameters:
      expression - the expression.
      Returns:
      the transformer
    • setTypeExpression

      public void setTypeExpression(org.springframework.expression.Expression expression)
      Set the expression to evaluate against the message to determine the type. Default headers['avro_type'].
      Parameters:
      expression - the expression.
    • setTypeExpressionString

      public void setTypeExpressionString(String expression)
      Set the expression to evaluate against the message to determine the type id. Default headers['avro_type'].
      Parameters:
      expression - the expression.
    • onInit

      protected void onInit()
      Description copied from class: IntegrationObjectSupport
      Subclasses may implement this for initialization logic.
      Overrides:
      onInit in class IntegrationObjectSupport
    • doTransform

      protected Object doTransform(org.springframework.messaging.Message<?> message)
      Description copied from class: AbstractTransformer
      Subclasses must implement this method to provide the transformation logic. If the return value is itself a Message, it will be used as the result. Otherwise, any non-null return value will be used as the payload of the result Message.
      Specified by:
      doTransform in class AbstractTransformer
      Parameters:
      message - The message.
      Returns:
      The result of the transformation.