Commit: Bulk unfinished work

This commit is contained in:
2026-01-22 17:39:04 +01:00
parent 6c46b4efcc
commit 3a9acc42a2
68 changed files with 5047 additions and 1064 deletions

48
repositories/message.go Normal file
View File

@@ -0,0 +1,48 @@
package repositories
import (
"context"
"errors"
"git.kocoder.xyz/kocoded/vt/fx/interfaces/stores"
)
type InMemoryMessageRepository struct {
m map[int]*stores.Message
}
func (i *InMemoryMessageRepository) AddMessage(_ context.Context, m *stores.Message) error {
i.m[m.Id] = m
return nil
}
func (i *InMemoryMessageRepository) GetMessage(ctx context.Context, id int) (*stores.Message, error) {
m, ok := i.m[id]
if !ok {
return nil, errors.New("Message not found")
}
return m, nil
}
func (i *InMemoryMessageRepository) ListMessages(ctx context.Context) ([]*stores.Message, error) {
messages := make([]*stores.Message, 0, len(i.m))
for _, v := range i.m {
messages = append(messages, v)
}
return messages, nil
}
func (i *InMemoryMessageRepository) RemoveMessage(ctx context.Context, id int) error {
delete(i.m, id)
return nil
}
func NewInMemeoryMessageRepository() stores.MessageStore {
return &InMemoryMessageRepository{}
}