Package

agora.exec

workspace

Permalink

package workspace

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. workspace
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class UpdatingWorkspaceClient(underlying: WorkspaceClient, exchange: Exchange)(implicit ec: ExecutionContext) extends WorkspaceClientDelegate with Product with Serializable

    Permalink

    A workspace client which will append/remove workspaces from the given subscription.

    A workspace client which will append/remove workspaces from the given subscription.

    This is meant to work along side agora.exec.client.RemoteRunner which may specify match criteria based on a workspace.

    underlying

    an underlying workspace client to actually do the work we're proxying

    exchange

    the exchange where the subscriptions should be updated

  2. trait UploadDao extends AnyRef

    Permalink

    An interface for workspaces to use when writing down files

  3. case class UploadDependencies(workspace: WorkspaceId, dependsOnFiles: Set[String], timeoutInMillis: Long) extends Product with Serializable

    Permalink

    A RunProcess may depend on some files being uploaded/available.

    A RunProcess may depend on some files being uploaded/available. UploadDependencies represents those dependencies so that a agora.exec.workspace.WorkspaceClient can wait on those being available, allowing the uploading of files to be asynchronous/separate from running commands which operate on those files

    workspace

    the workspace in which the dependencies are expected to be uploaded. To.

    dependsOnFiles

    the filenames expected to be uploaded

    timeoutInMillis

    the time to wait for the dependencies to become available

  4. trait WorkspaceClient extends AnyRef

    Permalink

    Represents something which can manage a 'workspace'.

    Represents something which can manage a 'workspace'. The 'workspace' can be thought of as a workspace in terms of a single user's interactions with a the file system.

    They may upload files, execute commands, etc within a working directory (the workspace).

    They can also 'await' files to become available in that workspace.

  5. trait WorkspaceClientDelegate extends WorkspaceClient

    Permalink

    trait for helping subclasses of WorkspaceClient just override the functions of interest

  6. class WorkspaceDependencyTimeoutException extends Exception

    Permalink

    TODO - catch/propogate this in the execution routes

  7. type WorkspaceId = String

    Permalink
  8. sealed trait WorkspaceMsg extends AnyRef

    Permalink

    Workspace messages are sent to actors specific to a workspace: WorkspaceActor

    Workspace messages are sent to actors specific to a workspace: WorkspaceActor

    they are all routed through the owning WorkspaceEndpointActor

Value Members

  1. object UpdatingWorkspaceClient extends Serializable

    Permalink
  2. object UploadDao

    Permalink
  3. object WorkspaceActor extends StrictLogging

    Permalink
  4. object WorkspaceClient

    Permalink
  5. object WorkspaceDependencyTimeoutException extends Serializable

    Permalink
  6. object WorkspaceEndpointActor

    Permalink
  7. def allFilesAreOlderThanTime(directory: Path, timestamp: Timestamp): Boolean

    Permalink

    directory

    the directory to check

  8. def safeId(workspaceId: WorkspaceId): String

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped