static Command helpResolve(Command command, QueryMetadataInterface queryMetadataInterface) { // resolve try { QueryResolver.resolveCommand(command, queryMetadataInterface); } catch(TeiidException e) { throw new RuntimeException(e); } CheckSymbolsAreResolvedVisitor vis = new CheckSymbolsAreResolvedVisitor(); DeepPreOrderNavigator.doVisit(command, vis); Collection<LanguageObject> unresolvedSymbols = vis.getUnresolvedSymbols(); assertTrue("Found unresolved symbols: " + unresolvedSymbols, unresolvedSymbols.isEmpty()); //$NON-NLS-1$ return command; }
private Criteria helpResolveCriteria(String sql) { Criteria criteria = null; // parse try { criteria = QueryParser.getQueryParser().parseCriteria(sql); } catch(TeiidException e) { fail("Exception during parsing (" + e.getClass().getName() + "): " + e.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ } // resolve try { QueryResolver.resolveCriteria(criteria, metadata); } catch(TeiidException e) { e.printStackTrace(); fail("Exception during resolution (" + e.getClass().getName() + "): " + e.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ } CheckSymbolsAreResolvedVisitor vis = new CheckSymbolsAreResolvedVisitor(); DeepPreOrderNavigator.doVisit(criteria, vis); Collection<LanguageObject> unresolvedSymbols = vis.getUnresolvedSymbols(); assertTrue("Found unresolved symbols: " + unresolvedSymbols, unresolvedSymbols.isEmpty()); //$NON-NLS-1$ return criteria; }