backblaze-b2-hs-0.1.0.0: A client library to access Backblaze B2 cloud storage in Haskell.

Safe HaskellNone
LanguageHaskell2010

Network.BackblazeB2.B2API

Synopsis

Documentation

data Credentials Source #

Connection info with accountId and applicationKey from Backblaze B2 account UI.

Constructors

Credentials 

credsFromEnv :: IO (Maybe Credentials) Source #

Creates Credentials from B2_APP_KEY_ID and B2_APP_KEY environment variables.

data AuthInfo Source #

TODO: Load the rest of the auth info response too!

Instances
Eq AuthInfo Source # 
Instance details

Defined in Network.BackblazeB2.Data

Show AuthInfo Source # 
Instance details

Defined in Network.BackblazeB2.Data

FromJSON AuthInfo Source # 
Instance details

Defined in Network.BackblazeB2.Data

data LibErr Source #

High-level error type for all errors from library

Instances
Eq LibErr Source # 
Instance details

Defined in Network.BackblazeB2.Data

Methods

(==) :: LibErr -> LibErr -> Bool #

(/=) :: LibErr -> LibErr -> Bool #

Show LibErr Source # 
Instance details

Defined in Network.BackblazeB2.Data

Exception LibErr Source # 
Instance details

Defined in Network.BackblazeB2.Data

data BucketOpts Source #

Constructors

BucketOpts 

Fields

Instances
Eq BucketOpts Source # 
Instance details

Defined in Network.BackblazeB2.Data

Show BucketOpts Source # 
Instance details

Defined in Network.BackblazeB2.Data

data BucketData Source #

Instances
Eq BucketData Source # 
Instance details

Defined in Network.BackblazeB2.Data

Show BucketData Source # 
Instance details

Defined in Network.BackblazeB2.Data

Generic BucketData Source # 
Instance details

Defined in Network.BackblazeB2.Data

Associated Types

type Rep BucketData :: Type -> Type #

FromJSON BucketData Source # 
Instance details

Defined in Network.BackblazeB2.Data

type Rep BucketData Source # 
Instance details

Defined in Network.BackblazeB2.Data

data AllBuckets Source #

Constructors

AllBuckets 

Fields

Instances
Eq AllBuckets Source # 
Instance details

Defined in Network.BackblazeB2.Data

Show AllBuckets Source # 
Instance details

Defined in Network.BackblazeB2.Data

Generic AllBuckets Source # 
Instance details

Defined in Network.BackblazeB2.Data

Associated Types

type Rep AllBuckets :: Type -> Type #

FromJSON AllBuckets Source # 
Instance details

Defined in Network.BackblazeB2.Data

type Rep AllBuckets Source # 
Instance details

Defined in Network.BackblazeB2.Data

type Rep AllBuckets = D1 (MetaData "AllBuckets" "Network.BackblazeB2.Data" "backblaze-b2-hs-0.1.0.0-9pGwcOJ9rtG6GgvqIf19eb" False) (C1 (MetaCons "AllBuckets" PrefixI True) (S1 (MetaSel (Just "abBuckets") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [BucketData])))

data FileInfo Source #

Instances
Eq FileInfo Source # 
Instance details

Defined in Network.BackblazeB2.Data

Show FileInfo Source # 
Instance details

Defined in Network.BackblazeB2.Data

Generic FileInfo Source # 
Instance details

Defined in Network.BackblazeB2.Data

Associated Types

type Rep FileInfo :: Type -> Type #

Methods

from :: FileInfo -> Rep FileInfo x #

to :: Rep FileInfo x -> FileInfo #

FromJSON FileInfo Source # 
Instance details

Defined in Network.BackblazeB2.Data

type Rep FileInfo Source # 
Instance details

Defined in Network.BackblazeB2.Data

data Stream Source #

Stream type for uploading data to B2. It is made of a conduit and a length representing the size of the stream in bytes.

Constructors

Stream 

uploadFile :: MonadIO m => UploadUrlInfo -> Object -> FileProps -> Stream -> m FileInfo Source #

Performs the b2_upload_file call with a Stream that provides the bytes for the file content.

newtype ObjectConsumer a Source #

An object consumer is a function that receives object metadat and an action that returns chunks of the body (returning an empty bytestring when no more bytes are available).

downloadFileByName :: (MonadReader ConnectInfo m, MonadIO m) => Bucket -> Object -> ByteRanges -> ObjectConsumer a -> m a Source #

Download a file by name and pass the result to the provided consumer.

downloadFileById :: (MonadReader ConnectInfo m, MonadIO m) => ObjectId -> ByteRanges -> ObjectConsumer a -> m a Source #

downloadFileById downloads an object given its Id and calls the provided consumer on it.