Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data Credentials = Credentials {}
- credsFromEnv :: IO (Maybe Credentials)
- data AuthInfo = AuthInfo {}
- data ConnectInfo = ConnectInfo {
- creds :: Credentials
- authInfo :: AuthInfo
- authorizeAccount :: Credentials -> IO ConnectInfo
- data LibErr
- = LEServer BB2Error
- | JsonErr Text
- | NoAuthFound
- | HeaderMissing HeaderName
- | HeaderParseError HeaderName ByteString [Char]
- type Bucket = Text
- data BucketType
- data BucketOpts = BucketOpts {
- boBucketInfo :: Maybe BucketInfo
- boLCRs :: [LifecycleRule]
- emptyBucketOpts :: BucketOpts
- data BucketData = BucketData {
- brdAccountId :: Text
- brdBucketId :: BucketId
- brdBucketName :: Bucket
- brdBucketType :: BucketType
- brdBucketInfo :: BucketInfo
- brdLifecycleRules :: [LifecycleRule]
- brdRevision :: Int64
- createBucket :: (MonadReader ConnectInfo m, MonadIO m) => Bucket -> BucketType -> BucketOpts -> m BucketData
- deleteBucket :: (MonadReader ConnectInfo m, MonadIO m) => BucketId -> m BucketData
- data AllBuckets = AllBuckets {
- abBuckets :: [BucketData]
- listBuckets :: (MonadReader ConnectInfo m, MonadIO m) => m AllBuckets
- type BucketId = Text
- data UploadUrlInfo = UploadUrlInfo {
- uuBucketId :: BucketId
- uuUploadUrl :: UploadUrl
- uuAuthorizationToken :: Text
- getUploadUrl :: (MonadReader ConnectInfo m, MonadIO m) => BucketId -> m UploadUrlInfo
- startLargeFile :: (MonadReader ConnectInfo m, MonadIO m) => BucketId -> Object -> FileProps -> m FileInfo
- data PartUploadUrlInfo = PartUploadUrlInfo {
- puuFileId :: FileId
- puuUploadUrl :: UploadUrl
- puuAuthorizationToken :: Text
- getUploadPartUrl :: (MonadReader ConnectInfo m, MonadIO m) => FileId -> m PartUploadUrlInfo
- data PartUploadResp = PartUploadResp {
- purFileId :: FileId
- purContentLength :: Int64
- purContentSha1 :: Text
- purUploadTimestamp :: BBTimestamp
- finishLargeFile :: (MonadReader ConnectInfo m, MonadIO m) => FileId -> [Text] -> m FileInfo
- data FileInfo = FileInfo {
- fiFileId :: Text
- fiFileName :: Text
- fiAccountId :: Text
- fiBucketId :: BucketId
- fiContentLength :: Int64
- fiContentSha1 :: Text
- fiContentType :: Text
- fiFileInfo :: Map Text Text
- fiAction :: Text
- fiUploadTimestamp :: BBTimestamp
- defaultFileProps :: FileProps
- data FileProps = FileProps {}
- data Stream = Stream {
- streamLength :: Int64
- streamSource :: ConduitT () ByteString IO ()
- uploadFile :: MonadIO m => UploadUrlInfo -> Object -> FileProps -> Stream -> m FileInfo
- uploadPart :: MonadIO m => PartUploadUrlInfo -> Int -> Stream -> m PartUploadResp
- getFileInfo :: (MonadReader ConnectInfo m, MonadIO m) => ObjectId -> m FileInfo
- data ObjectMetadata = ObjectMetadata {
- omContentLength :: Int64
- omContentType :: Text
- omObjectId :: ObjectId
- omObjectName :: Object
- omContentSha1 :: Text
- omXBzInfo :: Map Text Text
- omUploadTimestamp :: BBTimestamp
- omCacheControl :: Text
- newtype ObjectConsumer a = ObjectConsumer {
- unObjectConsumer :: (ObjectMetadata, IO ByteString) -> IO a
- downloadFileByName :: (MonadReader ConnectInfo m, MonadIO m) => Bucket -> Object -> ByteRanges -> ObjectConsumer a -> m a
- downloadFileById :: (MonadReader ConnectInfo m, MonadIO m) => ObjectId -> ByteRanges -> ObjectConsumer a -> m a
- data FileVersion = FileVersion {
- fvFileName :: Object
- fvFileId :: ObjectId
- deleteFileVersion :: (MonadReader ConnectInfo m, MonadIO m) => FileVersion -> m FileVersion
- data ObjectListArgs = ObjectListArgs {
- olaBucketId :: BucketId
- olaStartFileName :: Maybe Object
- olaMaxFileCount :: Maybe Int
- olaPrefix :: Maybe Object
- olaDelimiter :: Maybe Text
- data ObjectListResult = ObjectListResult {
- olrFiles :: [ListResultObjectItem]
- olrFolders :: [ListResultFolderItem]
- olrNextFileName :: Maybe Object
- data ListResultObjectItem = ListResultObjectItem {
- lroiFileId :: Text
- lroiFileName :: Object
- lroiContentLength :: Int64
- lroiContentType :: Maybe Text
- lroiContentSha1 :: Maybe Text
- lroiFileInfo :: Maybe (Map Text Text)
- lroiAction :: Text
- lroiUploadTimestamp :: BBTimestamp
- data ListResultFolderItem = ListResultFolderItem {
- lrfiFileName :: Object
- lrfiAction :: Text
- listFileNames :: (MonadReader ConnectInfo m, MonadIO m) => ObjectListArgs -> m ObjectListResult
Documentation
data Credentials Source #
Connection info with accountId and applicationKey from Backblaze B2 account UI.
Instances
Eq Credentials Source # | |
Defined in Network.BackblazeB2.Data (==) :: Credentials -> Credentials -> Bool # (/=) :: Credentials -> Credentials -> Bool # | |
Show Credentials Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> Credentials -> ShowS # show :: Credentials -> String # showList :: [Credentials] -> ShowS # |
credsFromEnv :: IO (Maybe Credentials) Source #
Creates Credentials
from B2_APP_KEY_ID and B2_APP_KEY
environment variables.
TODO: Load the rest of the auth info response too!
AuthInfo | |
|
data ConnectInfo Source #
Instances
Eq ConnectInfo Source # | |
Defined in Network.BackblazeB2.Data (==) :: ConnectInfo -> ConnectInfo -> Bool # (/=) :: ConnectInfo -> ConnectInfo -> Bool # | |
Show ConnectInfo Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> ConnectInfo -> ShowS # show :: ConnectInfo -> String # showList :: [ConnectInfo] -> ShowS # |
High-level error type for all errors from library
LEServer BB2Error | |
JsonErr Text | |
NoAuthFound | |
HeaderMissing HeaderName | |
HeaderParseError HeaderName ByteString [Char] |
Instances
Eq LibErr Source # | |
Show LibErr Source # | |
Exception LibErr Source # | |
Defined in Network.BackblazeB2.Data toException :: LibErr -> SomeException # fromException :: SomeException -> Maybe LibErr # displayException :: LibErr -> String # |
data BucketType Source #
Instances
Eq BucketType Source # | |
Defined in Network.BackblazeB2.Data (==) :: BucketType -> BucketType -> Bool # (/=) :: BucketType -> BucketType -> Bool # | |
Show BucketType Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> BucketType -> ShowS # show :: BucketType -> String # showList :: [BucketType] -> ShowS # | |
ToJSON BucketType Source # | |
Defined in Network.BackblazeB2.Data toJSON :: BucketType -> Value # toEncoding :: BucketType -> Encoding # toJSONList :: [BucketType] -> Value # toEncodingList :: [BucketType] -> Encoding # | |
FromJSON BucketType Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser BucketType # parseJSONList :: Value -> Parser [BucketType] # |
data BucketOpts Source #
BucketOpts | |
|
Instances
Eq BucketOpts Source # | |
Defined in Network.BackblazeB2.Data (==) :: BucketOpts -> BucketOpts -> Bool # (/=) :: BucketOpts -> BucketOpts -> Bool # | |
Show BucketOpts Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> BucketOpts -> ShowS # show :: BucketOpts -> String # showList :: [BucketOpts] -> ShowS # |
data BucketData Source #
BucketData | |
|
Instances
Eq BucketData Source # | |
Defined in Network.BackblazeB2.Data (==) :: BucketData -> BucketData -> Bool # (/=) :: BucketData -> BucketData -> Bool # | |
Show BucketData Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> BucketData -> ShowS # show :: BucketData -> String # showList :: [BucketData] -> ShowS # | |
Generic BucketData Source # | |
Defined in Network.BackblazeB2.Data type Rep BucketData :: Type -> Type # from :: BucketData -> Rep BucketData x # to :: Rep BucketData x -> BucketData # | |
FromJSON BucketData Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser BucketData # parseJSONList :: Value -> Parser [BucketData] # | |
type Rep BucketData Source # | |
Defined in Network.BackblazeB2.Data |
createBucket :: (MonadReader ConnectInfo m, MonadIO m) => Bucket -> BucketType -> BucketOpts -> m BucketData Source #
deleteBucket :: (MonadReader ConnectInfo m, MonadIO m) => BucketId -> m BucketData Source #
data AllBuckets Source #
Instances
Eq AllBuckets Source # | |
Defined in Network.BackblazeB2.Data (==) :: AllBuckets -> AllBuckets -> Bool # (/=) :: AllBuckets -> AllBuckets -> Bool # | |
Show AllBuckets Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> AllBuckets -> ShowS # show :: AllBuckets -> String # showList :: [AllBuckets] -> ShowS # | |
Generic AllBuckets Source # | |
Defined in Network.BackblazeB2.Data type Rep AllBuckets :: Type -> Type # from :: AllBuckets -> Rep AllBuckets x # to :: Rep AllBuckets x -> AllBuckets # | |
FromJSON AllBuckets Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser AllBuckets # parseJSONList :: Value -> Parser [AllBuckets] # | |
type Rep AllBuckets Source # | |
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]))) |
listBuckets :: (MonadReader ConnectInfo m, MonadIO m) => m AllBuckets Source #
data UploadUrlInfo Source #
UploadUrlInfo | |
|
Instances
Generic UploadUrlInfo Source # | |
Defined in Network.BackblazeB2.Data type Rep UploadUrlInfo :: Type -> Type # from :: UploadUrlInfo -> Rep UploadUrlInfo x # to :: Rep UploadUrlInfo x -> UploadUrlInfo # | |
FromJSON UploadUrlInfo Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser UploadUrlInfo # parseJSONList :: Value -> Parser [UploadUrlInfo] # | |
type Rep UploadUrlInfo Source # | |
Defined in Network.BackblazeB2.Data |
getUploadUrl :: (MonadReader ConnectInfo m, MonadIO m) => BucketId -> m UploadUrlInfo Source #
startLargeFile :: (MonadReader ConnectInfo m, MonadIO m) => BucketId -> Object -> FileProps -> m FileInfo Source #
data PartUploadUrlInfo Source #
PartUploadUrlInfo | |
|
Instances
Generic PartUploadUrlInfo Source # | |
Defined in Network.BackblazeB2.Data type Rep PartUploadUrlInfo :: Type -> Type # from :: PartUploadUrlInfo -> Rep PartUploadUrlInfo x # to :: Rep PartUploadUrlInfo x -> PartUploadUrlInfo # | |
FromJSON PartUploadUrlInfo Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser PartUploadUrlInfo # parseJSONList :: Value -> Parser [PartUploadUrlInfo] # | |
type Rep PartUploadUrlInfo Source # | |
Defined in Network.BackblazeB2.Data |
getUploadPartUrl :: (MonadReader ConnectInfo m, MonadIO m) => FileId -> m PartUploadUrlInfo Source #
data PartUploadResp Source #
PartUploadResp | |
|
Instances
Show PartUploadResp Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> PartUploadResp -> ShowS # show :: PartUploadResp -> String # showList :: [PartUploadResp] -> ShowS # | |
Generic PartUploadResp Source # | |
Defined in Network.BackblazeB2.Data type Rep PartUploadResp :: Type -> Type # from :: PartUploadResp -> Rep PartUploadResp x # to :: Rep PartUploadResp x -> PartUploadResp # | |
FromJSON PartUploadResp Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser PartUploadResp # parseJSONList :: Value -> Parser [PartUploadResp] # | |
type Rep PartUploadResp Source # | |
Defined in Network.BackblazeB2.Data |
finishLargeFile :: (MonadReader ConnectInfo m, MonadIO m) => FileId -> [Text] -> m FileInfo Source #
FileInfo | |
|
Stream type for uploading data to B2. It is made of a conduit and a length representing the size of the stream in bytes.
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.
uploadPart :: MonadIO m => PartUploadUrlInfo -> Int -> Stream -> m PartUploadResp Source #
getFileInfo :: (MonadReader ConnectInfo m, MonadIO m) => ObjectId -> m FileInfo Source #
data ObjectMetadata Source #
ObjectMetadata | |
|
Instances
Eq ObjectMetadata Source # | |
Defined in Network.BackblazeB2.Data (==) :: ObjectMetadata -> ObjectMetadata -> Bool # (/=) :: ObjectMetadata -> ObjectMetadata -> Bool # | |
Show ObjectMetadata Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> ObjectMetadata -> ShowS # show :: ObjectMetadata -> String # showList :: [ObjectMetadata] -> ShowS # |
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).
ObjectConsumer | |
|
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.
data FileVersion Source #
FileVersion | |
|
Instances
Eq FileVersion Source # | |
Defined in Network.BackblazeB2.Data (==) :: FileVersion -> FileVersion -> Bool # (/=) :: FileVersion -> FileVersion -> Bool # | |
Show FileVersion Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> FileVersion -> ShowS # show :: FileVersion -> String # showList :: [FileVersion] -> ShowS # | |
Generic FileVersion Source # | |
Defined in Network.BackblazeB2.Data type Rep FileVersion :: Type -> Type # from :: FileVersion -> Rep FileVersion x # to :: Rep FileVersion x -> FileVersion # | |
ToJSON FileVersion Source # | |
Defined in Network.BackblazeB2.Data toJSON :: FileVersion -> Value # toEncoding :: FileVersion -> Encoding # toJSONList :: [FileVersion] -> Value # toEncodingList :: [FileVersion] -> Encoding # | |
FromJSON FileVersion Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser FileVersion # parseJSONList :: Value -> Parser [FileVersion] # | |
type Rep FileVersion Source # | |
Defined in Network.BackblazeB2.Data |
deleteFileVersion :: (MonadReader ConnectInfo m, MonadIO m) => FileVersion -> m FileVersion Source #
data ObjectListArgs Source #
ObjectListArgs | |
|
Instances
Eq ObjectListArgs Source # | |
Defined in Network.BackblazeB2.Data (==) :: ObjectListArgs -> ObjectListArgs -> Bool # (/=) :: ObjectListArgs -> ObjectListArgs -> Bool # | |
Show ObjectListArgs Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> ObjectListArgs -> ShowS # show :: ObjectListArgs -> String # showList :: [ObjectListArgs] -> ShowS # | |
Generic ObjectListArgs Source # | |
Defined in Network.BackblazeB2.Data type Rep ObjectListArgs :: Type -> Type # from :: ObjectListArgs -> Rep ObjectListArgs x # to :: Rep ObjectListArgs x -> ObjectListArgs # | |
ToJSON ObjectListArgs Source # | |
Defined in Network.BackblazeB2.Data toJSON :: ObjectListArgs -> Value # toEncoding :: ObjectListArgs -> Encoding # toJSONList :: [ObjectListArgs] -> Value # toEncodingList :: [ObjectListArgs] -> Encoding # | |
type Rep ObjectListArgs Source # | |
Defined in Network.BackblazeB2.Data |
data ObjectListResult Source #
ObjectListResult | |
|
Instances
Eq ObjectListResult Source # | |
Defined in Network.BackblazeB2.Data (==) :: ObjectListResult -> ObjectListResult -> Bool # (/=) :: ObjectListResult -> ObjectListResult -> Bool # | |
Show ObjectListResult Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> ObjectListResult -> ShowS # show :: ObjectListResult -> String # showList :: [ObjectListResult] -> ShowS # | |
Generic ObjectListResult Source # | |
Defined in Network.BackblazeB2.Data type Rep ObjectListResult :: Type -> Type # from :: ObjectListResult -> Rep ObjectListResult x # to :: Rep ObjectListResult x -> ObjectListResult # | |
FromJSON ObjectListResult Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser ObjectListResult # parseJSONList :: Value -> Parser [ObjectListResult] # | |
type Rep ObjectListResult Source # | |
Defined in Network.BackblazeB2.Data |
data ListResultObjectItem Source #
ListResultObjectItem | |
|
Instances
Eq ListResultObjectItem Source # | |
Defined in Network.BackblazeB2.Data (==) :: ListResultObjectItem -> ListResultObjectItem -> Bool # (/=) :: ListResultObjectItem -> ListResultObjectItem -> Bool # | |
Show ListResultObjectItem Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> ListResultObjectItem -> ShowS # show :: ListResultObjectItem -> String # showList :: [ListResultObjectItem] -> ShowS # | |
Generic ListResultObjectItem Source # | |
Defined in Network.BackblazeB2.Data type Rep ListResultObjectItem :: Type -> Type # from :: ListResultObjectItem -> Rep ListResultObjectItem x # to :: Rep ListResultObjectItem x -> ListResultObjectItem # | |
FromJSON ListResultObjectItem Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser ListResultObjectItem # parseJSONList :: Value -> Parser [ListResultObjectItem] # | |
type Rep ListResultObjectItem Source # | |
Defined in Network.BackblazeB2.Data |
data ListResultFolderItem Source #
ListResultFolderItem | |
|
Instances
Eq ListResultFolderItem Source # | |
Defined in Network.BackblazeB2.Data (==) :: ListResultFolderItem -> ListResultFolderItem -> Bool # (/=) :: ListResultFolderItem -> ListResultFolderItem -> Bool # | |
Show ListResultFolderItem Source # | |
Defined in Network.BackblazeB2.Data showsPrec :: Int -> ListResultFolderItem -> ShowS # show :: ListResultFolderItem -> String # showList :: [ListResultFolderItem] -> ShowS # | |
Generic ListResultFolderItem Source # | |
Defined in Network.BackblazeB2.Data type Rep ListResultFolderItem :: Type -> Type # from :: ListResultFolderItem -> Rep ListResultFolderItem x # to :: Rep ListResultFolderItem x -> ListResultFolderItem # | |
FromJSON ListResultFolderItem Source # | |
Defined in Network.BackblazeB2.Data parseJSON :: Value -> Parser ListResultFolderItem # parseJSONList :: Value -> Parser [ListResultFolderItem] # | |
type Rep ListResultFolderItem Source # | |
Defined in Network.BackblazeB2.Data |
listFileNames :: (MonadReader ConnectInfo m, MonadIO m) => ObjectListArgs -> m ObjectListResult Source #