Documentation ¶
Index ¶
- Constants
- Variables
- func CopyOf(src []byte) []byte
- func CountFilesInDir(dir, ext string) int
- func CreateDirsIfNotExist(dirs ...string) error
- func DecodeMetadata(metadata int32) (Compressor, Cipher, CipherMode)
- func GetTimeUUID(key *pb.Key) timeuuid.UUID
- func MaxInt(x, y int) int
- func PackValue(key Key, value []byte, compressor Compressor, cipher Cipher, ...) (output []byte, err error)
- func ParseTtlExpr(ttlExpr string) (ttl time.Duration, err error)
- func ToPrintable(data []byte) interface{}
- func UnpackValue(key Key, value []byte, compressor Compressor, cipher Cipher, ...) (output []byte, err error)
- func VerboseMetadata(metadata int32) string
- type AESBlockCipher
- type Block
- type BlockKey
- type CFBCipherMode
- type Cipher
- type CipherMode
- type Client
- type Compressor
- type DefaultClient
- func (cli *DefaultClient) Close() error
- func (cli *DefaultClient) Get(builder KeyRequestBuilder) (Record, error)
- func (cli *DefaultClient) GetRange(builder RangeRequestBuilder) (Block, error)
- func (cli *DefaultClient) GetRecent(builder KeyRequestBuilder) (Record, error)
- func (cli *DefaultClient) GetRegion(builder KeyRequestBuilder, blockC chan<- Block) error
- func (cli *DefaultClient) GetRow(builder KeyRequestBuilder, blockC chan<- Block) error
- func (cli *DefaultClient) GetSpace(builder KeyRequestBuilder, blockC chan<- Block) error
- func (cli *DefaultClient) Put(builder RecordRequestBuilder) (Status, error)
- func (cli *DefaultClient) Remove(builder KeyRequestBuilder) (Status, error)
- func (cli *DefaultClient) Scan(builder ScanRequestBuilder, blockC chan<- Block) error
- func (cli *DefaultClient) Touch(builder RecordRequestBuilder) (Status, error)
- type EmptyHead
- type EmptyKey
- type GCMCipherMode
- type Head
- type HeadResponse
- type Key
- type KeyBuilder
- func (t KeyBuilder) Build() Key
- func (t KeyBuilder) MajorKey() []byte
- func (t KeyBuilder) MinorKey() []byte
- func (t KeyBuilder) RegionName() []byte
- func (t KeyBuilder) RemoveTimestamp() KeyBuilder
- func (t KeyBuilder) SetMajorKey(majorKey []byte) KeyBuilder
- func (t KeyBuilder) SetMinorKey(minorKey []byte) KeyBuilder
- func (t KeyBuilder) SetRegionName(regionName []byte) KeyBuilder
- func (t KeyBuilder) String() string
- func (t KeyBuilder) Timestamp() timeuuid.UUID
- func (t KeyBuilder) WithMajorKey(majorKey string) KeyBuilder
- func (t KeyBuilder) WithMaxTimestamp() KeyBuilder
- func (t KeyBuilder) WithMinTimestamp() KeyBuilder
- func (t KeyBuilder) WithMinorKey(minorKey string) KeyBuilder
- func (t KeyBuilder) WithNamedTimestamp(name []byte, timestampMillis int64) KeyBuilder
- func (t KeyBuilder) WithRandTimestamp(timestampMillis int64) KeyBuilder
- func (t KeyBuilder) WithRegionName(regionName string) KeyBuilder
- func (t KeyBuilder) WithTimestamp(uuid timeuuid.UUID) KeyBuilder
- type KeyRequestBuilder
- type Keychain
- type LZ4Compressor
- type LZ4HighCompressor
- type NoBlockCipher
- type NoCipher
- type NoCipherMode
- type NoCompression
- type PasswordbasedKeychain
- type RangeRequestBuilder
- type Record
- type RecordRequestBuilder
- func (t RecordRequestBuilder) CompareAndSet(version uint64) RecordRequestBuilder
- func (t RecordRequestBuilder) OnlyIfAbsent() RecordRequestBuilder
- func (t RecordRequestBuilder) SetMetadata(metadata int32) RecordRequestBuilder
- func (t RecordRequestBuilder) SetTtlSeconds(ttlSeconds int) RecordRequestBuilder
- func (t RecordRequestBuilder) SetValue(value []byte) RecordRequestBuilder
- func (t RecordRequestBuilder) UseCompression(compressor Compressor) RecordRequestBuilder
- func (t RecordRequestBuilder) UseEncryption(cipher Cipher, cipherMode CipherMode) RecordRequestBuilder
- func (t RecordRequestBuilder) WithTimeout(timeout int) RecordRequestBuilder
- func (t RecordRequestBuilder) WithTtlSeconds(ttlSeconds int) RecordRequestBuilder
- func (t RecordRequestBuilder) WithValue(pb proto.Message) RecordRequestBuilder
- type RecordResponse
- type ScanRequestBuilder
- type SnappyCompressor
- type Status
- type StatusResponse
Constants ¶
View Source
const ( Day = time.Hour * 24 Month = Day * 31 Year = Day * 365 )
Variables ¶
View Source
var ( NO_COMPRESSION = &NoCompression{} LZ4 = &LZ4Compressor{} LZ4_HIGH = &LZ4HighCompressor{} SNAPPY = &SnappyCompressor{} KnownCompressors = map[string]Compressor{ "LZ4": LZ4, "LZ4_HIGH": LZ4_HIGH, "SNAPPY": SNAPPY, } )
View Source
var ( NO_ENCRYPTION = &NoBlockCipher{} AES = &AESBlockCipher{256} NO_ENCRYPTION_MODE = &NoCipherMode{} GCM = &GCMCipherMode{} CFB = &CFBCipherMode{} KnownCiphers = map[string]Cipher{ "AES": AES, } KnownCipherModes = map[string]CipherMode{ "GCM": GCM, "CFB": CFB, } )
View Source
var (
ErrorInvalidKeyLength = errors.New("invalid key length")
)
Functions ¶
func CountFilesInDir ¶
func CreateDirsIfNotExist ¶
func DecodeMetadata ¶
func DecodeMetadata(metadata int32) (Compressor, Cipher, CipherMode)
func PackValue ¶
func PackValue(key Key, value []byte, compressor Compressor, cipher Cipher, cipherMode CipherMode, keychain Keychain) (output []byte, err error)
func ToPrintable ¶
func ToPrintable(data []byte) interface{}
func UnpackValue ¶
func UnpackValue(key Key, value []byte, compressor Compressor, cipher Cipher, cipherMode CipherMode, keychain Keychain) (output []byte, err error)
func VerboseMetadata ¶
Types ¶
type AESBlockCipher ¶
type AESBlockCipher struct {
// contains filtered or unexported fields
}
func (*AESBlockCipher) Create ¶
func (this *AESBlockCipher) Create(key []byte) (cipher.Block, error)
func (*AESBlockCipher) KeyLengthBits ¶
func (this *AESBlockCipher) KeyLengthBits() int
func (*AESBlockCipher) MetadataFlag ¶
func (this *AESBlockCipher) MetadataFlag() int32
func (*AESBlockCipher) String ¶
func (this *AESBlockCipher) String() string
type CFBCipherMode ¶
type CFBCipherMode struct { }
func (*CFBCipherMode) MetadataFlag ¶
func (this *CFBCipherMode) MetadataFlag() int32
func (*CFBCipherMode) String ¶
func (this *CFBCipherMode) String() string
type CipherMode ¶
type Client ¶
type Client interface { Get(KeyRequestBuilder) (Record, error) GetRecent(KeyRequestBuilder) (Record, error) GetRange(RangeRequestBuilder) (Block, error) GetRow(KeyRequestBuilder, chan<- Block) error GetRegion(KeyRequestBuilder, chan<- Block) error GetSpace(KeyRequestBuilder, chan<- Block) error Scan(ScanRequestBuilder, chan<- Block) error Touch(RecordRequestBuilder) (Status, error) Put(RecordRequestBuilder) (Status, error) Remove(KeyRequestBuilder) (Status, error) }
type Compressor ¶
type DefaultClient ¶
type DefaultClient struct {
// contains filtered or unexported fields
}
func (*DefaultClient) Close ¶
func (cli *DefaultClient) Close() error
func (*DefaultClient) Get ¶
func (cli *DefaultClient) Get(builder KeyRequestBuilder) (Record, error)
func (*DefaultClient) GetRange ¶
func (cli *DefaultClient) GetRange(builder RangeRequestBuilder) (Block, error)
func (*DefaultClient) GetRecent ¶
func (cli *DefaultClient) GetRecent(builder KeyRequestBuilder) (Record, error)
func (*DefaultClient) GetRegion ¶
func (cli *DefaultClient) GetRegion(builder KeyRequestBuilder, blockC chan<- Block) error
func (*DefaultClient) GetRow ¶
func (cli *DefaultClient) GetRow(builder KeyRequestBuilder, blockC chan<- Block) error
func (*DefaultClient) GetSpace ¶
func (cli *DefaultClient) GetSpace(builder KeyRequestBuilder, blockC chan<- Block) error
func (*DefaultClient) Put ¶
func (cli *DefaultClient) Put(builder RecordRequestBuilder) (Status, error)
func (*DefaultClient) Remove ¶
func (cli *DefaultClient) Remove(builder KeyRequestBuilder) (Status, error)
func (*DefaultClient) Scan ¶
func (cli *DefaultClient) Scan(builder ScanRequestBuilder, blockC chan<- Block) error
func (*DefaultClient) Touch ¶
func (cli *DefaultClient) Touch(builder RecordRequestBuilder) (Status, error)
type GCMCipherMode ¶
type GCMCipherMode struct { }
func (*GCMCipherMode) MetadataFlag ¶
func (this *GCMCipherMode) MetadataFlag() int32
func (*GCMCipherMode) String ¶
func (this *GCMCipherMode) String() string
type HeadResponse ¶
type HeadResponse struct {
// contains filtered or unexported fields
}
func (HeadResponse) DiskSize ¶
func (t HeadResponse) DiskSize() int64
func (HeadResponse) ExpiresAt ¶
func (t HeadResponse) ExpiresAt() uint64
func (HeadResponse) Metadata ¶
func (t HeadResponse) Metadata() int32
func (HeadResponse) String ¶
func (t HeadResponse) String() string
func (HeadResponse) Version ¶
func (t HeadResponse) Version() uint64
type Key ¶
type Key interface { MajorKey() []byte RegionName() []byte MinorKey() []byte Timestamp() timeuuid.UUID // contains filtered or unexported methods }
func ReadAllKeys ¶
type KeyBuilder ¶
type KeyBuilder struct {
// contains filtered or unexported fields
}
func NewKey ¶
func NewKey() KeyBuilder
func (KeyBuilder) Build ¶
func (t KeyBuilder) Build() Key
func (KeyBuilder) MajorKey ¶
func (t KeyBuilder) MajorKey() []byte
func (KeyBuilder) MinorKey ¶
func (t KeyBuilder) MinorKey() []byte
func (KeyBuilder) RegionName ¶
func (t KeyBuilder) RegionName() []byte
func (KeyBuilder) RemoveTimestamp ¶
func (t KeyBuilder) RemoveTimestamp() KeyBuilder
func (KeyBuilder) SetMajorKey ¶
func (t KeyBuilder) SetMajorKey(majorKey []byte) KeyBuilder
func (KeyBuilder) SetMinorKey ¶
func (t KeyBuilder) SetMinorKey(minorKey []byte) KeyBuilder
func (KeyBuilder) SetRegionName ¶
func (t KeyBuilder) SetRegionName(regionName []byte) KeyBuilder
func (KeyBuilder) String ¶
func (t KeyBuilder) String() string
func (KeyBuilder) Timestamp ¶
func (t KeyBuilder) Timestamp() timeuuid.UUID
func (KeyBuilder) WithMajorKey ¶
func (t KeyBuilder) WithMajorKey(majorKey string) KeyBuilder
func (KeyBuilder) WithMaxTimestamp ¶
func (t KeyBuilder) WithMaxTimestamp() KeyBuilder
func (KeyBuilder) WithMinTimestamp ¶
func (t KeyBuilder) WithMinTimestamp() KeyBuilder
func (KeyBuilder) WithMinorKey ¶
func (t KeyBuilder) WithMinorKey(minorKey string) KeyBuilder
func (KeyBuilder) WithNamedTimestamp ¶
func (t KeyBuilder) WithNamedTimestamp(name []byte, timestampMillis int64) KeyBuilder
func (KeyBuilder) WithRandTimestamp ¶
func (t KeyBuilder) WithRandTimestamp(timestampMillis int64) KeyBuilder
func (KeyBuilder) WithRegionName ¶
func (t KeyBuilder) WithRegionName(regionName string) KeyBuilder
func (KeyBuilder) WithTimestamp ¶
func (t KeyBuilder) WithTimestamp(uuid timeuuid.UUID) KeyBuilder
type KeyRequestBuilder ¶
type KeyRequestBuilder struct {
// contains filtered or unexported fields
}
func NewRequest ¶
func NewRequest(key Key) KeyRequestBuilder
func (KeyRequestBuilder) HeadOnly ¶
func (t KeyRequestBuilder) HeadOnly() KeyRequestBuilder
func (KeyRequestBuilder) WithTimeout ¶
func (t KeyRequestBuilder) WithTimeout(timeout int) KeyRequestBuilder
type LZ4Compressor ¶
type LZ4Compressor struct { }
func (*LZ4Compressor) Compress ¶
func (this *LZ4Compressor) Compress(input []byte) (output []byte, err error)
func (*LZ4Compressor) Decompress ¶
func (this *LZ4Compressor) Decompress(input []byte) (output []byte, err error)
func (*LZ4Compressor) MetadataFlag ¶
func (this *LZ4Compressor) MetadataFlag() int32
func (*LZ4Compressor) String ¶
func (this *LZ4Compressor) String() string
type LZ4HighCompressor ¶
type LZ4HighCompressor struct { }
func (*LZ4HighCompressor) Compress ¶
func (this *LZ4HighCompressor) Compress(input []byte) (output []byte, err error)
func (*LZ4HighCompressor) Decompress ¶
func (this *LZ4HighCompressor) Decompress(input []byte) (output []byte, err error)
func (*LZ4HighCompressor) MetadataFlag ¶
func (this *LZ4HighCompressor) MetadataFlag() int32
func (*LZ4HighCompressor) String ¶
func (this *LZ4HighCompressor) String() string
type NoBlockCipher ¶
type NoBlockCipher struct { }
func (*NoBlockCipher) KeyLengthBits ¶
func (this *NoBlockCipher) KeyLengthBits() int
func (*NoBlockCipher) MetadataFlag ¶
func (this *NoBlockCipher) MetadataFlag() int32
func (*NoBlockCipher) String ¶
func (this *NoBlockCipher) String() string
type NoCipherMode ¶
type NoCipherMode struct { }
func (*NoCipherMode) MetadataFlag ¶
func (this *NoCipherMode) MetadataFlag() int32
func (*NoCipherMode) String ¶
func (this *NoCipherMode) String() string
type NoCompression ¶
type NoCompression struct { }
func (*NoCompression) Compress ¶
func (this *NoCompression) Compress(input []byte) (output []byte, err error)
func (*NoCompression) Decompress ¶
func (this *NoCompression) Decompress(input []byte) (output []byte, err error)
func (*NoCompression) MetadataFlag ¶
func (this *NoCompression) MetadataFlag() int32
func (*NoCompression) String ¶
func (this *NoCompression) String() string
type PasswordbasedKeychain ¶
type PasswordbasedKeychain struct {
// contains filtered or unexported fields
}
func NewPasswordbasedKeychain ¶
func NewPasswordbasedKeychain(password string) (kc *PasswordbasedKeychain, err error)
func (*PasswordbasedKeychain) GetBlockKey ¶
type RangeRequestBuilder ¶
type RangeRequestBuilder struct {
// contains filtered or unexported fields
}
func NewRangeRequest ¶
func NewRangeRequest(key Key) RangeRequestBuilder
func (RangeRequestBuilder) HeadOnly ¶
func (t RangeRequestBuilder) HeadOnly() RangeRequestBuilder
func (RangeRequestBuilder) WithNumRecords ¶
func (t RangeRequestBuilder) WithNumRecords(numRecords int) RangeRequestBuilder
func (RangeRequestBuilder) WithTimeout ¶
func (t RangeRequestBuilder) WithTimeout(timeout int) RangeRequestBuilder
type Record ¶
type RecordRequestBuilder ¶
type RecordRequestBuilder struct {
// contains filtered or unexported fields
}
func NewProtoRecord ¶
func NewProtoRecord(key Key, pb proto.Message) RecordRequestBuilder
func NewRecord ¶
func NewRecord(key Key, value []byte) RecordRequestBuilder
func NewRecordRequest ¶
func NewRecordRequest(key Key) RecordRequestBuilder
func (RecordRequestBuilder) CompareAndSet ¶
func (t RecordRequestBuilder) CompareAndSet(version uint64) RecordRequestBuilder
func (RecordRequestBuilder) OnlyIfAbsent ¶
func (t RecordRequestBuilder) OnlyIfAbsent() RecordRequestBuilder
func (RecordRequestBuilder) SetMetadata ¶
func (t RecordRequestBuilder) SetMetadata(metadata int32) RecordRequestBuilder
func (RecordRequestBuilder) SetTtlSeconds ¶
func (t RecordRequestBuilder) SetTtlSeconds(ttlSeconds int) RecordRequestBuilder
func (RecordRequestBuilder) SetValue ¶
func (t RecordRequestBuilder) SetValue(value []byte) RecordRequestBuilder
func (RecordRequestBuilder) UseCompression ¶
func (t RecordRequestBuilder) UseCompression(compressor Compressor) RecordRequestBuilder
func (RecordRequestBuilder) UseEncryption ¶
func (t RecordRequestBuilder) UseEncryption(cipher Cipher, cipherMode CipherMode) RecordRequestBuilder
func (RecordRequestBuilder) WithTimeout ¶
func (t RecordRequestBuilder) WithTimeout(timeout int) RecordRequestBuilder
func (RecordRequestBuilder) WithTtlSeconds ¶
func (t RecordRequestBuilder) WithTtlSeconds(ttlSeconds int) RecordRequestBuilder
func (RecordRequestBuilder) WithValue ¶
func (t RecordRequestBuilder) WithValue(pb proto.Message) RecordRequestBuilder
type RecordResponse ¶
type RecordResponse struct {
// contains filtered or unexported fields
}
func (RecordResponse) Exist ¶
func (t RecordResponse) Exist() bool
func (RecordResponse) Head ¶
func (t RecordResponse) Head() Head
func (RecordResponse) Key ¶
func (t RecordResponse) Key() Key
func (RecordResponse) String ¶
func (t RecordResponse) String() string
func (RecordResponse) Value ¶
func (t RecordResponse) Value() []byte
type ScanRequestBuilder ¶
type ScanRequestBuilder struct {
// contains filtered or unexported fields
}
func NewScanRequest ¶
func NewScanRequest() ScanRequestBuilder
func (ScanRequestBuilder) HeadOnly ¶
func (t ScanRequestBuilder) HeadOnly() ScanRequestBuilder
type SnappyCompressor ¶
type SnappyCompressor struct { }
func (*SnappyCompressor) Compress ¶
func (this *SnappyCompressor) Compress(input []byte) (output []byte, err error)
func (*SnappyCompressor) Decompress ¶
func (this *SnappyCompressor) Decompress(input []byte) (output []byte, err error)
func (*SnappyCompressor) MetadataFlag ¶
func (this *SnappyCompressor) MetadataFlag() int32
func (*SnappyCompressor) String ¶
func (this *SnappyCompressor) String() string
type StatusResponse ¶
type StatusResponse struct {
// contains filtered or unexported fields
}
func (StatusResponse) String ¶
func (t StatusResponse) String() string
func (StatusResponse) Updated ¶
func (t StatusResponse) Updated() bool
Click to show internal directories.
Click to hide internal directories.