| Safe Haskell | Safe-Inferred |
|---|---|
| Language | GHC2021 |
Effectful.Globus
Synopsis
- data Globus :: Effect where
- AuthUrl :: Uri Redirect -> NonEmpty Scope -> State -> Globus m (Uri Authorization)
- GetUserInfo :: Token OpenId -> Globus m UserInfoResponse
- GetAccessTokens :: Token Exchange -> Uri Redirect -> Globus m (NonEmpty TokenItem)
- SubmissionId :: Token Access -> Globus m (Id Submission)
- Transfer :: Token Access -> TransferRequest -> Globus m TransferResponse
- StatusTask :: Token Access -> Id Task -> Globus m Task
- StatusTasks :: Token Access -> TaskFilters -> Globus m TaskList
- data GlobusClient = GlobusClient {}
- runGlobus :: IOE :> es => GlobusClient -> Eff (Globus : es) a -> Eff es a
- newtype State = State Text
- data Scheme
- newtype Tagged (s :: k) b = Tagged {
- unTagged :: b
- module Network.Globus.Types
- data TransferRequest = TransferRequest {
- data_type :: DataType "transfer"
- submission_id :: Id Submission
- label :: Maybe Text
- source_endpoint :: Id Collection
- destination_endpoint :: Id Collection
- data_ :: [TransferItem]
- sync_level :: SyncLevel
- store_base_path_info :: Bool
- data TransferResponse = TransferResponse {
- task_id :: Id Task
- submission_id :: Token Submission
- message :: Text
- resource :: Text
- request_id :: Token Request
- data TransferItem = TransferItem {
- data_type :: DataType "transfer_item"
- source_path :: FilePath
- destination_path :: FilePath
- recursive :: Bool
- data SyncLevel
- data Task = Task {
- status :: TaskStatus
- task_id :: Id Task
- label :: Text
- files :: Int
- directories :: Int
- files_skipped :: Int
- files_transferred :: Int
- bytes_transferred :: Int
- bytes_checksummed :: Int
- effective_bytes_per_second :: Int
- nice_status :: Maybe Text
- source_endpoint_id :: Id Collection
- destination_endpoint_id :: Id Collection
- data TaskStatus
- newtype TaskFilters = TaskFilters {
- status :: [TaskStatus]
- data TaskList = TaskList {}
Documentation
data Globus :: Effect where Source #
Constructors
| AuthUrl :: Uri Redirect -> NonEmpty Scope -> State -> Globus m (Uri Authorization) | |
| GetUserInfo :: Token OpenId -> Globus m UserInfoResponse | |
| GetAccessTokens :: Token Exchange -> Uri Redirect -> Globus m (NonEmpty TokenItem) | |
| SubmissionId :: Token Access -> Globus m (Id Submission) | |
| Transfer :: Token Access -> TransferRequest -> Globus m TransferResponse | |
| StatusTask :: Token Access -> Id Task -> Globus m Task | |
| StatusTasks :: Token Access -> TaskFilters -> Globus m TaskList |
Instances
| type DispatchOf Globus Source # | |
Defined in Effectful.Globus | |
data GlobusClient Source #
Constructors
| GlobusClient | |
Fields | |
Opaque secret identifying the user. Validate on redirect
A type-level tag that specifies URL scheme used (and thus if HTTPS is
enabled). This is used to force TLS requirement for some authentication
Options.
Instances
| Data Scheme | |
Defined in Network.HTTP.Req Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Scheme -> c Scheme # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Scheme # toConstr :: Scheme -> Constr # dataTypeOf :: Scheme -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Scheme) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Scheme) # gmapT :: (forall b. Data b => b -> b) -> Scheme -> Scheme # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Scheme -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Scheme -> r # gmapQ :: (forall d. Data d => d -> u) -> Scheme -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Scheme -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Scheme -> m Scheme # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Scheme -> m Scheme # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Scheme -> m Scheme # | |
| Generic Scheme | |
| Show Scheme | |
| Eq Scheme | |
| Ord Scheme | |
| Lift Scheme | |
| type Rep Scheme | |
A value is a value Tagged s bb with an attached phantom type s.
This can be used in place of the more traditional but less safe idiom of
passing in an undefined value with the type, because unlike an (s -> b),
a can't try to use the argument Tagged s bs as a real value.
Moreover, you don't have to rely on the compiler to inline away the extra argument, because the newtype is "free"
Tagged has kind k -> * -> * if the compiler supports PolyKinds, therefore
there is an extra k showing in the instance haddocks that may cause confusion.
Instances
module Network.Globus.Types
data TransferRequest Source #
Constructors
| TransferRequest | |
Fields
| |
Instances
data TransferResponse Source #
Constructors
| TransferResponse | |
Fields
| |
Instances
data TransferItem Source #
Constructors
| TransferItem | |
Fields
| |
Instances
Constructors
| SyncExists | |
| SyncSize | |
| SyncTimestamp | |
| SyncChecksum |
Constructors
| Task | |
Fields
| |
Instances
data TaskStatus Source #
Instances
| Generic TaskStatus Source # | |
Defined in Network.Globus.Transfer Associated Types type Rep TaskStatus :: Type -> Type # | |
| Show TaskStatus Source # | |
Defined in Network.Globus.Transfer Methods showsPrec :: Int -> TaskStatus -> ShowS # show :: TaskStatus -> String # showList :: [TaskStatus] -> ShowS # | |
| Eq TaskStatus Source # | |
Defined in Network.Globus.Transfer | |
| FromJSON TaskStatus Source # | |
Defined in Network.Globus.Transfer | |
| type Rep TaskStatus Source # | |
Defined in Network.Globus.Transfer type Rep TaskStatus = D1 ('MetaData "TaskStatus" "Network.Globus.Transfer" "globus-0.1.2-inplace" 'False) ((C1 ('MetaCons "Active" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Inactive" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Succeeded" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Failed" 'PrefixI 'False) (U1 :: Type -> Type))) | |
newtype TaskFilters Source #
Constructors
| TaskFilters | |
Fields
| |
Instances
| Monoid TaskFilters Source # | |
Defined in Network.Globus.Transfer Methods mempty :: TaskFilters # mappend :: TaskFilters -> TaskFilters -> TaskFilters # mconcat :: [TaskFilters] -> TaskFilters # | |
| Semigroup TaskFilters Source # | |
Defined in Network.Globus.Transfer Methods (<>) :: TaskFilters -> TaskFilters -> TaskFilters # sconcat :: NonEmpty TaskFilters -> TaskFilters # stimes :: Integral b => b -> TaskFilters -> TaskFilters # | |
| Show TaskFilters Source # | |
Defined in Network.Globus.Transfer Methods showsPrec :: Int -> TaskFilters -> ShowS # show :: TaskFilters -> String # showList :: [TaskFilters] -> ShowS # | |
| Eq TaskFilters Source # | |
Defined in Network.Globus.Transfer | |
Instances
| Generic TaskList Source # | |
| Show TaskList Source # | |
| FromJSON TaskList Source # | |
Defined in Network.Globus.Transfer | |
| type Rep TaskList Source # | |
Defined in Network.Globus.Transfer type Rep TaskList = D1 ('MetaData "TaskList" "Network.Globus.Transfer" "globus-0.1.2-inplace" 'False) (C1 ('MetaCons "TaskList" 'PrefixI 'True) ((S1 ('MetaSel ('Just "length") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "limit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)) :*: (S1 ('MetaSel ('Just "offset") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Just "total") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "data_") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Task]))))) | |