this.completed = true; statementListener.statementCompleted(this);
notifyStatementCompleted();
    public boolean execute(String sql) throws SQLException {        if (closed)            throw new FBSQLException("Statement is closed");        statementListener.executionStarted(this);        this.completed = false;                boolean hasResultSet = false;        try {            Object syncObject = getSynchronizationObject();            synchronized(syncObject) {                try {                    hasResultSet = internalExecute(sql);                } catch (GDSException ge) {                    throw new FBSQLException(ge);                }             }        } finally {            if (!hasResultSet) {                this.completed = true;                statementListener.statementCompleted(this);            }                    }                return hasResultSet;    }