All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.vertx.rxjava.ext.sql.SQLOperations Maven / Gradle / Ivy

/*
 * Copyright 2014 Red Hat, Inc.
 *
 * Red Hat licenses this file to you under the Apache License, version 2.0
 * (the "License"); you may not use this file except in compliance with the
 * License.  You may obtain a copy of the License at:
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
 * License for the specific language governing permissions and limitations
 * under the License.
 */

package io.vertx.rxjava.ext.sql;

import java.util.Map;
import rx.Observable;
import rx.Single;
import io.vertx.core.json.JsonArray;
import io.vertx.ext.sql.UpdateResult;
import io.vertx.ext.sql.ResultSet;
import io.vertx.core.AsyncResult;
import io.vertx.core.Handler;

/**
 * Represents a SQL query interface to a database
 *
 * 

* NOTE: This class has been automatically generated from the {@link io.vertx.ext.sql.SQLOperations original} non RX-ified interface using Vert.x codegen. */ @io.vertx.lang.rxjava.RxGen(io.vertx.ext.sql.SQLOperations.class) public interface SQLOperations { io.vertx.ext.sql.SQLOperations getDelegate(); /** * Executes the given SQL SELECT statement which returns the results of the query. * @param sql the SQL to execute. For example SELECT * FROM table .... * @param resultHandler the handler which is called once the operation completes. It will return a ResultSet. * @return */ public SQLOperations query(String sql, Handler> resultHandler); /** * Executes the given SQL SELECT prepared statement which returns the results of the query. * @param sql the SQL to execute. For example SELECT * FROM table .... * @param params these are the parameters to fill the statement. * @param resultHandler the handler which is called once the operation completes. It will return a ResultSet. * @return */ public SQLOperations queryWithParams(String sql, JsonArray params, Handler> resultHandler); /** * Execute a one shot SQL statement that returns a single SQL row. This method will reduce the boilerplate code by * getting a connection from the pool (this object) and return it back after the execution. Only the first result * from the result set is returned. * @param sql the statement to execute * @param handler the result handler * @return self */ public SQLOperations querySingle(String sql, Handler> handler); /** * Execute a one shot SQL statement with arguments that returns a single SQL row. This method will reduce the * boilerplate code by getting a connection from the pool (this object) and return it back after the execution. * Only the first result from the result set is returned. * @param sql the statement to execute * @param arguments the arguments * @param handler the result handler * @return self */ public SQLOperations querySingleWithParams(String sql, JsonArray arguments, Handler> handler); /** * Executes the given SQL statement which may be an INSERT, UPDATE, or DELETE * statement. * @param sql the SQL to execute. For example INSERT INTO table ... * @param resultHandler the handler which is called once the operation completes. * @return */ public SQLOperations update(String sql, Handler> resultHandler); /** * Executes the given prepared statement which may be an INSERT, UPDATE, or DELETE * statement with the given parameters * @param sql the SQL to execute. For example INSERT INTO table ... * @param params these are the parameters to fill the statement. * @param resultHandler the handler which is called once the operation completes. * @return */ public SQLOperations updateWithParams(String sql, JsonArray params, Handler> resultHandler); /** * Calls the given SQL PROCEDURE which returns the result from the procedure. * @param sql the SQL to execute. For example {call getEmpName}. * @param resultHandler the handler which is called once the operation completes. It will return a ResultSet. * @return */ public SQLOperations call(String sql, Handler> resultHandler); /** * Calls the given SQL PROCEDURE which returns the result from the procedure. * * The index of params and outputs are important for both arrays, for example when dealing with a prodecure that * takes the first 2 arguments as input values and the 3 arg as an output then the arrays should be like: * *

   *   params = [VALUE1, VALUE2, null]
   *   outputs = [null, null, "VARCHAR"]
   * 
* @param sql the SQL to execute. For example {call getEmpName (?, ?)}. * @param params these are the parameters to fill the statement. * @param outputs these are the outputs to fill the statement. * @param resultHandler the handler which is called once the operation completes. It will return a ResultSet. * @return */ public SQLOperations callWithParams(String sql, JsonArray params, JsonArray outputs, Handler> resultHandler); public static SQLOperations newInstance(io.vertx.ext.sql.SQLOperations arg) { return arg != null ? new SQLOperationsImpl(arg) : null; } } class SQLOperationsImpl implements SQLOperations { private final io.vertx.ext.sql.SQLOperations delegate; public SQLOperationsImpl(io.vertx.ext.sql.SQLOperations delegate) { this.delegate = delegate; } public io.vertx.ext.sql.SQLOperations getDelegate() { return delegate; } /** * Executes the given SQL SELECT statement which returns the results of the query. * @param sql the SQL to execute. For example SELECT * FROM table .... * @param resultHandler the handler which is called once the operation completes. It will return a ResultSet. * @return */ public SQLOperations query(String sql, Handler> resultHandler) { delegate.query(sql, resultHandler); return this; } /** * Executes the given SQL SELECT statement which returns the results of the query. * @param sql the SQL to execute. For example SELECT * FROM table .... * @return * @deprecated use {@link #rxQuery} instead */ @Deprecated() public Observable queryObservable(String sql) { io.vertx.rx.java.ObservableFuture resultHandler = io.vertx.rx.java.RxHelper.observableFuture(); query(sql, resultHandler.toHandler()); return resultHandler; } /** * Executes the given SQL SELECT statement which returns the results of the query. * @param sql the SQL to execute. For example SELECT * FROM table .... * @return */ public Single rxQuery(String sql) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { query(sql, fut); })); } /** * Executes the given SQL SELECT prepared statement which returns the results of the query. * @param sql the SQL to execute. For example SELECT * FROM table .... * @param params these are the parameters to fill the statement. * @param resultHandler the handler which is called once the operation completes. It will return a ResultSet. * @return */ public SQLOperations queryWithParams(String sql, JsonArray params, Handler> resultHandler) { delegate.queryWithParams(sql, params, resultHandler); return this; } /** * Executes the given SQL SELECT prepared statement which returns the results of the query. * @param sql the SQL to execute. For example SELECT * FROM table .... * @param params these are the parameters to fill the statement. * @return * @deprecated use {@link #rxQueryWithParams} instead */ @Deprecated() public Observable queryWithParamsObservable(String sql, JsonArray params) { io.vertx.rx.java.ObservableFuture resultHandler = io.vertx.rx.java.RxHelper.observableFuture(); queryWithParams(sql, params, resultHandler.toHandler()); return resultHandler; } /** * Executes the given SQL SELECT prepared statement which returns the results of the query. * @param sql the SQL to execute. For example SELECT * FROM table .... * @param params these are the parameters to fill the statement. * @return */ public Single rxQueryWithParams(String sql, JsonArray params) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { queryWithParams(sql, params, fut); })); } /** * Execute a one shot SQL statement that returns a single SQL row. This method will reduce the boilerplate code by * getting a connection from the pool (this object) and return it back after the execution. Only the first result * from the result set is returned. * @param sql the statement to execute * @param handler the result handler * @return self */ public SQLOperations querySingle(String sql, Handler> handler) { delegate.querySingle(sql, handler); return this; } /** * Execute a one shot SQL statement that returns a single SQL row. This method will reduce the boilerplate code by * getting a connection from the pool (this object) and return it back after the execution. Only the first result * from the result set is returned. * @param sql the statement to execute * @return * @deprecated use {@link #rxQuerySingle} instead */ @Deprecated() public Observable querySingleObservable(String sql) { io.vertx.rx.java.ObservableFuture handler = io.vertx.rx.java.RxHelper.observableFuture(); querySingle(sql, handler.toHandler()); return handler; } /** * Execute a one shot SQL statement that returns a single SQL row. This method will reduce the boilerplate code by * getting a connection from the pool (this object) and return it back after the execution. Only the first result * from the result set is returned. * @param sql the statement to execute * @return */ public Single rxQuerySingle(String sql) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { querySingle(sql, fut); })); } /** * Execute a one shot SQL statement with arguments that returns a single SQL row. This method will reduce the * boilerplate code by getting a connection from the pool (this object) and return it back after the execution. * Only the first result from the result set is returned. * @param sql the statement to execute * @param arguments the arguments * @param handler the result handler * @return self */ public SQLOperations querySingleWithParams(String sql, JsonArray arguments, Handler> handler) { delegate.querySingleWithParams(sql, arguments, handler); return this; } /** * Execute a one shot SQL statement with arguments that returns a single SQL row. This method will reduce the * boilerplate code by getting a connection from the pool (this object) and return it back after the execution. * Only the first result from the result set is returned. * @param sql the statement to execute * @param arguments the arguments * @return * @deprecated use {@link #rxQuerySingleWithParams} instead */ @Deprecated() public Observable querySingleWithParamsObservable(String sql, JsonArray arguments) { io.vertx.rx.java.ObservableFuture handler = io.vertx.rx.java.RxHelper.observableFuture(); querySingleWithParams(sql, arguments, handler.toHandler()); return handler; } /** * Execute a one shot SQL statement with arguments that returns a single SQL row. This method will reduce the * boilerplate code by getting a connection from the pool (this object) and return it back after the execution. * Only the first result from the result set is returned. * @param sql the statement to execute * @param arguments the arguments * @return */ public Single rxQuerySingleWithParams(String sql, JsonArray arguments) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { querySingleWithParams(sql, arguments, fut); })); } /** * Executes the given SQL statement which may be an INSERT, UPDATE, or DELETE * statement. * @param sql the SQL to execute. For example INSERT INTO table ... * @param resultHandler the handler which is called once the operation completes. * @return */ public SQLOperations update(String sql, Handler> resultHandler) { delegate.update(sql, resultHandler); return this; } /** * Executes the given SQL statement which may be an INSERT, UPDATE, or DELETE * statement. * @param sql the SQL to execute. For example INSERT INTO table ... * @return * @deprecated use {@link #rxUpdate} instead */ @Deprecated() public Observable updateObservable(String sql) { io.vertx.rx.java.ObservableFuture resultHandler = io.vertx.rx.java.RxHelper.observableFuture(); update(sql, resultHandler.toHandler()); return resultHandler; } /** * Executes the given SQL statement which may be an INSERT, UPDATE, or DELETE * statement. * @param sql the SQL to execute. For example INSERT INTO table ... * @return */ public Single rxUpdate(String sql) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { update(sql, fut); })); } /** * Executes the given prepared statement which may be an INSERT, UPDATE, or DELETE * statement with the given parameters * @param sql the SQL to execute. For example INSERT INTO table ... * @param params these are the parameters to fill the statement. * @param resultHandler the handler which is called once the operation completes. * @return */ public SQLOperations updateWithParams(String sql, JsonArray params, Handler> resultHandler) { delegate.updateWithParams(sql, params, resultHandler); return this; } /** * Executes the given prepared statement which may be an INSERT, UPDATE, or DELETE * statement with the given parameters * @param sql the SQL to execute. For example INSERT INTO table ... * @param params these are the parameters to fill the statement. * @return * @deprecated use {@link #rxUpdateWithParams} instead */ @Deprecated() public Observable updateWithParamsObservable(String sql, JsonArray params) { io.vertx.rx.java.ObservableFuture resultHandler = io.vertx.rx.java.RxHelper.observableFuture(); updateWithParams(sql, params, resultHandler.toHandler()); return resultHandler; } /** * Executes the given prepared statement which may be an INSERT, UPDATE, or DELETE * statement with the given parameters * @param sql the SQL to execute. For example INSERT INTO table ... * @param params these are the parameters to fill the statement. * @return */ public Single rxUpdateWithParams(String sql, JsonArray params) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { updateWithParams(sql, params, fut); })); } /** * Calls the given SQL PROCEDURE which returns the result from the procedure. * @param sql the SQL to execute. For example {call getEmpName}. * @param resultHandler the handler which is called once the operation completes. It will return a ResultSet. * @return */ public SQLOperations call(String sql, Handler> resultHandler) { delegate.call(sql, resultHandler); return this; } /** * Calls the given SQL PROCEDURE which returns the result from the procedure. * @param sql the SQL to execute. For example {call getEmpName}. * @return * @deprecated use {@link #rxCall} instead */ @Deprecated() public Observable callObservable(String sql) { io.vertx.rx.java.ObservableFuture resultHandler = io.vertx.rx.java.RxHelper.observableFuture(); call(sql, resultHandler.toHandler()); return resultHandler; } /** * Calls the given SQL PROCEDURE which returns the result from the procedure. * @param sql the SQL to execute. For example {call getEmpName}. * @return */ public Single rxCall(String sql) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { call(sql, fut); })); } /** * Calls the given SQL PROCEDURE which returns the result from the procedure. * * The index of params and outputs are important for both arrays, for example when dealing with a prodecure that * takes the first 2 arguments as input values and the 3 arg as an output then the arrays should be like: * *
   *   params = [VALUE1, VALUE2, null]
   *   outputs = [null, null, "VARCHAR"]
   * 
* @param sql the SQL to execute. For example {call getEmpName (?, ?)}. * @param params these are the parameters to fill the statement. * @param outputs these are the outputs to fill the statement. * @param resultHandler the handler which is called once the operation completes. It will return a ResultSet. * @return */ public SQLOperations callWithParams(String sql, JsonArray params, JsonArray outputs, Handler> resultHandler) { delegate.callWithParams(sql, params, outputs, resultHandler); return this; } /** * Calls the given SQL PROCEDURE which returns the result from the procedure. * * The index of params and outputs are important for both arrays, for example when dealing with a prodecure that * takes the first 2 arguments as input values and the 3 arg as an output then the arrays should be like: * *
   *   params = [VALUE1, VALUE2, null]
   *   outputs = [null, null, "VARCHAR"]
   * 
* @param sql the SQL to execute. For example {call getEmpName (?, ?)}. * @param params these are the parameters to fill the statement. * @param outputs these are the outputs to fill the statement. * @return * @deprecated use {@link #rxCallWithParams} instead */ @Deprecated() public Observable callWithParamsObservable(String sql, JsonArray params, JsonArray outputs) { io.vertx.rx.java.ObservableFuture resultHandler = io.vertx.rx.java.RxHelper.observableFuture(); callWithParams(sql, params, outputs, resultHandler.toHandler()); return resultHandler; } /** * Calls the given SQL PROCEDURE which returns the result from the procedure. * * The index of params and outputs are important for both arrays, for example when dealing with a prodecure that * takes the first 2 arguments as input values and the 3 arg as an output then the arrays should be like: * *
   *   params = [VALUE1, VALUE2, null]
   *   outputs = [null, null, "VARCHAR"]
   * 
* @param sql the SQL to execute. For example {call getEmpName (?, ?)}. * @param params these are the parameters to fill the statement. * @param outputs these are the outputs to fill the statement. * @return */ public Single rxCallWithParams(String sql, JsonArray params, JsonArray outputs) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { callWithParams(sql, params, outputs, fut); })); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy