protected AbstractCallableStatement(GDSHelper c, String sql, int rsType, int rsConcurrency, int rsHoldability, FBObjectListener.StatementListener statementListener)
protected AbstractCallableStatement(GDSHelper c, String sql, int rsType, int rsConcurrency, int rsHoldability, FBObjectListener.StatementListener statementListener, FBObjectListener.BlobListener blobListener)
    protected AbstractCallableStatement(GDSHelper c, String sql,                                         int rsType, int rsConcurrency, int rsHoldability, FBObjectListener.StatementListener statementListener)     throws SQLException {        super(c, rsType, rsConcurrency, rsHoldability, statementListener);                DatabaseParameterBuffer dpb = c.getDatabaseParameterBuffer();                int mode = FBEscapedParser.USE_BUILT_IN;                if (dpb.hasArgument(DatabaseParameterBufferExtension.USE_STANDARD_UDF))            mode = FBEscapedParser.USE_STANDARD_UDF;                FBEscapedCallParser parser = new FBEscapedCallParser(mode);                // here statement is parsed twicel, once in c.nativeSQL(...)        // and second time in parser.parseCall(...)... not nice, maybe         // in the future should be fixed by calling FBEscapedParser for        // each parameter in FBEscapedCallParser class        procedureCall = parser.parseCall(nativeSQL(sql));    }