riak-1.1.2.5: A Haskell client for the Riak decentralized data store

Copyright(c) 2011 MailRank Inc.
LicenseApache
MaintainerMark Hibberd <mark@hibberd.id.au>, Nathan Hunter <nhunter@janrain.com>
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell98

Network.Riak.Types

Contents

Description

Basic types.

Synopsis

Client management

type ClientID = ByteString #

A client identifier. This is used by the Riak cluster when logging vector clock changes, and should be unique for each client.

data Client #

Constructors

Client 

Fields

Instances
Eq Client # 
Instance details

Defined in Network.Riak.Types.Internal

Methods

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

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

Show Client # 
Instance details

Defined in Network.Riak.Types.Internal

Connection management

data Connection #

A connection to a Riak server.

Instances
Eq Connection # 
Instance details

Defined in Network.Riak.Types.Internal

Show Connection # 
Instance details

Defined in Network.Riak.Types.Internal

Errors

Data types

type BucketType = ByteString #

Bucket types is a riak >= 2.0 feature allowing groups of buckets to share configuration details

type Bucket = ByteString #

A Bucket is a container and keyspace for data stored in Riak, with a set of common properties for its contents (the number of replicas, for instance).

type Key = ByteString #

Keys are unique object identifiers in Riak and are scoped within buckets.

type Tag = ByteString #

An application-specific identifier for a link. See http://wiki.basho.com/Links.html for details.

newtype VClock #

A wrapper that keeps Riak vector clocks opaque.

Constructors

VClock 

Fields

Instances
Eq VClock # 
Instance details

Defined in Network.Riak.Types.Internal

Methods

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

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

Show VClock # 
Instance details

Defined in Network.Riak.Types.Internal

data Job #

A specification of a MapReduce job. http://wiki.basho.com/MapReduce.html.

Instances
Eq Job # 
Instance details

Defined in Network.Riak.Types.Internal

Methods

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

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

Show Job # 
Instance details

Defined in Network.Riak.Types.Internal

Methods

showsPrec :: Int -> Job -> ShowS #

show :: Job -> String #

showList :: [Job] -> ShowS #

Quorum management

data Quorum #

A read/write quorum. The quantity of replicas that must respond to a read or write request before it is considered successful. This is defined as a bucket property or as one of the relevant parameters to a single request (R,W,DW,RW).

Constructors

Default

Use the default quorum settings for the bucket.

One

Success after one server has responded.

Quorum

Success after a quorum of servers has responded.

All

Success after all servers have responded.

Instances
Bounded Quorum # 
Instance details

Defined in Network.Riak.Types.Internal

Enum Quorum # 
Instance details

Defined in Network.Riak.Types.Internal

Eq Quorum # 
Instance details

Defined in Network.Riak.Types.Internal

Methods

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

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

Ord Quorum # 
Instance details

Defined in Network.Riak.Types.Internal

Show Quorum # 
Instance details

Defined in Network.Riak.Types.Internal

type RW = Quorum #

Read/write quorum. How many replicas need to collaborate when deleting a value.

type R = Quorum #

Read quorum. How many replicas need to agree when retrieving a value.

type W = Quorum #

Write quorum. How many replicas to write to before returning a successful response.

type DW = Quorum #

Durable write quorum. How many replicas to commit to durable storage before returning a successful response.

Message identification

class (Tagged msg, ReflectDescriptor msg, Show msg, Wire msg) => Request msg #

A message representing a request from client to server.

Minimal complete definition

expectedResponse

Instances
Request YzIndexPutRequest # 
Instance details

Defined in Network.Riak.Tag

Request YzIndexGetRequest # 
Instance details

Defined in Network.Riak.Tag

Request YzIndexDeleteRequest # 
Instance details

Defined in Network.Riak.Tag

Request DtUpdateRequest # 
Instance details

Defined in Network.Riak.Tag

Request SetClientIDRequest # 
Instance details

Defined in Network.Riak.Tag

Request SetBucketRequest # 
Instance details

Defined in Network.Riak.Tag

Request SearchQueryRequest # 
Instance details

Defined in Network.Riak.Tag

Request PutRequest # 
Instance details

Defined in Network.Riak.Tag

Request PingRequest # 
Instance details

Defined in Network.Riak.Tag

Request MapReduceRequest # 
Instance details

Defined in Network.Riak.Tag

Request ListKeysRequest # 
Instance details

Defined in Network.Riak.Tag

Request ListBucketsRequest # 
Instance details

Defined in Network.Riak.Tag

Request IndexRequest # 
Instance details

Defined in Network.Riak.Tag

Request GetServerInfoRequest # 
Instance details

Defined in Network.Riak.Tag

Request GetRequest # 
Instance details

Defined in Network.Riak.Tag

Request GetClientIDRequest # 
Instance details

Defined in Network.Riak.Tag

Request GetBucketTypeRequest # 
Instance details

Defined in Network.Riak.Tag

Request GetBucketRequest # 
Instance details

Defined in Network.Riak.Tag

Request DtFetchRequest # 
Instance details

Defined in Network.Riak.Tag

Request DeleteRequest # 
Instance details

Defined in Network.Riak.Tag

class (Tagged msg, ReflectDescriptor msg, Show msg, Wire msg) => Response msg #

A message representing a response from server to client.

Instances
Response YzIndexGetResponse # 
Instance details

Defined in Network.Riak.Tag

Response ServerInfo # 
Instance details

Defined in Network.Riak.Tag

Response SearchQueryResponse # 
Instance details

Defined in Network.Riak.Tag

Response PutResponse # 
Instance details

Defined in Network.Riak.Tag

Response GetResponse # 
Instance details

Defined in Network.Riak.Tag

Response IndexResponse # 
Instance details

Defined in Network.Riak.Tag

Response GetBucketResponse # 
Instance details

Defined in Network.Riak.Tag

Response MapReduce # 
Instance details

Defined in Network.Riak.Tag

Response DtUpdateResponse # 
Instance details

Defined in Network.Riak.Tag

Response DtFetchResponse # 
Instance details

Defined in Network.Riak.Tag

Response ListKeysResponse # 
Instance details

Defined in Network.Riak.Tag

Response ListBucketsResponse # 
Instance details

Defined in Network.Riak.Tag

Response GetClientIDResponse # 
Instance details

Defined in Network.Riak.Tag

Response ErrorResponse # 
Instance details

Defined in Network.Riak.Tag

data MessageTag #

List of (known to us) inbound or outbound message identifiers.

Instances
Eq MessageTag # 
Instance details

Defined in Network.Riak.Types.Internal

Show MessageTag # 
Instance details

Defined in Network.Riak.Types.Internal

Generic MessageTag # 
Instance details

Defined in Network.Riak.Types.Internal

Associated Types

type Rep MessageTag :: * -> * #

Hashable MessageTag # 
Instance details

Defined in Network.Riak.Types.Internal

Tagged MessageTag # 
Instance details

Defined in Network.Riak.Types.Internal

type Rep MessageTag # 
Instance details

Defined in Network.Riak.Types.Internal

type Rep MessageTag = D1 (MetaData "MessageTag" "Network.Riak.Types.Internal" "riak-1.1.2.5-KWQXjHso6ubKlDhGH5ul14" False) (((((C1 (MetaCons "ErrorResponse" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "PingRequest" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "PingResponse" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "GetClientIDRequest" PrefixI False) (U1 :: * -> *))) :+: ((C1 (MetaCons "GetClientIDResponse" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "SetClientIDRequest" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "SetClientIDResponse" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "GetServerInfoRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "GetServerInfoResponse" PrefixI False) (U1 :: * -> *))))) :+: (((C1 (MetaCons "GetRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "GetResponse" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "PutRequest" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "PutResponse" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "DeleteRequest" PrefixI False) (U1 :: * -> *)))) :+: ((C1 (MetaCons "DeleteResponse" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "ListBucketsRequest" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "ListBucketsResponse" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "ListKeysRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "ListKeysResponse" PrefixI False) (U1 :: * -> *)))))) :+: ((((C1 (MetaCons "GetBucketRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "GetBucketResponse" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "SetBucketRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "SetBucketResponse" PrefixI False) (U1 :: * -> *))) :+: ((C1 (MetaCons "GetBucketTypeRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "MapReduceRequest" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "MapReduceResponse" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "IndexRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "IndexResponse" PrefixI False) (U1 :: * -> *))))) :+: (((C1 (MetaCons "DtFetchRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "DtFetchResponse" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "DtUpdateRequest" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "DtUpdateResponse" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "SearchQueryRequest" PrefixI False) (U1 :: * -> *)))) :+: ((C1 (MetaCons "SearchQueryResponse" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "YokozunaIndexGetRequest" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "YokozunaIndexGetResponse" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "YokozunaIndexPutRequest" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "YokozunaIndexDeleteRequest" PrefixI False) (U1 :: * -> *)))))))

class Tagged msg where #

Messages are tagged.

Minimal complete definition

messageTag

Methods

messageTag #

Arguments

:: msg 
-> MessageTag

Retrieve a message's tag.

Instances
Tagged YzIndexPutRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged YzIndexGetResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged YzIndexGetRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged YzIndexDeleteRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged DtUpdateRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged SetClientIDRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged SetBucketRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged ServerInfo # 
Instance details

Defined in Network.Riak.Tag

Tagged SearchQueryResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged SearchQueryRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged PutResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged PutRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged PingRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged GetResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged IndexResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged GetBucketResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged MapReduceRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged MapReduce # 
Instance details

Defined in Network.Riak.Tag

Tagged DtUpdateResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged DtFetchResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged ListKeysResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged ListKeysRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged ListBucketsResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged ListBucketsRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged IndexRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged GetServerInfoRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged GetRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged GetClientIDResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged GetClientIDRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged GetBucketTypeRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged GetBucketRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged ErrorResponse # 
Instance details

Defined in Network.Riak.Tag

Tagged DtFetchRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged DeleteRequest # 
Instance details

Defined in Network.Riak.Tag

Tagged MessageTag # 
Instance details

Defined in Network.Riak.Types.Internal

data IndexValue #

Instances
Eq IndexValue # 
Instance details

Defined in Network.Riak.Types.Internal

Show IndexValue # 
Instance details

Defined in Network.Riak.Types.Internal

data IndexQuery #

Index query. Can be exact or range, int or bin. Index name should not contain the "_bin" or "_int" part, since it's determined from data constructor.

Instances
Eq IndexQuery # 
Instance details

Defined in Network.Riak.Types.Internal

Show IndexQuery # 
Instance details

Defined in Network.Riak.Types.Internal