Module com.s8.api

Interface S8AsyncFlow


public interface S8AsyncFlow
The main orchestratino flow of the S8 Stack.
Author:
Pierre Convert Copyright (c) 2025, Pierre Convert. All rights reserved.
  • Field Details

    • CREATE_SPACE_IF_NOT_PRESENT

      static final long CREATE_SPACE_IF_NOT_PRESENT
      CREATE_SPACE_IF_NOT_PRESENT
      See Also:
    • SAVE_IMMEDIATELY_AFTER

      static final long SAVE_IMMEDIATELY_AFTER
      SAVE_IMMEDIATELY_AFTER
      See Also:
    • SHOULD_NOT_OVERRIDE

      static final long SHOULD_NOT_OVERRIDE
      SHOULD_NOT_OVERRIDE
      See Also:
    • HEAD_VERSION

      static final long HEAD_VERSION
      TAG for HEAD version of a repository stats
      See Also:
  • Method Details

    • getMe

      S8User getMe()
      Return the flow onwer.
      Returns:
      the user
    • setMe

      void setMe(S8User user)
      Define a user a flow owner.
      Parameters:
      user - the user.
    • getMySpaceId

      default String getMySpaceId()
      Get my space id as a user.
      Returns:
      the user main space id.
    • runBlock

      void runBlock(int force, S8CodeBlock runnable)
      Run a block of code.
      Parameters:
      force - indicator of the amount of resource to be mobilized
      runnable - the code block to be run
    • sendEMail

      void sendEMail(SendMailS8Request request)
      Send an email.
      Parameters:
      request - The request Object
    • createTable

      void createTable(CreateTableS8Request request)
      Create a table.
      Parameters:
      request - The request Object
    • getRow

      void getRow(GetRowS8Request request)
      Get a row from a table.
      Parameters:
      request - The request object
    • putRow

      void putRow(PutRowS8Request request)
      Put a row in a table.
      Parameters:
      request - the request object
    • selectRows

      <T extends RowS8Object> void selectRows(SelectRowsS8Request<T> request)
      Select many rows in a table.
      Type Parameters:
      T - Row type
      Parameters:
      request - the request object
    • createSpace

      void createSpace(CreateSpaceS8Request request)
      Create a space.
      Parameters:
      request - the request object
    • exposeSpace

      void exposeSpace(ExposeSpaceS8Request request)
      Expose a space.
      Parameters:
      request - the request object
    • accessSpace

      void accessSpace(AccessSpaceS8Request request)
      Access a space.
      Parameters:
      request - the request object
    • createRepository

      void createRepository(CreateRepositoryS8Request request)
      Create a new repository. Note that: - initiator will become owner of the repository - initiator will become owner of the main branch
      Parameters:
      request - the request object
    • getRepository

      void getRepository(GetRepositoryMetadataS8Request request)
      Get a repository metadata
      Parameters:
      request - the request object
    • getBranch

      void getBranch(GetBranchMetadataS8Request request)
      Get branch
      Parameters:
      request - the request object
    • forkRepository

      void forkRepository(ForkRepositoryS8Request request)
      Fork an entire repository
      Parameters:
      request - the request object
    • forkBranch

      void forkBranch(ForkBranchS8Request request)
      Fork the branch of a repository
      Parameters:
      request - the request object
    • commitBranch

      void commitBranch(CommitBranchS8Request request)
      Commit a branch to a repository
      Parameters:
      request - the request object
    • cloneBranch

      void cloneBranch(CloneBranchS8Request request)
      Clone the branch of a repository
      Parameters:
      request - the request object
    • send

      void send()
      Send and play
    • play

      void play()
      Run the flow
    • deliver

      void deliver(int load, S8WebResourceGenerator generator)
      Deliver a generated resource
      Parameters:
      load - the load indicator
      generator - the resource generator