Documentation ¶
Index ¶
- Variables
- func SetDefaultRepository(r Repository)
- type Record
- type Repository
- type ResolveInfoType
- type SqliteDbResolver
- func (r *SqliteDbResolver) Create(hash, routing, publicKey string) (bool, error)
- func (r *SqliteDbResolver) Delete(hash string) (bool, error)
- func (r *SqliteDbResolver) Get(hash string) (*ResolveInfoType, error)
- func (r *SqliteDbResolver) Update(info *ResolveInfoType, routing, publicKey string) (bool, error)
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNotFound = errors.New("record not found")
ErrNotFound will be returned when a record we are looking for is not found in the db
Functions ¶
func SetDefaultRepository ¶
func SetDefaultRepository(r Repository)
Sets the default repository for resolving. Can be used to override for mocking/testing purposes
Types ¶
type Record ¶
type Record struct { Hash string `dynamodbav:"hash"` Routing string `dynamodbav:"routing"` PublicKey string `dynamodbav:"public_key"` Serial uint64 `dynamodbav:"sn"` }
Record holds a DynamoDB record
type Repository ¶
type Repository interface { Get(hash string) (*ResolveInfoType, error) Create(hash, routing, publicKey string) (bool, error) Update(info *ResolveInfoType, routing, publicKey string) (bool, error) Delete(hash string) (bool, error) }
Repository to resolve records
func GetResolveRepository ¶
func GetResolveRepository() Repository
GetResolveRepository returns a new repository based on DynamoDB
func NewBoltResolver ¶
func NewBoltResolver() Repository
NewBoltResolver returns a new resolver based on BoltDB
func NewDynamoDBResolver ¶
func NewDynamoDBResolver(client *dynamodb.DynamoDB, tableName string) Repository
NewDynamoDBResolver returns a new resolver based on DynamoDB
type ResolveInfoType ¶
ResolveInfoType returns information found in the resolver repository
type SqliteDbResolver ¶
func NewSqliteResolver ¶
func NewSqliteResolver(dsn string) *SqliteDbResolver
NewDynamoDBResolver returns a new resolver based on DynamoDB
func (*SqliteDbResolver) Create ¶
func (r *SqliteDbResolver) Create(hash, routing, publicKey string) (bool, error)
func (*SqliteDbResolver) Get ¶
func (r *SqliteDbResolver) Get(hash string) (*ResolveInfoType, error)
func (*SqliteDbResolver) Update ¶
func (r *SqliteDbResolver) Update(info *ResolveInfoType, routing, publicKey string) (bool, error)
Click to show internal directories.
Click to hide internal directories.