Interface RFunctionRx


  • public interface RFunctionRx
    Interface for Redis Function feature
    Author:
    Nikita Koksharov
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      <R> io.reactivex.rxjava3.core.Maybe<R> call​(String key, FunctionMode mode, String name, FunctionResult returnType, List<Object> keys, Object... values)
      Executes function
      <R> io.reactivex.rxjava3.core.Maybe<R> call​(FunctionMode mode, String name, FunctionResult returnType)
      Executes function
      <R> io.reactivex.rxjava3.core.Maybe<R> call​(FunctionMode mode, String name, FunctionResult returnType, List<Object> keys, Object... values)
      Executes function
      io.reactivex.rxjava3.core.Completable delete​(String libraryName)
      Deletes library.
      io.reactivex.rxjava3.core.Single<byte[]> dump()
      Returns serialized state of all libraries.
      io.reactivex.rxjava3.core.Completable flush()
      Deletes all libraries.
      io.reactivex.rxjava3.core.Completable kill()
      Kills currently executed functions.
      io.reactivex.rxjava3.core.Single<List<FunctionLibrary>> list()
      Returns information about libraries and functions per each.
      io.reactivex.rxjava3.core.Single<List<FunctionLibrary>> list​(String namePattern)
      Returns information about libraries and functions per each by name pattern.
      io.reactivex.rxjava3.core.Completable load​(String libraryName, String code)
      Loads a library.
      io.reactivex.rxjava3.core.Completable loadAndReplace​(String libraryName, String code)
      Loads a library and overwrites existing library.
      io.reactivex.rxjava3.core.Completable restore​(byte[] payload)
      Restores libraries using their state returned by dump() method.
      io.reactivex.rxjava3.core.Completable restoreAfterFlush​(byte[] payload)
      Restores libraries using their state returned by dump() method.
      io.reactivex.rxjava3.core.Completable restoreAndReplace​(byte[] payload)
      Restores libraries using their state returned by dump() method.
      io.reactivex.rxjava3.core.Single<FunctionStats> stats()
      Returns information about currently running Redis function and available execution engines.
    • Method Detail

      • delete

        io.reactivex.rxjava3.core.Completable delete​(String libraryName)
        Deletes library. Error is thrown if library doesn't exist.
        Parameters:
        libraryName - library name
      • dump

        io.reactivex.rxjava3.core.Single<byte[]> dump()
        Returns serialized state of all libraries.
        Returns:
        serialized state
      • flush

        io.reactivex.rxjava3.core.Completable flush()
        Deletes all libraries.
      • kill

        io.reactivex.rxjava3.core.Completable kill()
        Kills currently executed functions. Applied only to functions which don't modify data.
      • list

        io.reactivex.rxjava3.core.Single<List<FunctionLibrary>> list()
        Returns information about libraries and functions per each.
        Returns:
        list of libraries
      • list

        io.reactivex.rxjava3.core.Single<List<FunctionLibrary>> list​(String namePattern)
        Returns information about libraries and functions per each by name pattern.

        Supported glob-style patterns: h?llo matches hello, hallo and hxllo h*llo matches hllo and heeeello h[ae]llo matches hello and hallo, but not hillo

        Parameters:
        namePattern - name pattern
        Returns:
        list of libraries
      • load

        io.reactivex.rxjava3.core.Completable load​(String libraryName,
                                                   String code)
        Loads a library. Error is thrown if library already exists.
        Parameters:
        libraryName - library name
        code - function code
      • loadAndReplace

        io.reactivex.rxjava3.core.Completable loadAndReplace​(String libraryName,
                                                             String code)
        Loads a library and overwrites existing library.
        Parameters:
        libraryName - library name
        code - function code
      • restore

        io.reactivex.rxjava3.core.Completable restore​(byte[] payload)
        Restores libraries using their state returned by dump() method. Restored libraries are appended to the existing libraries and throws error in case of collision.
        Parameters:
        payload - serialized state
      • restoreAndReplace

        io.reactivex.rxjava3.core.Completable restoreAndReplace​(byte[] payload)
        Restores libraries using their state returned by dump() method. Restored libraries are appended to the existing libraries.
        Parameters:
        payload - serialized state
      • restoreAfterFlush

        io.reactivex.rxjava3.core.Completable restoreAfterFlush​(byte[] payload)
        Restores libraries using their state returned by dump() method. Deletes all existing libraries before restoring.
        Parameters:
        payload - serialized state
      • stats

        io.reactivex.rxjava3.core.Single<FunctionStats> stats()
        Returns information about currently running Redis function and available execution engines.
        Returns:
        function information
      • call

        <R> io.reactivex.rxjava3.core.Maybe<R> call​(String key,
                                                    FunctionMode mode,
                                                    String name,
                                                    FunctionResult returnType,
                                                    List<Object> keys,
                                                    Object... values)
        Executes function
        Type Parameters:
        R - - type of result
        Parameters:
        key - - used to locate Redis node in Cluster
        mode - - execution mode
        name - - function name
        returnType - - return type
        keys - - keys available through KEYS param in script
        values - - values available through VALUES param in script
        Returns:
        result object
      • call

        <R> io.reactivex.rxjava3.core.Maybe<R> call​(FunctionMode mode,
                                                    String name,
                                                    FunctionResult returnType,
                                                    List<Object> keys,
                                                    Object... values)
        Executes function
        Type Parameters:
        R - - type of result
        Parameters:
        mode - - execution mode
        name - - function name
        returnType - - return type
        keys - - keys available through KEYS param in script
        values - - values available through VALUES param in script
        Returns:
        result object
      • call

        <R> io.reactivex.rxjava3.core.Maybe<R> call​(FunctionMode mode,
                                                    String name,
                                                    FunctionResult returnType)
        Executes function
        Type Parameters:
        R - - type of result
        Parameters:
        mode - - execution mode
        name - - function name
        returnType - - return type
        Returns:
        result object