001 002package gudusoft.gsqlparser.pp.stmtformatter.builder.comm; 003 004import gudusoft.gsqlparser.pp.processor.ProcessorFactory; 005import gudusoft.gsqlparser.pp.stmtformatter.builder.AbstractStmtFormatterBuilder; 006import gudusoft.gsqlparser.pp.stmtformatter.type.comm.CreateTableStmtFormatter; 007 008public class CreateTableStmtFormatterBuilder extends 009 AbstractStmtFormatterBuilder<CreateTableStmtFormatter> 010{ 011 012 @Override 013 protected void initSpecialProcessorForFormatter( 014 CreateTableStmtFormatter formatter ) 015 { 016 // build the special processor 017 formatter.addSpecialProcessor( ProcessorFactory.createCapitalisationProcessor( getOption( ) ) ); 018 formatter.addSpecialProcessor( ProcessorFactory.createCombineWhitespaceAndClearReturnProcessor( getOption( ) ) ); 019 formatter.addSpecialProcessor( ProcessorFactory.createCreateTableBEInNewLineProcessor( getOption( ), 020 getOption( ).beStyleCreatetableLeftBEOnNewline, 021 getOption( ).beStyleCreatetableRightBEOnNewline, 022 getOption( ).createtableListitemInNewLine ) ); 023 024 formatter.addSpecialProcessor( ProcessorFactory.createCreateTableConstraintAlignProcessor( getOption( ) ) ); 025 formatter.addSpecialProcessor( ProcessorFactory.createCreateTableAsProcessor( getOption( ) ) ); 026 027 // build the item list processor 028 formatter.addItemListProcessor( ProcessorFactory.createColumnlistCommaProcessor( this.getOption( ), 029 this.getOption( ).defaultCommaOption, 030 this.getOption( ).defaultAligntype ) ); 031 formatter.addItemListProcessor( ProcessorFactory.createCreateTableItemAlignProcessor( getOption( ), 032 this.getOption( ).createtableFieldlistAlignOption ) ); 033 034 // build the constraint list processor 035 formatter.addConstraintListProcessor( ProcessorFactory.createColumnlistCommaProcessor( this.getOption( ), 036 this.getOption( ).defaultCommaOption, 037 this.getOption( ).defaultAligntype ) ); 038 039 } 040 041 @Override 042 protected CreateTableStmtFormatter newInstanceFormatter( ) 043 { 044 return new CreateTableStmtFormatter( ); 045 } 046 047}