Class JavaLanguageTemplateHelper

All Implemented Interfaces:
FreemarkerLanguageTemplateHelper

public class JavaLanguageTemplateHelper extends BaseFreemarkerLanguageTemplateHelper
  • Constructor Details

    • JavaLanguageTemplateHelper

      public JavaLanguageTemplateHelper(org.apache.plc4x.plugins.codegenerator.types.definitions.TypeDefinition thisType, String protocolName, String flavorName, Map<String,org.apache.plc4x.plugins.codegenerator.types.definitions.TypeDefinition> types, Map<String,Object> options)
  • Method Details

    • packageName

      public String packageName()
    • packageName

      public String packageName(String protocolName, String languageName, String languageFlavorName)
    • getLanguageTypeNameForField

      public String getLanguageTypeNameForField(org.apache.plc4x.plugins.codegenerator.types.fields.Field field)
    • getNonPrimitiveLanguageTypeNameForField

      public String getNonPrimitiveLanguageTypeNameForField(org.apache.plc4x.plugins.codegenerator.types.fields.TypedField field)
    • getLanguageTypeNameForSpecType

      public String getLanguageTypeNameForSpecType(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference)
    • getLanguageTypeNameForTypeReference

      public String getLanguageTypeNameForTypeReference(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference)
    • getLanguageTypeNameForTypeReference

      public String getLanguageTypeNameForTypeReference(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference, boolean allowPrimitive)
    • getPlcValueTypeForTypeReference

      public String getPlcValueTypeForTypeReference(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference)
    • getNullValueForTypeReference

      public String getNullValueForTypeReference(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference)
    • getNumBits

      public int getNumBits(org.apache.plc4x.plugins.codegenerator.types.references.SimpleTypeReference simpleTypeReference)
    • getReadBufferReadMethodCall

      @Deprecated public String getReadBufferReadMethodCall(org.apache.plc4x.plugins.codegenerator.types.references.SimpleTypeReference simpleTypeReference, String valueString, org.apache.plc4x.plugins.codegenerator.types.fields.TypedField field)
      Deprecated.
    • getReadBufferReadMethodCall

      @Deprecated public String getReadBufferReadMethodCall(String logicalName, org.apache.plc4x.plugins.codegenerator.types.references.SimpleTypeReference simpleTypeReference, String valueString, org.apache.plc4x.plugins.codegenerator.types.fields.TypedField field)
      Deprecated.
    • getDataReaderCall

      public String getDataReaderCall(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference)
    • getDataReaderCall

      public String getDataReaderCall(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference, String resolverMethod)
    • getDataReaderCall

      public String getDataReaderCall(org.apache.plc4x.plugins.codegenerator.types.references.SimpleTypeReference simpleTypeReference)
    • getDataWriterCall

      public String getDataWriterCall(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference, String fieldName)
    • getEnumDataWriterCall

      public String getEnumDataWriterCall(org.apache.plc4x.plugins.codegenerator.types.references.EnumTypeReference typeReference, String fieldName, String attributeName)
    • getDataWriterCall

      public String getDataWriterCall(org.apache.plc4x.plugins.codegenerator.types.references.SimpleTypeReference simpleTypeReference)
    • getWriteBufferWriteMethodCall

      @Deprecated public String getWriteBufferWriteMethodCall(org.apache.plc4x.plugins.codegenerator.types.references.SimpleTypeReference simpleTypeReference, String fieldName, org.apache.plc4x.plugins.codegenerator.types.fields.TypedField field)
      Deprecated.
    • getWriteBufferWriteMethodCall

      @Deprecated public String getWriteBufferWriteMethodCall(String logicalName, org.apache.plc4x.plugins.codegenerator.types.references.SimpleTypeReference simpleTypeReference, String fieldName, org.apache.plc4x.plugins.codegenerator.types.fields.TypedField field, String... writerArgs)
      Deprecated.
    • isRawByteArray

      public boolean isRawByteArray(org.apache.plc4x.plugins.codegenerator.types.definitions.DiscriminatedComplexTypeDefinition currentCase)
    • getDataIoPropertyValue

      public String getDataIoPropertyValue(org.apache.plc4x.plugins.codegenerator.types.fields.PropertyField propertyField)
    • getReservedValue

      public String getReservedValue(org.apache.plc4x.plugins.codegenerator.types.fields.ReservedField reservedField)
    • toParseExpression

      public String toParseExpression(org.apache.plc4x.plugins.codegenerator.types.fields.Field field, org.apache.plc4x.plugins.codegenerator.types.references.TypeReference resultType, org.apache.plc4x.plugins.codegenerator.types.terms.Term term, List<org.apache.plc4x.plugins.codegenerator.types.definitions.Argument> parserArguments)
      Parameters:
      field - this generally only is needed in order to access field attributes such as encoding etc.
      resultType - the type the resulting expression should have
      term - the term representing the expression
      parserArguments - any parser arguments, which could be referenced in expressions (Needed for getting the type)
      Returns:
      Java code which does the things defined in 'term'
    • toSerializationExpression

      public String toSerializationExpression(org.apache.plc4x.plugins.codegenerator.types.fields.Field field, org.apache.plc4x.plugins.codegenerator.types.references.TypeReference resultType, org.apache.plc4x.plugins.codegenerator.types.terms.Term term, List<org.apache.plc4x.plugins.codegenerator.types.definitions.Argument> serializerArguments)
      Parameters:
      field - this generally only is needed in order to access field attributes such as encoding etc.
      resultType - the type the resulting expression should have
      term - the term representing the expression
      serializerArguments - any serializer arguments, which could be referenced in expressions (Needed for getting the type)
      Returns:
      Java code which does the things defined in 'term'
    • toVariableEnumAccessExpression

      public String toVariableEnumAccessExpression(org.apache.plc4x.plugins.codegenerator.types.terms.VariableLiteral variableLiteral)
    • getSizeInBits

      public String getSizeInBits(org.apache.plc4x.plugins.codegenerator.types.definitions.ComplexTypeDefinition complexTypeDefinition, List<org.apache.plc4x.plugins.codegenerator.types.definitions.Argument> parserArguments)
    • requiresCurPos

      public boolean requiresCurPos()
    • requiresStartPos

      public boolean requiresStartPos()
    • requiresVariable

      public boolean requiresVariable(org.apache.plc4x.plugins.codegenerator.types.fields.Field curField, String variable)
    • escapeValue

      public String escapeValue(org.apache.plc4x.plugins.codegenerator.types.references.TypeReference typeReference, String valueString)
    • getFieldOptions

      public String getFieldOptions(org.apache.plc4x.plugins.codegenerator.types.fields.TypedField field, List<org.apache.plc4x.plugins.codegenerator.types.definitions.Argument> parserArguments)
    • isBigIntegerSource

      public boolean isBigIntegerSource(org.apache.plc4x.plugins.codegenerator.types.terms.Term term)
    • needsLongMarker

      public boolean needsLongMarker(Optional<org.apache.plc4x.plugins.codegenerator.types.references.SimpleTypeReference> baseTypeReference)
    • isGeneratePropertiesForParserArguments

      public boolean isGeneratePropertiesForParserArguments()
    • isGeneratePropertiesForReservedFields

      public boolean isGeneratePropertiesForReservedFields()
    • getExternalTypeImports

      public String getExternalTypeImports()
    • isVarduintField

      public boolean isVarduintField(org.apache.plc4x.plugins.codegenerator.types.fields.Field field)
    • isVardintField

      public boolean isVardintField(org.apache.plc4x.plugins.codegenerator.types.fields.Field field)