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[File]) 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, CoreEff0, A]

    Permalink
  6. type CoreEff0[A] = Coproduct[Module, CoreEff1, A]

    Permalink
  7. type CoreEff1[A] = Coproduct[Mounting, CoreEff2, A]

    Permalink
  8. type CoreEff2[A] = Coproduct[Analyze, CoreEff3, A]

    Permalink
  9. type CoreEff3[A] = Coproduct[QueryFile, CoreEff4, A]

    Permalink
  10. type CoreEff4[A] = Coproduct[ReadFile, CoreEff5, A]

    Permalink
  11. type CoreEff5[A] = Coproduct[WriteFile, CoreEff6, A]

    Permalink
  12. type CoreEff6[A] = Coproduct[ManageFile, CoreEff7, A]

    Permalink
  13. type CoreEff7[A] = Coproduct[VCacheKVS, CoreEff8, A]

    Permalink
  14. type CoreEff8[A] = Coproduct[Timing, CoreErrs, A]

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

    Permalink

    Effect comprising the core Quasar apis.

    Effect comprising the core Quasar apis. NB: CoM is avoided due to significantly longer compile times at usage sites.

  16. type CoreEffIORW[A] = Coproduct[VCacheExpR, CoreEffIOW, A]

    Permalink
  17. type CoreEffIOW[A] = Coproduct[VCacheExpW, CoreEffIO, A]

    Permalink
  18. type CoreErrs[A] = Coproduct[Failure, CoreErrs1, A]

    Permalink

    The types of failure from core apis.

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

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

    Permalink
  21. final case class FS(core: ~>[BackendEffect, QErrs_TaskM], mounting: ~>[Mounting, QErrs_TaskM], shutdown: Task[slamdata.Predef.Unit]) extends Product with Serializable

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

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

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

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

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

    Permalink

    The effects required by hierarchical FileSystem operations.

  27. type HierarchicalFsRef[A] = AtomicRef[~>[BackendEffect, [β$12$]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], β$12$]], A]

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

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

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

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

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

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

    Permalink

    Effects required for mounting.

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

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

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

    Permalink

    Effects that physical filesystems are permitted.

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

    Permalink

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

  38. type QErrs_CRW_Task[A] = Coproduct[[A]Read[AnyRef { ... /* 2 definitions in type refinement */ }, A], [A]Coproduct[[A]Write[AnyRef { ... /* 2 definitions in type refinement */ }, A], [A]Coproduct[Task, [A]Coproduct[[A]Failure[PhysicalError, A], [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]

    Permalink
  39. type QErrs_CRW_TaskM[A] = Free[QErrs_CRW_Task, A]

    Permalink
  40. type QErrs_Task[A] = Coproduct[Task, QErrs, A]

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

    Permalink
  42. final case class Quasar(interp: ~>[CoreEff, QErrs_CRW_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.

  43. final case class QuasarAPIImpl[F[_]](inter: ~>[CoreEff, F])(implicit evidence$1: Monad[F]) extends Product with Serializable

    Permalink

    The top level Quasar programmatic API.

    The top level Quasar programmatic API. Not yet complete, but will be made more exhaustive over time.

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 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_CRW_Task extends Serializable

    Permalink
  14. object Quasar extends Serializable

    Permalink
  15. val QuasarAPI: QuasarAPIImpl[[β$1$]Free[[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], β$1$]]

    Permalink
  16. object analysis

    Permalink
  17. 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.

  18. object config

    Permalink
  19. def connectionIOToTask(metaRef: TaskRef[MetaStore]): ~>[ConnectionIO, Task]

    Permalink
  20. def initMetaStoreOrStart[C](config: CmdLineConfig, start: (C, ~>[CoreEff, QErrs_CRW_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

  21. 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

  22. val log: Logger

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

    Permalink

    Prints a warning about the mount failure to the console.

  24. object metastore

    Permalink
  25. 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.

  26. 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()
  27. package query

    Permalink

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped