Class ColumnDefinitionParserListener

java.lang.Object
io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
io.debezium.connector.mariadb.antlr.listener.ColumnDefinitionParserListener
All Implemented Interfaces:
io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener, org.antlr.v4.runtime.tree.ParseTreeListener

public class ColumnDefinitionParserListener extends io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
Parser listener for column definitions.
Author:
Chris Cranford
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private io.debezium.relational.ColumnEditor
     
    private final io.debezium.antlr.DataTypeResolver
     
     
    private static final Pattern
     
    private final List<org.antlr.v4.runtime.tree.ParseTreeListener>
     
    private static final org.slf4j.Logger
     
     
    private final MariaDbAntlrDdlParser
     
    private final io.debezium.relational.TableEditor
     
    private boolean
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    ColumnDefinitionParserListener(io.debezium.relational.TableEditor tableEditor, io.debezium.relational.ColumnEditor columnEditor, MariaDbAntlrDdlParser parser, List<org.antlr.v4.runtime.tree.ParseTreeListener> listeners)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    enterAutoIncrementColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.AutoIncrementColumnConstraintContext ctx)
     
    void
    enterColumnDefinition(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.ColumnDefinitionContext ctx)
     
    void
    enterCommentColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.CommentColumnConstraintContext ctx)
     
    void
    enterNullNotnull(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.NullNotnullContext ctx)
     
    void
    enterPrimaryKeyColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.PrimaryKeyColumnConstraintContext ctx)
     
    void
    enterSerialDefaultColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.SerialDefaultColumnConstraintContext ctx)
     
    void
    enterUniqueKeyColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.UniqueKeyColumnConstraintContext ctx)
     
    void
    exitColumnDefinition(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.ColumnDefinitionContext ctx)
     
    io.debezium.relational.Column
     
    io.debezium.relational.ColumnEditor
     
    private Integer
    parseLength(String lengthStr)
     
    private void
    resolveColumnDataType(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.DataTypeContext dataTypeContext)
     
    private void
     
    void
    setColumnEditor(io.debezium.relational.ColumnEditor columnEditor)
     

    Methods inherited from class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener

    enterAdministrationStatement, enterAggregateFunctionCall, enterAggregateWindowedFunction, enterAlterByAddCheckTableConstraint, enterAlterByAddColumn, enterAlterByAddColumns, enterAlterByAddDefinitions, enterAlterByAddForeignKey, enterAlterByAddIndex, enterAlterByAddPartition, enterAlterByAddPrimaryKey, enterAlterByAddSpecialIndex, enterAlterByAddUniqueKey, enterAlterByAlterIndexVisibility, enterAlterByAnalyzePartition, enterAlterByChangeColumn, enterAlterByChangeDefault, enterAlterByCheckPartition, enterAlterByCoalescePartition, enterAlterByConvertCharset, enterAlterByDefaultCharset, enterAlterByDisableKeys, enterAlterByDiscardPartition, enterAlterByDiscardTablespace, enterAlterByDropColumn, enterAlterByDropConstraintCheck, enterAlterByDropForeignKey, enterAlterByDropIndex, enterAlterByDropPartition, enterAlterByDropPrimaryKey, enterAlterByEnableKeys, enterAlterByExchangePartition, enterAlterByForce, enterAlterByImportPartition, enterAlterByImportTablespace, enterAlterByLock, enterAlterByModifyColumn, enterAlterByOptimizePartition, enterAlterByOrder, enterAlterByRebuildPartition, enterAlterByRemovePartitioning, enterAlterByRename, enterAlterByRenameColumn, enterAlterByRenameIndex, enterAlterByReorganizePartition, enterAlterByRepairPartition, enterAlterBySetAlgorithm, enterAlterByTableOption, enterAlterByTruncatePartition, enterAlterByUpgradePartitioning, enterAlterByValidate, enterAlterEvent, enterAlterFunction, enterAlterInstance, enterAlterLogfileGroup, enterAlterPartition, enterAlterProcedure, enterAlterSequence, enterAlterServer, enterAlterSimpleDatabase, enterAlterTable, enterAlterTablespace, enterAlterUpgradeName, enterAlterUserMysqlV56, enterAlterUserMysqlV80, enterAlterView, enterAnalyzeTable, enterAssignmentField, enterAtomTableItem, enterAuthPlugin, enterBeginWork, enterBetweenPredicate, enterBinaryComparisonPredicate, enterBinaryExpressionAtom, enterBinlogStatement, enterBitExpressionAtom, enterBitOperator, enterBlockStatement, enterBooleanLiteral, enterBoolMasterOption, enterCacheIndexStatement, enterCallStatement, enterCaseAlternative, enterCaseExpressionFunctionCall, enterCaseFuncAlternative, enterCaseFunctionCall, enterCaseStatement, enterChangeMaster, enterChangeReplicationFilter, enterChannelFlushOption, enterChannelOption, enterCharFunctionCall, enterCharSet, enterCharsetName, enterCharsetNameBase, enterCheckColumnConstraint, enterChecksumTable, enterCheckTable, enterCheckTableConstraint, enterCheckTableOption, enterCloseCursor, enterCollateColumnConstraint, enterCollateExpressionAtom, enterCollationName, enterCollectionDataType, enterCollectionOption, enterCollectionOptions, enterColumnCreateTable, enterColumnDeclaration, enterCommitWork, enterCommonTableExpressions, enterComparisonOperator, enterCompoundStatement, enterConstant, enterConstantExpressionAtom, enterConstants, enterConstraintDeclaration, enterConvertedDataType, enterCopyCreateTable, enterCreateDatabase, enterCreateDatabaseOption, enterCreateDefinitions, enterCreateEvent, enterCreateFunction, enterCreateIndex, enterCreateLogfileGroup, enterCreateProcedure, enterCreateRole, enterCreateSequence, enterCreateServer, enterCreateTablespaceInnodb, enterCreateTablespaceNdb, enterCreateTrigger, enterCreateUdfunction, enterCreateUserMysqlV56, enterCreateUserMysqlV80, enterCreateView, enterCteColumnName, enterCteName, enterCurrentSchemaPriviLevel, enterCurrentTimestamp, enterCurrentUserExpression, enterDataTypeBase, enterDataTypeFunctionCall, enterDdlStatement, enterDeallocatePrepare, enterDecimalLiteral, enterDecimalMasterOption, enterDeclareCondition, enterDeclareCursor, enterDeclareHandler, enterDeclareVariable, enterDefaultAuthConnectionOption, enterDefaultColumnConstraint, enterDefaultValue, enterDefiniteFullTablePrivLevel, enterDefiniteFullTablePrivLevel2, enterDefiniteSchemaPrivLevel, enterDefiniteTablePrivLevel, enterDeleteStatement, enterDescribeConnection, enterDescribeStatements, enterDetailRevoke, enterDiagnosticsConditionInformationName, enterDiagnosticsStatement, enterDimensionDataType, enterDmlStatement, enterDoDbReplication, enterDoStatement, enterDoTableReplication, enterDottedId, enterDropDatabase, enterDropEvent, enterDropFunction, enterDropIndex, enterDropLogfileGroup, enterDropProcedure, enterDropRole, enterDropSequence, enterDropServer, enterDropTable, enterDropTablespace, enterDropTrigger, enterDropUser, enterDropView, enterElifAlternative, enterEmptyStatement_, enterEnableType, enterEncryptedLiteral, enterEngineName, enterEngineNameBase, enterEveryRule, enterExecuteStatement, enterExistsExpressionAtom, enterExplainForConnection, enterExpressionAtomPredicate, enterExpressionOrDefault, enterExpressions, enterExpressionsWithDefaults, enterExtractFunctionCall, enterFetchCursor, enterFileSizeLiteral, enterFlushStatement, enterFlushTableOption, enterForeignKeyTableConstraint, enterFormatColumnConstraint, enterFormatJsonStatement, enterFrameBetween, enterFrameClause, enterFrameExtent, enterFrameRange, enterFrameUnits, enterFromClause, enterFullColumnName, enterFullColumnNameExpressionAtom, enterFullDescribeStatement, enterFullId, enterFunctionArg, enterFunctionArgs, enterFunctionCallExpressionAtom, enterFunctionNameBase, enterFunctionParameter, enterGeneratedColumnConstraint, enterGetFormatFunctionCall, enterGlobalPrivLevel, enterGrantProxy, enterGrantStatement, enterGroupByClause, enterGroupByItem, enterGtidsUntilOption, enterGtuidSet, enterHandlerCloseStatement, enterHandlerConditionCode, enterHandlerConditionException, enterHandlerConditionName, enterHandlerConditionNotfound, enterHandlerConditionState, enterHandlerConditionWarning, enterHandlerOpenStatement, enterHandlerReadIndexStatement, enterHandlerReadStatement, enterHandlerStatement, enterHashAuthOption, enterHavingClause, enterHelpStatement, enterHexadecimalLiteral, enterHostName, enterIfExists, enterIfNotExists, enterIfStatement, enterIgnoreDbReplication, enterIgnoreTableReplication, enterIndexColumnName, enterIndexColumnNames, enterIndexDeclaration, enterIndexHint, enterIndexHintType, enterIndexOption, enterIndexType, enterInnerJoin, enterInPredicate, enterInsertStatement, enterInsertStatementValue, enterInstallPlugin, enterIntervalExpr, enterIntervalExpressionAtom, enterIntervalSchedule, enterIntervalType, enterIntervalTypeBase, enterInvisibilityColumnConstraint, enterIsExpression, enterIsNullPredicate, enterIterateStatement, enterJsonColumn, enterJsonColumnList, enterJsonExpressionAtom, enterJsonMemberOfPredicate, enterJsonOnEmpty, enterJsonOnError, enterJsonOperator, enterJsonTable, enterJsonValueFunctionCall, enterKeywordsCanBeId, enterKillStatement, enterLateralStatement, enterLeaveStatement, enterLengthOneDimension, enterLengthTwoDimension, enterLengthTwoOptionalDimension, enterLevelInWeightListElement, enterLevelWeightList, enterLevelWeightRange, enterLikePredicate, enterLimitClause, enterLimitClauseAtom, enterLoadDataStatement, enterLoadedTableIndexes, enterLoadIndexIntoCache, enterLoadXmlStatement, enterLockAction, enterLockClause, enterLockOption, enterLockTableElement, enterLockTables, enterLogicalExpression, enterLogicalOperator, enterLongVarbinaryDataType, enterLongVarcharDataType, enterLoopStatement, enterMasterBoolOption, enterMasterDecimalOption, enterMasterLogUntilOption, enterMasterRealOption, enterMasterStringOption, enterMasterUidListOption, enterMathExpressionAtom, enterMathOperator, enterModule, enterModuleAuthOption, enterMultipleDeleteStatement, enterMultipleUpdateStatement, enterMysqlVariable, enterMysqlVariableExpressionAtom, enterNationalStringDataType, enterNationalVaryingStringDataType, enterNaturalJoin, enterNestedExpressionAtom, enterNestedRowExpressionAtom, enterNonAggregateFunctionCall, enterNonAggregateWindowedFunction, enterNotExpression, enterNullColumnConstraint, enterOpenCursor, enterOptimizeTable, enterOrderByClause, enterOrderByExpression, enterOrReplace, enterOuterJoin, enterOverClause, enterOwnerStatement, enterParenthesisSelect, enterPartitionClause, enterPartitionComparison, enterPartitionDefinerAtom, enterPartitionDefinerVector, enterPartitionDefinitions, enterPartitionFunctionHash, enterPartitionFunctionKey, enterPartitionFunctionList, enterPartitionFunctionRange, enterPartitionListAtom, enterPartitionListVector, enterPartitionOptionComment, enterPartitionOptionDataDirectory, enterPartitionOptionEngine, enterPartitionOptionIndexDirectory, enterPartitionOptionMaxRows, enterPartitionOptionMinRows, enterPartitionOptionNodeGroup, enterPartitionOptionTablespace, enterPartitionSimple, enterPasswordConnectionOption, enterPasswordFunctionCall, enterPasswordFunctionClause, enterPasswordModuleOption, enterPluginDirConnectionOption, enterPositionFunctionCall, enterPreciseSchedule, enterPredicateExpression, enterPreparedStatement, enterPrepareStatement, enterPrimaryKeyTableConstraint, enterPrivelegeClause, enterPrivilege, enterPrivilegesBase, enterProcedureParameter, enterProcedureSqlStatement, enterPurgeBinaryLogs, enterQueryCreateTable, enterQueryExpression, enterQueryExpressionNointo, enterQuerySpecification, enterQuerySpecificationNointo, enterReferenceAction, enterReferenceColumnConstraint, enterReferenceControlType, enterReferenceDefinition, enterRegexpPredicate, enterRelayLogUntilOption, enterReleaseStatement, enterRenameTable, enterRenameTableClause, enterRenameUser, enterRenameUserClause, enterRepairTable, enterRepeatStatement, enterReplaceStatement, enterReplicationStatement, enterResetMaster, enterResetSlave, enterResetStatement, enterResignalStatement, enterReturnStatement, enterRevokeProxy, enterRewriteDbReplication, enterRoleName, enterRoleOption, enterRoleRevoke, enterRollbackStatement, enterRollbackWork, enterRoot, enterRoutineBehavior, enterRoutineBody, enterRoutineComment, enterRoutineData, enterRoutineLanguage, enterRoutineSecurity, enterSavepointStatement, enterScalarFunctionCall, enterScalarFunctionName, enterSelectColumnElement, enterSelectElements, enterSelectExpressionElement, enterSelectFieldsInto, enterSelectFunctionElement, enterSelectIntoDumpFile, enterSelectIntoTextFile, enterSelectIntoVariables, enterSelectLinesInto, enterSelectSpec, enterSelectStarElement, enterSequenceSpec, enterServerOption, enterSetAutocommit, enterSetAutocommitStatement, enterSetCharset, enterSetNames, enterSetNewValueInsideTrigger, enterSetPassword, enterSetPasswordStatement, enterSetRole, enterSetStatementFor, enterSetTransaction, enterSetTransactionStatement, enterSetVariable, enterShortRevoke, enterShowBinLogEvents, enterShowColumns, enterShowCommonEntity, enterShowCountErrors, enterShowCreateDb, enterShowCreateFullIdObject, enterShowCreatePackage, enterShowCreateUser, enterShowEngine, enterShowErrors, enterShowExplain, enterShowFilter, enterShowGlobalInfo, enterShowGlobalInfoClause, enterShowGrants, enterShowIndexes, enterShowInnoDBStatus, enterShowMasterLogs, enterShowObjectFilter, enterShowOpenTables, enterShowPackageStatus, enterShowProfile, enterShowProfileType, enterShowRelayLogEvents, enterShowRoutine, enterShowSchemaEntity, enterShowSchemaFilter, enterShowSlaveStatus, enterShowUserstatPlugin, enterShutdownStatement, enterSignalConditionInformation, enterSignalStatement, enterSimpleAuthOption, enterSimpleDataType, enterSimpleDescribeStatement, enterSimpleFlushOption, enterSimpleFunctionCall, enterSimpleId, enterSimpleIndexDeclaration, enterSimpleSelect, enterSimpleStrings, enterSimpleUserName, enterSingleDeleteStatement, enterSingleUpdateStatement, enterSoundsLikePredicate, enterSpatialDataType, enterSpecialIndexDeclaration, enterSpecificFunctionCall, enterSqlGapsUntilOption, enterSqlStatement, enterSqlStatements, enterStartGroupReplication, enterStartSlave, enterStartTransaction, enterStopGroupReplication, enterStopSlave, enterStorageColumnConstraint, enterStraightJoin, enterStringAuthOption, enterStringDataType, enterStringLiteral, enterStringMasterOption, enterSubpartitionDefinition, enterSubPartitionFunctionHash, enterSubPartitionFunctionKey, enterSubqueryComparisonPredicate, enterSubqueryExpressionAtom, enterSubqueryTableItem, enterSubstrFunctionCall, enterTableFlushOption, enterTableIndexes, enterTableJson, enterTableName, enterTableOptionAutoextendSize, enterTableOptionAutoIncrement, enterTableOptionAverage, enterTableOptionCharset, enterTableOptionChecksum, enterTableOptionCollate, enterTableOptionComment, enterTableOptionCompression, enterTableOptionConnection, enterTableOptionDataDirectory, enterTableOptionDelay, enterTableOptionEncrypted, enterTableOptionEncryption, enterTableOptionEncryptionKeyId, enterTableOptionEngine, enterTableOptionEngineAttribute, enterTableOptionIndexDirectory, enterTableOptionInsertMethod, enterTableOptionKeyBlockSize, enterTableOptionMaxRows, enterTableOptionMinRows, enterTableOptionPackKeys, enterTableOptionPageCompressed, enterTableOptionPageCompressionLevel, enterTableOptionPassword, enterTableOptionPersistent, enterTableOptionRecalculation, enterTableOptionRowFormat, enterTableOptionSamplePage, enterTableOptionSecondaryEngineAttribute, enterTableOptionStartTransaction, enterTableOptionTablespace, enterTableOptionTableType, enterTableOptionTransactional, enterTableOptionUnion, enterTablePair, enterTables, enterTableSourceBase, enterTableSourceNested, enterTableSources, enterTableSourcesItem, enterTablespaceStorage, enterTableType, enterThreadType, enterTimestampValue, enterTlsOption, enterTransactionLevel, enterTransactionLevelBase, enterTransactionMode, enterTransactionOption, enterTransactionStatement, enterTrimFunctionCall, enterTruncateTable, enterUdfFunctionCall, enterUid, enterUidList, enterUnaryExpressionAtom, enterUnaryOperator, enterUninstallPlugin, enterUnionParenthesis, enterUnionParenthesisSelect, enterUnionSelect, enterUnionStatement, enterUniqueKeyTableConstraint, enterUnlockTables, enterUpdatedElement, enterUpdateStatement, enterUserConnectionOption, enterUserLockOption, enterUserName, enterUserPasswordOption, enterUserResourceOption, enterUserSpecification, enterUserVariables, enterUseStatement, enterUtilityStatement, enterUuidSet, enterValuesFunctionCall, enterValuesStatement, enterVariableAssignExpressionAtom, enterVariableClause, enterVisibilityColumnConstraint, enterWaitNowaitClause, enterWeightFunctionCall, enterWhileStatement, enterWildDoTableReplication, enterWildIgnoreTableReplication, enterWindowClause, enterWindowName, enterWindowSpec, enterWithClause, enterWithLateralStatement, enterXaCommitWork, enterXaEndTransaction, enterXaPrepareStatement, enterXaRecoverWork, enterXaRollbackWork, enterXaStartTransaction, enterXid, enterXuidStringId, exitAdministrationStatement, exitAggregateFunctionCall, exitAggregateWindowedFunction, exitAlterByAddCheckTableConstraint, exitAlterByAddColumn, exitAlterByAddColumns, exitAlterByAddDefinitions, exitAlterByAddForeignKey, exitAlterByAddIndex, exitAlterByAddPartition, exitAlterByAddPrimaryKey, exitAlterByAddSpecialIndex, exitAlterByAddUniqueKey, exitAlterByAlterIndexVisibility, exitAlterByAnalyzePartition, exitAlterByChangeColumn, exitAlterByChangeDefault, exitAlterByCheckPartition, exitAlterByCoalescePartition, exitAlterByConvertCharset, exitAlterByDefaultCharset, exitAlterByDisableKeys, exitAlterByDiscardPartition, exitAlterByDiscardTablespace, exitAlterByDropColumn, exitAlterByDropConstraintCheck, exitAlterByDropForeignKey, exitAlterByDropIndex, exitAlterByDropPartition, exitAlterByDropPrimaryKey, exitAlterByEnableKeys, exitAlterByExchangePartition, exitAlterByForce, exitAlterByImportPartition, exitAlterByImportTablespace, exitAlterByLock, exitAlterByModifyColumn, exitAlterByOptimizePartition, exitAlterByOrder, exitAlterByRebuildPartition, exitAlterByRemovePartitioning, exitAlterByRename, exitAlterByRenameColumn, exitAlterByRenameIndex, exitAlterByReorganizePartition, exitAlterByRepairPartition, exitAlterBySetAlgorithm, exitAlterByTableOption, exitAlterByTruncatePartition, exitAlterByUpgradePartitioning, exitAlterByValidate, exitAlterEvent, exitAlterFunction, exitAlterInstance, exitAlterLogfileGroup, exitAlterPartition, exitAlterProcedure, exitAlterSequence, exitAlterServer, exitAlterSimpleDatabase, exitAlterTable, exitAlterTablespace, exitAlterUpgradeName, exitAlterUserMysqlV56, exitAlterUserMysqlV80, exitAlterView, exitAnalyzeTable, exitAssignmentField, exitAtomTableItem, exitAuthPlugin, exitAutoIncrementColumnConstraint, exitBeginWork, exitBetweenPredicate, exitBinaryComparisonPredicate, exitBinaryExpressionAtom, exitBinlogStatement, exitBitExpressionAtom, exitBitOperator, exitBlockStatement, exitBooleanLiteral, exitBoolMasterOption, exitCacheIndexStatement, exitCallStatement, exitCaseAlternative, exitCaseExpressionFunctionCall, exitCaseFuncAlternative, exitCaseFunctionCall, exitCaseStatement, exitChangeMaster, exitChangeReplicationFilter, exitChannelFlushOption, exitChannelOption, exitCharFunctionCall, exitCharSet, exitCharsetName, exitCharsetNameBase, exitCheckColumnConstraint, exitChecksumTable, exitCheckTable, exitCheckTableConstraint, exitCheckTableOption, exitCloseCursor, exitCollateColumnConstraint, exitCollateExpressionAtom, exitCollationName, exitCollectionDataType, exitCollectionOption, exitCollectionOptions, exitColumnCreateTable, exitColumnDeclaration, exitCommentColumnConstraint, exitCommitWork, exitCommonTableExpressions, exitComparisonOperator, exitCompoundStatement, exitConstant, exitConstantExpressionAtom, exitConstants, exitConstraintDeclaration, exitConvertedDataType, exitCopyCreateTable, exitCreateDatabase, exitCreateDatabaseOption, exitCreateDefinitions, exitCreateEvent, exitCreateFunction, exitCreateIndex, exitCreateLogfileGroup, exitCreateProcedure, exitCreateRole, exitCreateSequence, exitCreateServer, exitCreateTablespaceInnodb, exitCreateTablespaceNdb, exitCreateTrigger, exitCreateUdfunction, exitCreateUserMysqlV56, exitCreateUserMysqlV80, exitCreateView, exitCteColumnName, exitCteName, exitCurrentSchemaPriviLevel, exitCurrentTimestamp, exitCurrentUserExpression, exitDataTypeBase, exitDataTypeFunctionCall, exitDdlStatement, exitDeallocatePrepare, exitDecimalLiteral, exitDecimalMasterOption, exitDeclareCondition, exitDeclareCursor, exitDeclareHandler, exitDeclareVariable, exitDefaultAuthConnectionOption, exitDefaultColumnConstraint, exitDefaultValue, exitDefiniteFullTablePrivLevel, exitDefiniteFullTablePrivLevel2, exitDefiniteSchemaPrivLevel, exitDefiniteTablePrivLevel, exitDeleteStatement, exitDescribeConnection, exitDescribeStatements, exitDetailRevoke, exitDiagnosticsConditionInformationName, exitDiagnosticsStatement, exitDimensionDataType, exitDmlStatement, exitDoDbReplication, exitDoStatement, exitDoTableReplication, exitDottedId, exitDropDatabase, exitDropEvent, exitDropFunction, exitDropIndex, exitDropLogfileGroup, exitDropProcedure, exitDropRole, exitDropSequence, exitDropServer, exitDropTable, exitDropTablespace, exitDropTrigger, exitDropUser, exitDropView, exitElifAlternative, exitEmptyStatement_, exitEnableType, exitEncryptedLiteral, exitEngineName, exitEngineNameBase, exitEveryRule, exitExecuteStatement, exitExistsExpressionAtom, exitExplainForConnection, exitExpressionAtomPredicate, exitExpressionOrDefault, exitExpressions, exitExpressionsWithDefaults, exitExtractFunctionCall, exitFetchCursor, exitFileSizeLiteral, exitFlushStatement, exitFlushTableOption, exitForeignKeyTableConstraint, exitFormatColumnConstraint, exitFormatJsonStatement, exitFrameBetween, exitFrameClause, exitFrameExtent, exitFrameRange, exitFrameUnits, exitFromClause, exitFullColumnName, exitFullColumnNameExpressionAtom, exitFullDescribeStatement, exitFullId, exitFunctionArg, exitFunctionArgs, exitFunctionCallExpressionAtom, exitFunctionNameBase, exitFunctionParameter, exitGeneratedColumnConstraint, exitGetFormatFunctionCall, exitGlobalPrivLevel, exitGrantProxy, exitGrantStatement, exitGroupByClause, exitGroupByItem, exitGtidsUntilOption, exitGtuidSet, exitHandlerCloseStatement, exitHandlerConditionCode, exitHandlerConditionException, exitHandlerConditionName, exitHandlerConditionNotfound, exitHandlerConditionState, exitHandlerConditionWarning, exitHandlerOpenStatement, exitHandlerReadIndexStatement, exitHandlerReadStatement, exitHandlerStatement, exitHashAuthOption, exitHavingClause, exitHelpStatement, exitHexadecimalLiteral, exitHostName, exitIfExists, exitIfNotExists, exitIfStatement, exitIgnoreDbReplication, exitIgnoreTableReplication, exitIndexColumnName, exitIndexColumnNames, exitIndexDeclaration, exitIndexHint, exitIndexHintType, exitIndexOption, exitIndexType, exitInnerJoin, exitInPredicate, exitInsertStatement, exitInsertStatementValue, exitInstallPlugin, exitIntervalExpr, exitIntervalExpressionAtom, exitIntervalSchedule, exitIntervalType, exitIntervalTypeBase, exitInvisibilityColumnConstraint, exitIsExpression, exitIsNullPredicate, exitIterateStatement, exitJsonColumn, exitJsonColumnList, exitJsonExpressionAtom, exitJsonMemberOfPredicate, exitJsonOnEmpty, exitJsonOnError, exitJsonOperator, exitJsonTable, exitJsonValueFunctionCall, exitKeywordsCanBeId, exitKillStatement, exitLateralStatement, exitLeaveStatement, exitLengthOneDimension, exitLengthTwoDimension, exitLengthTwoOptionalDimension, exitLevelInWeightListElement, exitLevelWeightList, exitLevelWeightRange, exitLikePredicate, exitLimitClause, exitLimitClauseAtom, exitLoadDataStatement, exitLoadedTableIndexes, exitLoadIndexIntoCache, exitLoadXmlStatement, exitLockAction, exitLockClause, exitLockOption, exitLockTableElement, exitLockTables, exitLogicalExpression, exitLogicalOperator, exitLongVarbinaryDataType, exitLongVarcharDataType, exitLoopStatement, exitMasterBoolOption, exitMasterDecimalOption, exitMasterLogUntilOption, exitMasterRealOption, exitMasterStringOption, exitMasterUidListOption, exitMathExpressionAtom, exitMathOperator, exitModule, exitModuleAuthOption, exitMultipleDeleteStatement, exitMultipleUpdateStatement, exitMysqlVariable, exitMysqlVariableExpressionAtom, exitNationalStringDataType, exitNationalVaryingStringDataType, exitNaturalJoin, exitNestedExpressionAtom, exitNestedRowExpressionAtom, exitNonAggregateFunctionCall, exitNonAggregateWindowedFunction, exitNotExpression, exitNullColumnConstraint, exitNullNotnull, exitOpenCursor, exitOptimizeTable, exitOrderByClause, exitOrderByExpression, exitOrReplace, exitOuterJoin, exitOverClause, exitOwnerStatement, exitParenthesisSelect, exitPartitionClause, exitPartitionComparison, exitPartitionDefinerAtom, exitPartitionDefinerVector, exitPartitionDefinitions, exitPartitionFunctionHash, exitPartitionFunctionKey, exitPartitionFunctionList, exitPartitionFunctionRange, exitPartitionListAtom, exitPartitionListVector, exitPartitionOptionComment, exitPartitionOptionDataDirectory, exitPartitionOptionEngine, exitPartitionOptionIndexDirectory, exitPartitionOptionMaxRows, exitPartitionOptionMinRows, exitPartitionOptionNodeGroup, exitPartitionOptionTablespace, exitPartitionSimple, exitPasswordConnectionOption, exitPasswordFunctionCall, exitPasswordFunctionClause, exitPasswordModuleOption, exitPluginDirConnectionOption, exitPositionFunctionCall, exitPreciseSchedule, exitPredicateExpression, exitPreparedStatement, exitPrepareStatement, exitPrimaryKeyColumnConstraint, exitPrimaryKeyTableConstraint, exitPrivelegeClause, exitPrivilege, exitPrivilegesBase, exitProcedureParameter, exitProcedureSqlStatement, exitPurgeBinaryLogs, exitQueryCreateTable, exitQueryExpression, exitQueryExpressionNointo, exitQuerySpecification, exitQuerySpecificationNointo, exitReferenceAction, exitReferenceColumnConstraint, exitReferenceControlType, exitReferenceDefinition, exitRegexpPredicate, exitRelayLogUntilOption, exitReleaseStatement, exitRenameTable, exitRenameTableClause, exitRenameUser, exitRenameUserClause, exitRepairTable, exitRepeatStatement, exitReplaceStatement, exitReplicationStatement, exitResetMaster, exitResetSlave, exitResetStatement, exitResignalStatement, exitReturnStatement, exitRevokeProxy, exitRewriteDbReplication, exitRoleName, exitRoleOption, exitRoleRevoke, exitRollbackStatement, exitRollbackWork, exitRoot, exitRoutineBehavior, exitRoutineBody, exitRoutineComment, exitRoutineData, exitRoutineLanguage, exitRoutineSecurity, exitSavepointStatement, exitScalarFunctionCall, exitScalarFunctionName, exitSelectColumnElement, exitSelectElements, exitSelectExpressionElement, exitSelectFieldsInto, exitSelectFunctionElement, exitSelectIntoDumpFile, exitSelectIntoTextFile, exitSelectIntoVariables, exitSelectLinesInto, exitSelectSpec, exitSelectStarElement, exitSequenceSpec, exitSerialDefaultColumnConstraint, exitServerOption, exitSetAutocommit, exitSetAutocommitStatement, exitSetCharset, exitSetNames, exitSetNewValueInsideTrigger, exitSetPassword, exitSetPasswordStatement, exitSetRole, exitSetStatementFor, exitSetTransaction, exitSetTransactionStatement, exitSetVariable, exitShortRevoke, exitShowBinLogEvents, exitShowColumns, exitShowCommonEntity, exitShowCountErrors, exitShowCreateDb, exitShowCreateFullIdObject, exitShowCreatePackage, exitShowCreateUser, exitShowEngine, exitShowErrors, exitShowExplain, exitShowFilter, exitShowGlobalInfo, exitShowGlobalInfoClause, exitShowGrants, exitShowIndexes, exitShowInnoDBStatus, exitShowMasterLogs, exitShowObjectFilter, exitShowOpenTables, exitShowPackageStatus, exitShowProfile, exitShowProfileType, exitShowRelayLogEvents, exitShowRoutine, exitShowSchemaEntity, exitShowSchemaFilter, exitShowSlaveStatus, exitShowUserstatPlugin, exitShutdownStatement, exitSignalConditionInformation, exitSignalStatement, exitSimpleAuthOption, exitSimpleDataType, exitSimpleDescribeStatement, exitSimpleFlushOption, exitSimpleFunctionCall, exitSimpleId, exitSimpleIndexDeclaration, exitSimpleSelect, exitSimpleStrings, exitSimpleUserName, exitSingleDeleteStatement, exitSingleUpdateStatement, exitSoundsLikePredicate, exitSpatialDataType, exitSpecialIndexDeclaration, exitSpecificFunctionCall, exitSqlGapsUntilOption, exitSqlStatement, exitSqlStatements, exitStartGroupReplication, exitStartSlave, exitStartTransaction, exitStopGroupReplication, exitStopSlave, exitStorageColumnConstraint, exitStraightJoin, exitStringAuthOption, exitStringDataType, exitStringLiteral, exitStringMasterOption, exitSubpartitionDefinition, exitSubPartitionFunctionHash, exitSubPartitionFunctionKey, exitSubqueryComparisonPredicate, exitSubqueryExpressionAtom, exitSubqueryTableItem, exitSubstrFunctionCall, exitTableFlushOption, exitTableIndexes, exitTableJson, exitTableName, exitTableOptionAutoextendSize, exitTableOptionAutoIncrement, exitTableOptionAverage, exitTableOptionCharset, exitTableOptionChecksum, exitTableOptionCollate, exitTableOptionComment, exitTableOptionCompression, exitTableOptionConnection, exitTableOptionDataDirectory, exitTableOptionDelay, exitTableOptionEncrypted, exitTableOptionEncryption, exitTableOptionEncryptionKeyId, exitTableOptionEngine, exitTableOptionEngineAttribute, exitTableOptionIndexDirectory, exitTableOptionInsertMethod, exitTableOptionKeyBlockSize, exitTableOptionMaxRows, exitTableOptionMinRows, exitTableOptionPackKeys, exitTableOptionPageCompressed, exitTableOptionPageCompressionLevel, exitTableOptionPassword, exitTableOptionPersistent, exitTableOptionRecalculation, exitTableOptionRowFormat, exitTableOptionSamplePage, exitTableOptionSecondaryEngineAttribute, exitTableOptionStartTransaction, exitTableOptionTablespace, exitTableOptionTableType, exitTableOptionTransactional, exitTableOptionUnion, exitTablePair, exitTables, exitTableSourceBase, exitTableSourceNested, exitTableSources, exitTableSourcesItem, exitTablespaceStorage, exitTableType, exitThreadType, exitTimestampValue, exitTlsOption, exitTransactionLevel, exitTransactionLevelBase, exitTransactionMode, exitTransactionOption, exitTransactionStatement, exitTrimFunctionCall, exitTruncateTable, exitUdfFunctionCall, exitUid, exitUidList, exitUnaryExpressionAtom, exitUnaryOperator, exitUninstallPlugin, exitUnionParenthesis, exitUnionParenthesisSelect, exitUnionSelect, exitUnionStatement, exitUniqueKeyColumnConstraint, exitUniqueKeyTableConstraint, exitUnlockTables, exitUpdatedElement, exitUpdateStatement, exitUserConnectionOption, exitUserLockOption, exitUserName, exitUserPasswordOption, exitUserResourceOption, exitUserSpecification, exitUserVariables, exitUseStatement, exitUtilityStatement, exitUuidSet, exitValuesFunctionCall, exitValuesStatement, exitVariableAssignExpressionAtom, exitVariableClause, exitVisibilityColumnConstraint, exitWaitNowaitClause, exitWeightFunctionCall, exitWhileStatement, exitWildDoTableReplication, exitWildIgnoreTableReplication, exitWindowClause, exitWindowName, exitWindowSpec, exitWithClause, exitWithLateralStatement, exitXaCommitWork, exitXaEndTransaction, exitXaPrepareStatement, exitXaRecoverWork, exitXaRollbackWork, exitXaStartTransaction, exitXid, exitXuidStringId, visitErrorNode, visitTerminal

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • DOT

      private static final Pattern DOT
    • parser

      private final MariaDbAntlrDdlParser parser
    • dataTypeResolver

      private final io.debezium.antlr.DataTypeResolver dataTypeResolver
    • tableEditor

      private final io.debezium.relational.TableEditor tableEditor
    • columnEditor

      private io.debezium.relational.ColumnEditor columnEditor
    • uniqueColumn

      private boolean uniqueColumn
    • optionalColumn

      private AtomicReference<Boolean> optionalColumn
    • defaultValueListener

      private DefaultValueParserListener defaultValueListener
    • listeners

      private final List<org.antlr.v4.runtime.tree.ParseTreeListener> listeners
  • Constructor Details

    • ColumnDefinitionParserListener

      public ColumnDefinitionParserListener(io.debezium.relational.TableEditor tableEditor, io.debezium.relational.ColumnEditor columnEditor, MariaDbAntlrDdlParser parser, List<org.antlr.v4.runtime.tree.ParseTreeListener> listeners)
  • Method Details

    • setColumnEditor

      public void setColumnEditor(io.debezium.relational.ColumnEditor columnEditor)
    • getColumnEditor

      public io.debezium.relational.ColumnEditor getColumnEditor()
    • getColumn

      public io.debezium.relational.Column getColumn()
    • enterColumnDefinition

      public void enterColumnDefinition(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.ColumnDefinitionContext ctx)
      Specified by:
      enterColumnDefinition in interface io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener
      Overrides:
      enterColumnDefinition in class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
    • exitColumnDefinition

      public void exitColumnDefinition(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.ColumnDefinitionContext ctx)
      Specified by:
      exitColumnDefinition in interface io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener
      Overrides:
      exitColumnDefinition in class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
    • enterUniqueKeyColumnConstraint

      public void enterUniqueKeyColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.UniqueKeyColumnConstraintContext ctx)
      Specified by:
      enterUniqueKeyColumnConstraint in interface io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener
      Overrides:
      enterUniqueKeyColumnConstraint in class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
    • enterPrimaryKeyColumnConstraint

      public void enterPrimaryKeyColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.PrimaryKeyColumnConstraintContext ctx)
      Specified by:
      enterPrimaryKeyColumnConstraint in interface io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener
      Overrides:
      enterPrimaryKeyColumnConstraint in class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
    • enterCommentColumnConstraint

      public void enterCommentColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.CommentColumnConstraintContext ctx)
      Specified by:
      enterCommentColumnConstraint in interface io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener
      Overrides:
      enterCommentColumnConstraint in class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
    • enterNullNotnull

      public void enterNullNotnull(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.NullNotnullContext ctx)
      Specified by:
      enterNullNotnull in interface io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener
      Overrides:
      enterNullNotnull in class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
    • enterAutoIncrementColumnConstraint

      public void enterAutoIncrementColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.AutoIncrementColumnConstraintContext ctx)
      Specified by:
      enterAutoIncrementColumnConstraint in interface io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener
      Overrides:
      enterAutoIncrementColumnConstraint in class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
    • enterSerialDefaultColumnConstraint

      public void enterSerialDefaultColumnConstraint(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.SerialDefaultColumnConstraintContext ctx)
      Specified by:
      enterSerialDefaultColumnConstraint in interface io.debezium.ddl.parser.mariadb.generated.MariaDBParserListener
      Overrides:
      enterSerialDefaultColumnConstraint in class io.debezium.ddl.parser.mariadb.generated.MariaDBParserBaseListener
    • resolveColumnDataType

      private void resolveColumnDataType(io.debezium.ddl.parser.mariadb.generated.MariaDBParser.DataTypeContext dataTypeContext)
    • parseLength

      private Integer parseLength(String lengthStr)
    • serialColumn

      private void serialColumn()