Package

quasar

main

Permalink

package main

Concrete effect types and their interpreters that implement the quasar functionality.

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

Type Members

  1. sealed trait BackendConfig extends slamdata.Predef.Product with slamdata.Predef.Serializable

    Permalink
  2. final case class ClassName(value: slamdata.Predef.String) extends slamdata.Predef.AnyVal with Product with Serializable

    Permalink
  3. final case class ClassPath(value: IList[APath]) extends slamdata.Predef.AnyVal with Product with Serializable

    Permalink
  4. final case class CmdLineConfig(configPath: slamdata.Predef.Option[FsFile], loadConfig: BackendConfig, cmd: Cmd) extends Product with Serializable

    Permalink
  5. type CoreEff[A] = Coproduct[MetaStoreLocation, [A]Coproduct[Module, [A]Coproduct[Mounting, [A]Coproduct[Analyze, [A]Coproduct[QueryFile, [A]Coproduct[ReadFile, [A]Coproduct[WriteFile, [A]Coproduct[ManageFile, [A]Coproduct[[A]KeyValueStore[Path[Abs, File, Sandboxed], ViewCache, A], [A]Coproduct[Timing, [A]Coproduct[[A]Failure[Error, A], [A]Coproduct[[A]Failure[PathTypeMismatch, A], [A]Coproduct[[A]Failure[MountingError, A], [A]Failure[FileSystemError, A], A], A], A], A], A], A], A], A], A], A], A], A], A]

    Permalink
  6. type CoreEffIO[A] = Coproduct[Task, CoreEff, A]

    Permalink

    Effect comprising the core Quasar apis.

  7. type CoreErrs[A] = Coproduct[Failure, CoreErrs1, A]

    Permalink

    The types of failure from core apis.

  8. type CoreErrs0[A] = Coproduct[MountingFailure, FileSystemFailure, A]

    Permalink
  9. type CoreErrs1[A] = Coproduct[PathMismatchFailure, CoreErrs0, A]

    Permalink
  10. class FilesystemQueries[S[_]] extends AnyRef

    Permalink
  11. type FsAsk[A] = Read[BackendDef[PhysFsEffM], A]

    Permalink
  12. type HierarchicalFsEff[A] = Coproduct[PhysFsEffM, HierarchicalFsEff0, A]

    Permalink
  13. type HierarchicalFsEff0[A] = Coproduct[MountedResultH, MonotonicSeq, A]

    Permalink
  14. type HierarchicalFsEffM[A] = Free[HierarchicalFsEff, A]

    Permalink

    The effects required by hierarchical FileSystem operations.

  15. type HierarchicalFsRef[A] = AtomicRef[~>[BackendEffect, [β$19$]Free[[A]Coproduct[[A]Free[[A]Coproduct[Task, [A]Failure[PhysicalError, A], A], A], [A]Coproduct[[A]KeyValueStore[ResultHandle, (Path[Abs, Dir, Sandboxed], ResultHandle), A], MonotonicSeq, A], A], β$19$]], A]

    Permalink
  16. type MainErrT[F[_], A] = EitherT[F, slamdata.Predef.String, A]

    Permalink
  17. type MainTask[A] = EitherT[Task, slamdata.Predef.String, A]

    Permalink
  18. sealed abstract class MetaStoreLocation[A] extends AnyRef

    Permalink
  19. type MountEff[A] = Coproduct[PhysFsEffM, MountEff0, A]

    Permalink
  20. type MountEff0[A] = Coproduct[HierarchicalFsRef, MountedFsRef, A]

    Permalink
  21. type MountEffM[A] = Free[MountEff, A]

    Permalink

    Effects required for mounting.

  22. type MountedFsRef[A] = AtomicRef[Mounts[DefinitionResult[PhysFsEffM]], A]

    Permalink
  23. type PhysFsEff[A] = Coproduct[Task, PhysErr, A]

    Permalink
  24. type PhysFsEffM[A] = Free[PhysFsEff, A]

    Permalink

    Effects that physical filesystems are permitted.

  25. type QEff[A] = Coproduct[Timing, QEff0, A]

    Permalink
  26. type QEff0[A] = Coproduct[VCache, QEff1, A]

    Permalink
  27. type QEff1[A] = Coproduct[MetaStoreLocation, QEff2, A]

    Permalink
  28. type QEff2[A] = Coproduct[Mounting, QErrs, A]

    Permalink
  29. type QEffIO[A] = Coproduct[Task, QEff, A]

    Permalink

    A "terminal" effect, encompassing failures and other effects which we may want to interpret using more than one implementation.

  30. type QErrs[A] = Coproduct[PhysErr, CoreErrs, A]

    Permalink

    All possible types of failure in the system (apis + physical).

  31. type QErrs_Task[A] = Coproduct[Task, QErrs, A]

    Permalink
  32. type QErrs_TaskM[A] = Free[QErrs_Task, A]

    Permalink
  33. final case class Quasar(interp: ~>[CoreEff, QErrs_TaskM], shutdown: Task[slamdata.Predef.Unit]) extends Product with Serializable

    Permalink

    The Quasar Filesystem.

    The Quasar Filesystem. Contains the CoreEff that can be used to interpret most operations. Also has convenience methods for executing common operation within Task. The shutdown task should be called once you are done with it.

    shutdown

    Trigger the underlying connector drivers to shutdown cleanly.

Value Members

  1. object BackendConfig extends Serializable

    Permalink

    APaths relative to real filesystem root

  2. object Caching

    Permalink
  3. object CompositeFileSystem

    Permalink

    A FileSystem supporting views and physical filesystems mounted at various points in the hierarchy.

  4. object CoreEff extends Serializable

    Permalink
  5. object HierarchicalFsEff extends Serializable

    Permalink
  6. object KvsMounter

    Permalink
  7. val MainTask: MonadError[[γ$0$]EitherT[Task, String, γ$0$], slamdata.Predef.String]

    Permalink
  8. object MetaStoreLocation

    Permalink
  9. object MountEff extends Serializable

    Permalink
  10. object PhysFsEff extends Serializable

    Permalink
  11. object Prettify

    Permalink
  12. object QErrs extends Serializable

    Permalink
  13. object QErrs_Task extends Serializable

    Permalink
  14. object Quasar extends Serializable

    Permalink
  15. object analysis

    Permalink
  16. def attemptMountAll[S[_]](config: MountingsConfig)(implicit S: :<:[Mounting, S]): Free[S, slamdata.Predef.Map[APath, slamdata.Predef.String]]

    Permalink

    Mount all the mounts defined in the given configuration, returning the paths that failed to mount along with the reasons why.

  17. object config

    Permalink
  18. def initMetaStoreOrStart[C](config: CmdLineConfig, start: (C, ~>[CoreEff, QErrs_TaskM]) ⇒ MainTask[slamdata.Predef.Unit], persist: (DbConnectionConfig) ⇒ MainTask[slamdata.Predef.Unit])(implicit arg0: DecodeJson[C], configOps: ConfigOps[C]): MainTask[slamdata.Predef.Unit]

    Permalink

    Either initialize the metastore or execute the start depending on what command is provided by the user in the command line arguments

  19. def initUpdateMigrate[A](schema: Schema[A], tx: Transactor[Task], cfgFile: slamdata.Predef.Option[FsFile]): MainTask[slamdata.Predef.Unit]

    Permalink

    Initialize or update MetaStore Schema and migrate mounts from config file

  20. val log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  21. val logFailedMount: ((APath, slamdata.Predef.String)) ⇒ Task[slamdata.Predef.Unit]

    Permalink

    Prints a warning about the mount failure to the console.

  22. object metastore

    Permalink
  23. def mountHandler[S[_]](implicit S: :<:[FsAsk, S]): Free[S, MountRequestHandler[PhysFsEffM, HierarchicalFsEff]]

    Permalink

    Provides the mount handlers to update the hierarchical filesystem whenever a mount is added or removed.

  24. def physicalFileSystems(config: BackendConfig): Task[BackendDef[PhysFsEffM]]

    Permalink

    The physical filesystems currently supported.

    The physical filesystems currently supported. Please note that it is really best if you only sequence this task once per runtime. It won't misbehave, but it will waste resources if you run it multiple times. Thus, all uses of the value from this Task should be handled by Read[BackendDef[PhysFsEffM], ?] (or an analogous Kleisli).

    Annotations
    @SuppressWarnings()
  25. package query

    Permalink

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped