Interface RFunction

All Superinterfaces:
RFunctionAsync
All Known Implementing Classes:
RedissonFuction

public interface RFunction extends RFunctionAsync
Interface for Redis Function feature
Author:
Nikita Koksharov
  • Method Details

    • delete

      void delete(String libraryName)
      Deletes library. Error is thrown if library doesn't exist.
      Parameters:
      libraryName - library name
    • dump

      byte[] dump()
      Returns serialized state of all libraries.
      Returns:
      serialized state
    • flush

      void flush()
      Deletes all libraries.
    • kill

      void kill()
      Kills currently executed functions. Applied only to functions which don't modify data.
    • list

      Returns information about libraries and functions per each.
      Returns:
      list of libraries
    • list

      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

      void load(String libraryName, String code)
      Loads a library. Error is thrown if library already exists.
      Parameters:
      libraryName - library name
      code - function code
    • loadAndReplace

      void loadAndReplace(String libraryName, String code)
      Loads a library and overwrites existing library.
      Parameters:
      libraryName - library name
      code - function code
    • restore

      void 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

      void 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

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

      FunctionStats stats()
      Returns information about currently running Redis function and available execution engines.
      Returns:
      function information
    • call

      <R> 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> 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> 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