Skip to content

Commit

Permalink
changed package structure considered in parser generator, small gramm…
Browse files Browse the repository at this point in the history
…ar change for alter table
  • Loading branch information
curiosag committed Jan 22, 2016
1 parent 1b3ba0a commit 8dfb5f4
Show file tree
Hide file tree
Showing 11 changed files with 43 additions and 48 deletions.
2 changes: 1 addition & 1 deletion ftcParser/antlr/FusionTablesSql.g4
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ show_tables_stmt

alter_table_stmt
: K_ALTER K_TABLE table_name_in_ddl
( K_RENAME K_TO table_name_in_ddl )
( K_RENAME K_TO identifier )
;

create_view_stmt
Expand Down
2 changes: 1 addition & 1 deletion ftcParser/antlr/FusionTablesSqlBaseListener.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Generated from FusionTablesSql.g4 by ANTLR 4.5
package parser;
package org.cg.ftc.parser;

import org.antlr.v4.runtime.ParserRuleContext;
import org.antlr.v4.runtime.misc.NotNull;
Expand Down
2 changes: 1 addition & 1 deletion ftcParser/antlr/FusionTablesSqlBaseVisitor.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Generated from FusionTablesSql.g4 by ANTLR 4.5
package parser;
package org.cg.ftc.parser;
import org.antlr.v4.runtime.misc.NotNull;
import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor;

Expand Down
2 changes: 1 addition & 1 deletion ftcParser/antlr/FusionTablesSqlLexer.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Generated from FusionTablesSql.g4 by ANTLR 4.5
package parser;
package org.cg.ftc.parser;
import org.antlr.v4.runtime.Lexer;
import org.antlr.v4.runtime.CharStream;
import org.antlr.v4.runtime.Token;
Expand Down
2 changes: 1 addition & 1 deletion ftcParser/antlr/FusionTablesSqlListener.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Generated from FusionTablesSql.g4 by ANTLR 4.5
package parser;
package org.cg.ftc.parser;
import org.antlr.v4.runtime.misc.NotNull;
import org.antlr.v4.runtime.tree.ParseTreeListener;

Expand Down
16 changes: 8 additions & 8 deletions ftcParser/antlr/FusionTablesSqlParser.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Generated from FusionTablesSql.g4 by ANTLR 4.5
package parser;
package org.cg.ftc.parser;
import org.antlr.v4.runtime.atn.*;
import org.antlr.v4.runtime.dfa.DFA;
import org.antlr.v4.runtime.*;
Expand Down Expand Up @@ -500,14 +500,14 @@ public final Show_tables_stmtContext show_tables_stmt() throws RecognitionExcept
public static class Alter_table_stmtContext extends ParserRuleContext {
public TerminalNode K_ALTER() { return getToken(FusionTablesSqlParser.K_ALTER, 0); }
public TerminalNode K_TABLE() { return getToken(FusionTablesSqlParser.K_TABLE, 0); }
public List<Table_name_in_ddlContext> table_name_in_ddl() {
return getRuleContexts(Table_name_in_ddlContext.class);
}
public Table_name_in_ddlContext table_name_in_ddl(int i) {
return getRuleContext(Table_name_in_ddlContext.class,i);
public Table_name_in_ddlContext table_name_in_ddl() {
return getRuleContext(Table_name_in_ddlContext.class,0);
}
public TerminalNode K_RENAME() { return getToken(FusionTablesSqlParser.K_RENAME, 0); }
public TerminalNode K_TO() { return getToken(FusionTablesSqlParser.K_TO, 0); }
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public Alter_table_stmtContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
Expand Down Expand Up @@ -545,7 +545,7 @@ public final Alter_table_stmtContext alter_table_stmt() throws RecognitionExcept
setState(117);
match(K_TO);
setState(118);
table_name_in_ddl();
identifier();
}
}
}
Expand Down Expand Up @@ -3528,7 +3528,7 @@ public final String_literalContext string_literal() throws RecognitionException
"\2\2\2e]\3\2\2\2e^\3\2\2\2e_\3\2\2\2e`\3\2\2\2ea\3\2\2\2eb\3\2\2\2ec\3"+
"\2\2\2ed\3\2\2\2fg\3\2\2\2gh\7\3\2\2h\5\3\2\2\2ij\5H%\2j\7\3\2\2\2kl\5"+
"H%\2l\t\3\2\2\2mn\7\27\2\2no\5\6\4\2o\13\3\2\2\2pq\79\2\2qr\7<\2\2r\r"+
"\3\2\2\2st\7\7\2\2tu\7;\2\2uv\5\6\4\2vw\7\63\2\2wx\7=\2\2xy\5\6\4\2y\17"+
"\3\2\2\2st\7\7\2\2tu\7;\2\2uv\5\6\4\2vw\7\63\2\2wx\7=\2\2xy\5D#\2y\17"+
"\3\2\2\2z{\7\24\2\2{|\7@\2\2|}\5N(\2}~\7\n\2\2~\177\7H\2\2\177\u0080\7"+
"\65\2\2\u0080\u0085\5&\24\2\u0081\u0082\7\4\2\2\u0082\u0084\5&\24\2\u0083"+
"\u0081\3\2\2\2\u0084\u0087\3\2\2\2\u0085\u0083\3\2\2\2\u0085\u0086\3\2"+
Expand Down
2 changes: 1 addition & 1 deletion ftcParser/antlr/FusionTablesSqlVisitor.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Generated from FusionTablesSql.g4 by ANTLR 4.5
package parser;
package org.cg.ftc.parser;
import org.antlr.v4.runtime.misc.NotNull;
import org.antlr.v4.runtime.tree.ParseTreeVisitor;

Expand Down
4 changes: 2 additions & 2 deletions ftcParser/antlr/fmake
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

gmake FusionTablesSql package

cd ../src/parser
cd ../src/org/cg/ftc/parser
echo 'target directory'
echo `pwd`
`rm FusionTablesSql*.java`
`cp ../../antlr/*.java .`
`cp ../../../../../antlr/*.java .`
2 changes: 1 addition & 1 deletion ftcParser/antlr/gmake
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

GRAMMARFILE=$1".g4"
JAVA_PARSER=$1"Parser.java"
PACKAGE="parser"
PACKAGE="org.cg.ftc.parser"

echo "processing grammar: " $GRAMMARFILE " mode:" $2
echo "facio tabula rasa"
Expand Down
14 changes: 7 additions & 7 deletions ftcParser/src/org/cg/ftc/parser/FusionTablesSqlParser.java
Original file line number Diff line number Diff line change
Expand Up @@ -500,14 +500,14 @@ public final Show_tables_stmtContext show_tables_stmt() throws RecognitionExcept
public static class Alter_table_stmtContext extends ParserRuleContext {
public TerminalNode K_ALTER() { return getToken(FusionTablesSqlParser.K_ALTER, 0); }
public TerminalNode K_TABLE() { return getToken(FusionTablesSqlParser.K_TABLE, 0); }
public List<Table_name_in_ddlContext> table_name_in_ddl() {
return getRuleContexts(Table_name_in_ddlContext.class);
}
public Table_name_in_ddlContext table_name_in_ddl(int i) {
return getRuleContext(Table_name_in_ddlContext.class,i);
public Table_name_in_ddlContext table_name_in_ddl() {
return getRuleContext(Table_name_in_ddlContext.class,0);
}
public TerminalNode K_RENAME() { return getToken(FusionTablesSqlParser.K_RENAME, 0); }
public TerminalNode K_TO() { return getToken(FusionTablesSqlParser.K_TO, 0); }
public IdentifierContext identifier() {
return getRuleContext(IdentifierContext.class,0);
}
public Alter_table_stmtContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
Expand Down Expand Up @@ -545,7 +545,7 @@ public final Alter_table_stmtContext alter_table_stmt() throws RecognitionExcept
setState(117);
match(K_TO);
setState(118);
table_name_in_ddl();
identifier();
}
}
}
Expand Down Expand Up @@ -3528,7 +3528,7 @@ public final String_literalContext string_literal() throws RecognitionException
"\2\2\2e]\3\2\2\2e^\3\2\2\2e_\3\2\2\2e`\3\2\2\2ea\3\2\2\2eb\3\2\2\2ec\3"+
"\2\2\2ed\3\2\2\2fg\3\2\2\2gh\7\3\2\2h\5\3\2\2\2ij\5H%\2j\7\3\2\2\2kl\5"+
"H%\2l\t\3\2\2\2mn\7\27\2\2no\5\6\4\2o\13\3\2\2\2pq\79\2\2qr\7<\2\2r\r"+
"\3\2\2\2st\7\7\2\2tu\7;\2\2uv\5\6\4\2vw\7\63\2\2wx\7=\2\2xy\5\6\4\2y\17"+
"\3\2\2\2st\7\7\2\2tu\7;\2\2uv\5\6\4\2vw\7\63\2\2wx\7=\2\2xy\5D#\2y\17"+
"\3\2\2\2z{\7\24\2\2{|\7@\2\2|}\5N(\2}~\7\n\2\2~\177\7H\2\2\177\u0080\7"+
"\65\2\2\u0080\u0085\5&\24\2\u0081\u0082\7\4\2\2\u0082\u0084\5&\24\2\u0083"+
"\u0081\3\2\2\2\u0084\u0087\3\2\2\2\u0085\u0083\3\2\2\2\u0085\u0086\3\2"+
Expand Down
43 changes: 19 additions & 24 deletions ftcSql/src/manipulations/QueryHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -273,22 +273,21 @@ private QueryResult hdlQuery(StatementType statementType, String query, boolean
RefactoredSql r = createManipulator(query).refactorQuery();

String prepared = r.refactored;
if (Op.in(statementType, StatementType.SELECT))
if (statementType == StatementType.SELECT)
prepared = addLimit(prepared);

QueryResult result;

if (r.problemsEncountered.isPresent())
return packQueryResult(r.problemsEncountered.get());

else if (preview)
result = packQueryResult(prepared);
else
else {
result = connector.fetch(prepared);

if (Op.in(statementType, StatementType.CREATE_VIEW, StatementType.DROP))
reloadTableList();

if (Op.in(statementType, StatementType.CREATE_VIEW, StatementType.DROP, StatementType.ALTER))
onStructureChanged();
}
return result;
}

Expand Down Expand Up @@ -343,14 +342,14 @@ private QueryResult innerGetQueryResult(String query) {
case SELECT:
return hdlQuery(ftr.statementType, query, execute);

case INSERT:
return hdlQuery(ftr.statementType, query, execute);
case UPDATE:
return hdlQuery(ftr.statementType, query, execute);
case DELETE:
return hdlQuery(ftr.statementType, query, execute);
case INSERT:
return hdlQuery(ftr.statementType, query, execute);

case UPDATE:
return hdlQuery(ftr.statementType, query, execute);

case DELETE:
return hdlQuery(ftr.statementType, query, execute);

case CREATE_VIEW:
return hdlQuery(ftr.statementType, query, execute);
Expand All @@ -366,7 +365,7 @@ private QueryResult innerGetQueryResult(String query) {

case CTAS:
return hdlCtas(ftr.statementType, query, execute);

default:
return packQueryResult("Statement not covered: " + query);
}
Expand Down Expand Up @@ -414,8 +413,8 @@ public String previewExecutedSql(String query) {
return hdlQuery(ftr.statementType, query, preview).message.or("");

case CTAS:
return hdlCtas(ftr.statementType, query, execute).message.or("");
return hdlCtas(ftr.statementType, query, execute).message.or("");

default:
return "Statement not covered: " + query;
}
Expand Down Expand Up @@ -509,12 +508,8 @@ private List<String> getColumnNames(List<ColumnInfo> columns) {
}

private void onStructureChanged() {
new Thread(new Runnable() {
public void run() {
reloadTableList();
notifyObservers();
}
}).start();
reloadTableList();
notifyObservers();
}

}

0 comments on commit 8dfb5f4

Please sign in to comment.