[NO ISSUE][COMP] Minor QueryTranslator refactoring

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
- Allow product extensions to override
  QueryTranslator.validateStatements()

Change-Id: Ib04f09df6f8073ca3e146e7eb73d6cd703c01641
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/4644
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Dmitry Lychagin <dmitry.lychagin@couchbase.com>
Reviewed-by: Michael Blow <mblow@apache.org>
diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
index dcea54a..b35d022 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
@@ -279,8 +279,7 @@
 
     @Override
     public void compileAndExecute(IHyracksClientConnection hcc, IRequestParameters requestParameters) throws Exception {
-        validateStatements(statements, requestParameters.isMultiStatement(),
-                requestParameters.getStatementCategoryRestrictionMask());
+        validateStatements(requestParameters);
         trackRequest(requestParameters);
         int resultSetIdCounter = 0;
         FileSplit outputFile = null;
@@ -3087,6 +3086,11 @@
         appCtx.getRequestTracker().track(clientRequest);
     }
 
+    protected void validateStatements(IRequestParameters requestParameters) throws CompilationException {
+        validateStatements(statements, requestParameters.isMultiStatement(),
+                requestParameters.getStatementCategoryRestrictionMask());
+    }
+
     public static void validateStatements(List<Statement> statements, boolean allowMultiStatement,
             int stmtCategoryRestrictionMask) throws CompilationException {
         if (!allowMultiStatement) {