/** * Resolve a command in a given type container and type context. * @param type The {@link Command} type * @param inferProcedureResultSetColumns if true and the currentCommand is a procedure definition, then resolving will set the getResultSetColumns on the command to what is discoverable in the procedure body. */ public static TempMetadataStore resolveCommand(Command currentCommand, GroupSymbol container, int type, QueryMetadataInterface metadata, boolean inferProcedureResultSetColumns) throws QueryResolverException, TeiidComponentException { ResolverUtil.resolveGroup(container, metadata); switch (type) { case Command.TYPE_INSERT: case Command.TYPE_UPDATE: case Command.TYPE_DELETE: case Command.TYPE_STORED_PROCEDURE: ProcedureContainerResolver.findChildCommandMetadata(currentCommand, container, type, metadata, inferProcedureResultSetColumns); } return resolveCommand(currentCommand, metadata, false); }
/** * Resolve a command in a given type container and type context. * @param type The {@link Command} type * @param inferProcedureResultSetColumns if true and the currentCommand is a procedure definition, then resolving will set the getResultSetColumns on the command to what is discoverable in the procedure body. */ public static TempMetadataStore resolveCommand(Command currentCommand, GroupSymbol container, int type, QueryMetadataInterface metadata, boolean inferProcedureResultSetColumns) throws QueryResolverException, TeiidComponentException { ResolverUtil.resolveGroup(container, metadata); switch (type) { case Command.TYPE_INSERT: case Command.TYPE_UPDATE: case Command.TYPE_DELETE: case Command.TYPE_STORED_PROCEDURE: ProcedureContainerResolver.findChildCommandMetadata(currentCommand, container, type, metadata, inferProcedureResultSetColumns); } return resolveCommand(currentCommand, metadata, false); }
/** * Resolve a command in a given type container and type context. * @param type The {@link Command} type * @param inferProcedureResultSetColumns if true and the currentCommand is a procedure definition, then resolving will set the getResultSetColumns on the command to what is discoverable in the procedure body. */ public static TempMetadataStore resolveCommand(Command currentCommand, GroupSymbol container, int type, QueryMetadataInterface metadata, boolean inferProcedureResultSetColumns) throws QueryResolverException, TeiidComponentException { ResolverUtil.resolveGroup(container, metadata); switch (type) { case Command.TYPE_QUERY: QueryNode queryNode = metadata.getVirtualPlan(container.getMetadataID()); return resolveWithBindingMetadata(currentCommand, metadata, queryNode, false); case Command.TYPE_INSERT: case Command.TYPE_UPDATE: case Command.TYPE_DELETE: case Command.TYPE_STORED_PROCEDURE: ProcedureContainerResolver.findChildCommandMetadata(currentCommand, container, type, metadata, inferProcedureResultSetColumns); } return resolveCommand(currentCommand, metadata, false); }