minor formatting
This commit is contained in:
@@ -7,8 +7,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
// TODO docstring
|
// Default implementation of IRepository using an IDatastore.
|
||||||
// Default implementation of IRepository
|
|
||||||
type DefaultRepository[T IIdentifiable] struct {
|
type DefaultRepository[T IIdentifiable] struct {
|
||||||
ds IDatastore
|
ds IDatastore
|
||||||
prefix string
|
prefix string
|
||||||
@@ -23,7 +22,6 @@ func NewDefaultRepository[T IIdentifiable](ds IDatastore, prefix string) *Defaul
|
|||||||
// error if there already exists an entry with the same id, the json encoding
|
// error if there already exists an entry with the same id, the json encoding
|
||||||
// fails or the connection to the IDatastore fails.
|
// fails or the connection to the IDatastore fails.
|
||||||
func (repo *DefaultRepository[T]) Create(t T) error {
|
func (repo *DefaultRepository[T]) Create(t T) error {
|
||||||
|
|
||||||
key := repo.prefix + ":" + strconv.FormatUint(uint64(t.Id()), 10)
|
key := repo.prefix + ":" + strconv.FormatUint(uint64(t.Id()), 10)
|
||||||
exists, err := repo.ds.KeyExists(key)
|
exists, err := repo.ds.KeyExists(key)
|
||||||
if err != nil { return err }
|
if err != nil { return err }
|
||||||
@@ -42,7 +40,6 @@ func (repo *DefaultRepository[T]) Create(t T) error {
|
|||||||
// t. Trows an error if the json encoding fails or the connection to the
|
// t. Trows an error if the json encoding fails or the connection to the
|
||||||
// IDatastore fails.
|
// IDatastore fails.
|
||||||
func (repo *DefaultRepository[T]) Update(t T) error {
|
func (repo *DefaultRepository[T]) Update(t T) error {
|
||||||
|
|
||||||
key := repo.prefix + ":" + strconv.FormatUint(uint64(t.Id()), 10)
|
key := repo.prefix + ":" + strconv.FormatUint(uint64(t.Id()), 10)
|
||||||
exists, err := repo.ds.KeyExists(key)
|
exists, err := repo.ds.KeyExists(key)
|
||||||
if err != nil { return err }
|
if err != nil { return err }
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import (
|
|||||||
"encoding/hex"
|
"encoding/hex"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// TODO docstring
|
||||||
type Article struct {
|
type Article struct {
|
||||||
Identifier uint
|
Identifier uint
|
||||||
SourceUrl string
|
SourceUrl string
|
||||||
@@ -16,17 +17,18 @@ type Article struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Generates a hash based on the source url of the article. Can be used to
|
||||||
|
// identify the article.
|
||||||
func (article *Article) Hash() string {
|
func (article *Article) Hash() string {
|
||||||
/* Generates a hash based on the source url of the article. Can be used to
|
|
||||||
* identify the article. */
|
|
||||||
|
|
||||||
hash := sha256.Sum256([]byte(article.SourceUrl))
|
hash := sha256.Sum256([]byte(article.SourceUrl))
|
||||||
return hex.EncodeToString(hash[:])
|
return hex.EncodeToString(hash[:])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// --- implementation of the IIdentifiable interface ---
|
// --- implement IIdentifiable interface ---
|
||||||
|
|
||||||
|
// Using the Identifier attribute as the Id.
|
||||||
func (article *Article) Id() uint {
|
func (article *Article) Id() uint {
|
||||||
return article.Identifier
|
return article.Identifier
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user