Skip to main content
Glama

Storyden

by Southclaws
Mozilla Public License 2.0
229
liker.go1.14 kB
package post_liker import ( "context" "github.com/Southclaws/storyden/app/resources/account" "github.com/Southclaws/storyden/app/resources/like/like_writer" "github.com/Southclaws/storyden/app/resources/message" "github.com/Southclaws/storyden/app/resources/post" "github.com/Southclaws/storyden/internal/infrastructure/pubsub" ) type PostLiker struct { likeWriter *like_writer.LikeWriter bus *pubsub.Bus } func New( likeWriter *like_writer.LikeWriter, bus *pubsub.Bus, ) *PostLiker { return &PostLiker{ likeWriter: likeWriter, bus: bus, } } func (l *PostLiker) AddPostLike(ctx context.Context, accountID account.AccountID, postID post.ID) error { err := l.likeWriter.AddPostLike(ctx, accountID, postID) if err != nil { return err } l.bus.Publish(ctx, &message.EventPostLiked{ PostID: postID, }) return nil } func (l *PostLiker) RemovePostLike(ctx context.Context, accountID account.AccountID, postID post.ID) error { err := l.likeWriter.RemovePostLike(ctx, accountID, postID) if err != nil { return err } l.bus.Publish(ctx, &message.EventPostUnliked{ PostID: postID, }) return nil }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Southclaws/storyden'

If you have feedback or need assistance with the MCP directory API, please join our Discord server