1 /* 2 3 Derby - Class org.apache.derby.iapi.sql.execute.ExecutionStmtValidator 4 5 Licensed to the Apache Software Foundation (ASF) under one or more 6 contributor license agreements. See the NOTICE file distributed with 7 this work for additional information regarding copyright ownership. 8 The ASF licenses this file to you under the Apache License, Version 2.0 9 (the "License"); you may not use this file except in compliance with 10 the License. You may obtain a copy of the License at 11 12 http://www.apache.org/licenses/LICENSE-2.0 13 14 Unless required by applicable law or agreed to in writing, software 15 distributed under the License is distributed on an "AS IS" BASIS, 16 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 See the License for the specific language governing permissions and 18 limitations under the License. 19 20 */ 21 22 package org.apache.derby.iapi.sql.execute; 23 24 import org.apache.derby.iapi.error.StandardException; 25 import org.apache.derby.iapi.sql.execute.ConstantAction; 26 27 /** 28 * An ExecutionStatementValidator is an object that is 29 * handed a ConstantAction and asked whether it is ok for 30 * this result set to execute. When something like 31 * a trigger is executing, one of these gets pushed. 32 * Before execution, each validator that has been pushed 33 * is invoked on the result set that we are about to 34 * execution. It is up to the validator to look at 35 * the result set and either complain (throw an exception) 36 * or let it through. 37 * 38 * @author jamie 39 */ 40 public interface ExecutionStmtValidator 41 { 42 /** 43 * Validate the statement. 44 * 45 * @param constantAction The constant action that we are about to execute. 46 * 47 * @exception StandardException on error 48 * 49 * @see ConstantAction 50 */ 51 public void validateStatement(ConstantAction constantAction) 52 throws StandardException; 53 } 54