Documentation
¶
Index ¶
- Constants
- func StreamChallengeHandler(fs FileSystem, privateKey ed25519.PrivateKey) warpnet.WarpHandlerFunc
- func StreamCreateChatHandler(repo ChatStorer, userRepo ChatUserFetcher, streamer ChatStreamer) warpnet.WarpHandlerFunc
- func StreamDeleteChatHandler(repo ChatStorer, authRepo ChatAuthStorer) warpnet.WarpHandlerFunc
- func StreamDeleteMessageHandler(repo ChatStorer, authRepo OwnerChatsStorer) warpnet.WarpHandlerFunc
- func StreamDeleteReplyHandler(tweetRepo ReplyTweetStorer, userRepo ReplyUserFetcher, replyRepo ReplyStorer, ...) warpnet.WarpHandlerFunc
- func StreamDeleteTweetHandler(broadcaster TweetBroadcaster, authRepo OwnerTweetStorer, repo TweetsStorer, ...) warpnet.WarpHandlerFunc
- func StreamFollowHandler(broadcaster FollowingBroadcaster, followRepo FollowingStorer, ...) warpnet.WarpHandlerFunc
- func StreamGetFollowersHandler(authRepo FollowingAuthStorer, userRepo FollowingUserStorer, ...) warpnet.WarpHandlerFunc
- func StreamGetFollowingsHandler(authRepo FollowingAuthStorer, userRepo FollowingUserStorer, ...) warpnet.WarpHandlerFunc
- func StreamGetImageHandler(streamer MediaStreamer, mediaRepo MediaStorer, userRepo MediaUserFetcher) warpnet.WarpHandlerFunc
- func StreamGetInfoHandler(i NodeInformer, discHandler discovery.DiscoveryHandler) warpnet.WarpHandlerFunc
- func StreamGetMessageHandler(repo ChatStorer, authRepo OwnerChatsStorer) warpnet.WarpHandlerFunc
- func StreamGetMessagesHandler(repo ChatStorer, authRepo OwnerChatsStorer) warpnet.WarpHandlerFunc
- func StreamGetNotificationsHandler(repo NotifierFetcher, authRepo NotifierAuthStorer) warpnet.WarpHandlerFunc
- func StreamGetRepliesHandler(repo ReplyStorer, userRepo ReplyUserFetcher, streamer ReplyStreamer) warpnet.WarpHandlerFunc
- func StreamGetReplyHandler(repo ReplyStorer, authRepo OwnerTweetStorer, userRepo TweetUserFetcher, ...) warpnet.WarpHandlerFunc
- func StreamGetStatsHandler(i StatsNodeInformer, db StatsProvider) warpnet.WarpHandlerFunc
- func StreamGetTweetHandler(repo TweetsStorer, authRepo OwnerTweetStorer, userRepo TweetUserFetcher, ...) warpnet.WarpHandlerFunc
- func StreamGetTweetStatsHandler(likeRepo LikeTweetStorer, retweetRepo RetweetsTweetStorer, ...) warpnet.WarpHandlerFunc
- func StreamGetTweetsHandler(repo TweetsStorer, userRepo TweetUserFetcher, streamer TweetStreamer) warpnet.WarpHandlerFunc
- func StreamGetUserChatHandler(repo ChatStorer, authRepo ChatAuthStorer) warpnet.WarpHandlerFunc
- func StreamGetUserChatsHandler(repo ChatStorer, authRepo OwnerChatsStorer) warpnet.WarpHandlerFunc
- func StreamGetUserHandler(tweetRepo UserTweetsCounter, followRepo UserFollowsCounter, repo UserFetcher, ...) warpnet.WarpHandlerFunc
- func StreamGetUsersHandler(userRepo UserFetcher, streamer UserStreamer) warpnet.WarpHandlerFunc
- func StreamGetWhoToFollowHandler(authRepo UserAuthStorer, userRepo UserFetcher, followRepo UserFollowsCounter) warpnet.WarpHandlerFunc
- func StreamIsFollowerHandler(followRepo FollowingStorer, authRepo FollowingAuthStorer) warpnet.WarpHandlerFunc
- func StreamIsFollowingHandler(followRepo FollowingStorer, authRepo FollowingAuthStorer) warpnet.WarpHandlerFunc
- func StreamLikeHandler(repo LikesStorer, userRepo LikedUserFetcher, streamer LikeStreamer) warpnet.WarpHandlerFunc
- func StreamModerationResultHandler(notifyRepo ModerationNotifier, tweetRepo ModerationTweetUpdater, ...) warpnet.WarpHandlerFunc
- func StreamNewMessageHandler(repo ChatStorer, userRepo ChatUserFetcher, streamer ChatStreamer) warpnet.WarpHandlerFunc
- func StreamNewReTweetHandler(userRepo RetweetedUserFetcher, tweetRepo ReTweetsStorer, ...) warpnet.WarpHandlerFunc
- func StreamNewReplyHandler(replyRepo ReplyStorer, userRepo ReplyUserFetcher, streamer ReplyStreamer) warpnet.WarpHandlerFunc
- func StreamNewTweetHandler(broadcaster TweetBroadcaster, authRepo OwnerTweetStorer, ...) warpnet.WarpHandlerFunc
- func StreamNodesPairingHandler(serverAuthInfo domain.AuthNodeInfo) warpnet.WarpHandlerFunc
- func StreamTimelineHandler(repo TimelineFetcher) warpnet.WarpHandlerFunc
- func StreamUnfollowHandler(broadcaster FollowingBroadcaster, followRepo FollowingStorer, ...) warpnet.WarpHandlerFunc
- func StreamUnlikeHandler(repo LikesStorer, userRepo LikedUserFetcher, streamer LikeStreamer) warpnet.WarpHandlerFunc
- func StreamUnretweetHandler(tweetRepo ReTweetsStorer, userRepo RetweetedUserFetcher, ...) warpnet.WarpHandlerFunc
- func StreamUpdateProfileHandler(authRepo UserAuthStorer, userRepo UserFetcher) warpnet.WarpHandlerFunc
- func StreamUploadImageHandler(info MediaNodeInformer, mediaRepo MediaStorer, userRepo MediaUserFetcher) warpnet.WarpHandlerFunc
- type ChatAuthStorer
- type ChatStorer
- type ChatStreamer
- type ChatUserFetcher
- type FileSystem
- type FollowNodeStreamer
- type FollowingAuthStorer
- type FollowingBroadcaster
- type FollowingStorer
- type FollowingUserStorer
- type LikeStreamer
- type LikeTweetStorer
- type LikeTweetsStorer
- type LikedUserFetcher
- type LikesStorer
- type MediaNodeInformer
- type MediaStorer
- type MediaStreamer
- type MediaUserFetcher
- type ModerationNotifier
- type ModerationOwnerFetcher
- type ModerationTimelelineDeleter
- type ModerationTweetUpdater
- type NodeInformer
- type NotifierAuthStorer
- type NotifierFetcher
- type OwnerChatsStorer
- type OwnerReTweetStorer
- type OwnerTweetStorer
- type ReTweetsStorer
- type RepliesTweetCounter
- type ReplyStorer
- type ReplyStreamer
- type ReplyTweetStorer
- type ReplyUserFetcher
- type RetweetStreamer
- type RetweetTimelineUpdater
- type RetweetedUserFetcher
- type RetweetsTweetStorer
- type StatsNodeInformer
- type StatsProvider
- type TimelineFetcher
- type TimelineUpdater
- type TweetBroadcaster
- type TweetStreamer
- type TweetUserFetcher
- type TweetsStorer
- type UserAuthStorer
- type UserFetcher
- type UserFollowsCounter
- type UserStreamer
- type UserTweetsCounter
Constants ¶
View Source
const ( ErrTooLargeImage warpnet.WarpError = "image is too large" ErrInvalidBase64Signature warpnet.WarpError = "invalid base64 image data" ErrEmptyImageKey warpnet.WarpError = "empty image key" ErrInvalidEXIF warpnet.WarpError = "invalid exif type: not a segment list" )
View Source
const ( ErrNoObjectID warpnet.WarpError = "no object id found" ErrNoUserID warpnet.WarpError = "no user id found" )
Variables ¶
This section is empty.
Functions ¶
func StreamChallengeHandler ¶ added in v0.2.476
func StreamChallengeHandler(fs FileSystem, privateKey ed25519.PrivateKey) warpnet.WarpHandlerFunc
StreamChallengeHandler TODO nonce cache check
func StreamCreateChatHandler ¶
func StreamCreateChatHandler( repo ChatStorer, userRepo ChatUserFetcher, streamer ChatStreamer, ) warpnet.WarpHandlerFunc
Handler for creating a new chat
func StreamDeleteChatHandler ¶
func StreamDeleteChatHandler(repo ChatStorer, authRepo ChatAuthStorer) warpnet.WarpHandlerFunc
func StreamDeleteMessageHandler ¶
func StreamDeleteMessageHandler(repo ChatStorer, authRepo OwnerChatsStorer) warpnet.WarpHandlerFunc
Handler for deleting a message
func StreamDeleteReplyHandler ¶
func StreamDeleteReplyHandler( tweetRepo ReplyTweetStorer, userRepo ReplyUserFetcher, replyRepo ReplyStorer, streamer ReplyStreamer, ) warpnet.WarpHandlerFunc
func StreamDeleteTweetHandler ¶
func StreamDeleteTweetHandler( broadcaster TweetBroadcaster, authRepo OwnerTweetStorer, repo TweetsStorer, likeRepo LikeTweetStorer, ) warpnet.WarpHandlerFunc
func StreamFollowHandler ¶
func StreamFollowHandler( broadcaster FollowingBroadcaster, followRepo FollowingStorer, authRepo FollowingAuthStorer, userRepo FollowingUserStorer, streamer FollowNodeStreamer, ) warpnet.WarpHandlerFunc
func StreamGetFollowersHandler ¶
func StreamGetFollowersHandler( authRepo FollowingAuthStorer, userRepo FollowingUserStorer, followRepo FollowingStorer, streamer FollowNodeStreamer, ) warpnet.WarpHandlerFunc
func StreamGetFollowingsHandler ¶ added in v0.5.83
func StreamGetFollowingsHandler( authRepo FollowingAuthStorer, userRepo FollowingUserStorer, followRepo FollowingStorer, streamer FollowNodeStreamer, ) warpnet.WarpHandlerFunc
func StreamGetImageHandler ¶
func StreamGetImageHandler( streamer MediaStreamer, mediaRepo MediaStorer, userRepo MediaUserFetcher, ) warpnet.WarpHandlerFunc
func StreamGetInfoHandler ¶
func StreamGetInfoHandler( i NodeInformer, discHandler discovery.DiscoveryHandler, ) warpnet.WarpHandlerFunc
func StreamGetMessageHandler ¶
func StreamGetMessageHandler(repo ChatStorer, authRepo OwnerChatsStorer) warpnet.WarpHandlerFunc
StreamGetMessageHandler for retrieving a specific message
func StreamGetMessagesHandler ¶
func StreamGetMessagesHandler(repo ChatStorer, authRepo OwnerChatsStorer) warpnet.WarpHandlerFunc
Handler for getting messages in a chat
func StreamGetNotificationsHandler ¶ added in v0.5.30
func StreamGetNotificationsHandler( repo NotifierFetcher, authRepo NotifierAuthStorer, ) warpnet.WarpHandlerFunc
func StreamGetRepliesHandler ¶
func StreamGetRepliesHandler( repo ReplyStorer, userRepo ReplyUserFetcher, streamer ReplyStreamer, ) warpnet.WarpHandlerFunc
func StreamGetReplyHandler ¶
func StreamGetReplyHandler( repo ReplyStorer, authRepo OwnerTweetStorer, userRepo TweetUserFetcher, streamer TweetStreamer, ) warpnet.WarpHandlerFunc
func StreamGetStatsHandler ¶
func StreamGetStatsHandler( i StatsNodeInformer, db StatsProvider, ) warpnet.WarpHandlerFunc
func StreamGetTweetHandler ¶
func StreamGetTweetHandler( repo TweetsStorer, authRepo OwnerTweetStorer, userRepo TweetUserFetcher, streamer TweetStreamer, ) warpnet.WarpHandlerFunc
func StreamGetTweetStatsHandler ¶
func StreamGetTweetStatsHandler( likeRepo LikeTweetStorer, retweetRepo RetweetsTweetStorer, replyRepo RepliesTweetCounter, userRepo TweetUserFetcher, streamer TweetStreamer, ) warpnet.WarpHandlerFunc
func StreamGetTweetsHandler ¶
func StreamGetTweetsHandler( repo TweetsStorer, userRepo TweetUserFetcher, streamer TweetStreamer, ) warpnet.WarpHandlerFunc
func StreamGetUserChatHandler ¶
func StreamGetUserChatHandler(repo ChatStorer, authRepo ChatAuthStorer) warpnet.WarpHandlerFunc
func StreamGetUserChatsHandler ¶
func StreamGetUserChatsHandler(repo ChatStorer, authRepo OwnerChatsStorer) warpnet.WarpHandlerFunc
func StreamGetUserHandler ¶
func StreamGetUserHandler( tweetRepo UserTweetsCounter, followRepo UserFollowsCounter, repo UserFetcher, authRepo UserAuthStorer, streamer UserStreamer, ) warpnet.WarpHandlerFunc
func StreamGetUsersHandler ¶
func StreamGetUsersHandler( userRepo UserFetcher, streamer UserStreamer, ) warpnet.WarpHandlerFunc
func StreamGetWhoToFollowHandler ¶ added in v0.3.75
func StreamGetWhoToFollowHandler( authRepo UserAuthStorer, userRepo UserFetcher, followRepo UserFollowsCounter, ) warpnet.WarpHandlerFunc
func StreamIsFollowerHandler ¶ added in v0.5.83
func StreamIsFollowerHandler( followRepo FollowingStorer, authRepo FollowingAuthStorer, ) warpnet.WarpHandlerFunc
func StreamIsFollowingHandler ¶ added in v0.5.83
func StreamIsFollowingHandler( followRepo FollowingStorer, authRepo FollowingAuthStorer, ) warpnet.WarpHandlerFunc
func StreamLikeHandler ¶
func StreamLikeHandler( repo LikesStorer, userRepo LikedUserFetcher, streamer LikeStreamer, ) warpnet.WarpHandlerFunc
func StreamModerationResultHandler ¶ added in v0.3.129
func StreamModerationResultHandler( notifyRepo ModerationNotifier, tweetRepo ModerationTweetUpdater, authRepo ModerationOwnerFetcher, timelineRepo ModerationTimelelineDeleter, ) warpnet.WarpHandlerFunc
func StreamNewMessageHandler ¶ added in v0.5.87
func StreamNewMessageHandler(repo ChatStorer, userRepo ChatUserFetcher, streamer ChatStreamer) warpnet.WarpHandlerFunc
StreamNewMessageHandler is for sending a new message
func StreamNewReTweetHandler ¶
func StreamNewReTweetHandler( userRepo RetweetedUserFetcher, tweetRepo ReTweetsStorer, timelineRepo RetweetTimelineUpdater, streamer RetweetStreamer, ) warpnet.WarpHandlerFunc
func StreamNewReplyHandler ¶
func StreamNewReplyHandler( replyRepo ReplyStorer, userRepo ReplyUserFetcher, streamer ReplyStreamer, ) warpnet.WarpHandlerFunc
func StreamNewTweetHandler ¶
func StreamNewTweetHandler( broadcaster TweetBroadcaster, authRepo OwnerTweetStorer, tweetRepo TweetsStorer, timelineRepo TimelineUpdater, ) warpnet.WarpHandlerFunc
func StreamNodesPairingHandler ¶
func StreamNodesPairingHandler(serverAuthInfo domain.AuthNodeInfo) warpnet.WarpHandlerFunc
func StreamTimelineHandler ¶
func StreamTimelineHandler(repo TimelineFetcher) warpnet.WarpHandlerFunc
func StreamUnfollowHandler ¶
func StreamUnfollowHandler( broadcaster FollowingBroadcaster, followRepo FollowingStorer, authRepo FollowingAuthStorer, userRepo FollowingUserStorer, streamer FollowNodeStreamer, ) warpnet.WarpHandlerFunc
func StreamUnlikeHandler ¶
func StreamUnlikeHandler(repo LikesStorer, userRepo LikedUserFetcher, streamer LikeStreamer) warpnet.WarpHandlerFunc
func StreamUnretweetHandler ¶
func StreamUnretweetHandler( tweetRepo ReTweetsStorer, userRepo RetweetedUserFetcher, streamer RetweetStreamer, ) warpnet.WarpHandlerFunc
func StreamUpdateProfileHandler ¶
func StreamUpdateProfileHandler(authRepo UserAuthStorer, userRepo UserFetcher) warpnet.WarpHandlerFunc
func StreamUploadImageHandler ¶
func StreamUploadImageHandler( info MediaNodeInformer, mediaRepo MediaStorer, userRepo MediaUserFetcher, ) warpnet.WarpHandlerFunc
Types ¶
type ChatAuthStorer ¶
type ChatStorer ¶
type ChatStorer interface {
CreateChat(chatId *string, ownerId, otherUserId string) (domain.Chat, error)
DeleteChat(chatId string) error
GetUserChats(userId string, limit *uint64, cursor *string) ([]domain.Chat, string, error)
CreateMessage(msg domain.ChatMessage) (domain.ChatMessage, error)
ListMessages(chatId string, limit *uint64, cursor *string) ([]domain.ChatMessage, string, error)
GetMessage(chatId, id string) (domain.ChatMessage, error)
DeleteMessage(chatId, id string) error
GetChat(chatId string) (chat domain.Chat, err error)
}
type ChatStreamer ¶
type ChatUserFetcher ¶
type FileSystem ¶ added in v0.2.476
type FollowNodeStreamer ¶
type FollowingAuthStorer ¶
type FollowingBroadcaster ¶
type FollowingStorer ¶
type FollowingStorer interface {
Follow(fromUserId, toUserId string) error
Unfollow(fromUserId, toUserId string) error
GetFollowers(userId string, limit *uint64, cursor *string) ([]string, string, error)
GetFollowings(userId string, limit *uint64, cursor *string) ([]string, string, error)
IsFollowing(ownerId, otherUserId string) bool
IsFollower(ownerId, otherUserId string) bool
}
type FollowingUserStorer ¶
type LikeStreamer ¶
type LikeTweetStorer ¶
type LikeTweetStorer interface {
Like(tweetId, userId string) (likesNum uint64, err error)
Unlike(tweetId, userId string) (likesNum uint64, err error)
LikesCount(tweetId string) (likesNum uint64, err error)
Likers(tweetId string, limit *uint64, cursor *string) (likers []string, cur string, err error)
}
type LikeTweetsStorer ¶
type LikedUserFetcher ¶
type LikesStorer ¶
type MediaNodeInformer ¶
type MediaStorer ¶
type MediaStorer interface {
GetImage(userId, key string) (database.Base64Image, error)
SetImage(userId string, img database.Base64Image) (_ database.ImageKey, err error)
SetForeignImageWithTTL(userId, key string, img database.Base64Image) error
}
type MediaStreamer ¶
type MediaUserFetcher ¶
type ModerationNotifier ¶ added in v0.5.30
type ModerationNotifier interface {
Add(not domain.Notification) error
}
type ModerationOwnerFetcher ¶ added in v0.5.134
type ModerationTimelelineDeleter ¶ added in v0.5.136
type ModerationTweetUpdater ¶ added in v0.5.134
type NodeInformer ¶
type NotifierAuthStorer ¶ added in v0.5.87
type NotifierFetcher ¶ added in v0.5.30
type OwnerChatsStorer ¶
type OwnerReTweetStorer ¶
type OwnerTweetStorer ¶
type ReTweetsStorer ¶
type ReTweetsStorer interface {
Get(userID, tweetID string) (tweet domain.Tweet, err error)
NewRetweet(tweet domain.Tweet) (_ domain.Tweet, err error)
UnRetweet(retweetedByUserID, tweetId string) error
RetweetsCount(tweetId string) (uint64, error)
Retweeters(tweetId string, limit *uint64, cursor *string) (_ []string, cur string, err error)
}
type RepliesTweetCounter ¶
type ReplyStorer ¶
type ReplyStorer interface {
GetReply(rootID, replyID string) (tweet domain.Tweet, err error)
GetRepliesTree(rootID, parentId string, limit *uint64, cursor *string) ([]domain.ReplyNode, string, error)
AddReply(reply domain.Tweet) (domain.Tweet, error)
DeleteReply(rootID, parentID, replyID string) error
}
type ReplyStreamer ¶
type ReplyTweetStorer ¶
type ReplyUserFetcher ¶
type RetweetStreamer ¶
type RetweetTimelineUpdater ¶
type RetweetedUserFetcher ¶
type RetweetsTweetStorer ¶
type RetweetsTweetStorer interface {
Get(userID, tweetID string) (tweet domain.Tweet, err error)
NewRetweet(tweet domain.Tweet) (_ domain.Tweet, err error)
UnRetweet(retweetedByUserID, tweetId string) error
RetweetsCount(tweetId string) (uint64, error)
Retweeters(tweetId string, limit *uint64, cursor *string) (_ []string, cur string, err error)
}
type StatsNodeInformer ¶
type StatsNodeInformer interface {
NodeInfo() warpnet.NodeInfo
Peerstore() warpnet.WarpPeerstore
Network() warpnet.WarpNetwork
}
type StatsProvider ¶
type TimelineFetcher ¶
type TimelineUpdater ¶
type TweetBroadcaster ¶
type TweetStreamer ¶
type TweetUserFetcher ¶
type TweetsStorer ¶
type TweetsStorer interface {
IsBlocklisted(tweetId string) bool
Blocklist(tweetId string) error
Get(userID, tweetID string) (tweet domain.Tweet, err error)
List(string, *uint64, *string) ([]domain.Tweet, string, error)
Create(_ string, tweet domain.Tweet) (domain.Tweet, error)
Delete(userID, tweetID string) error
UnRetweet(retweetedByUserID, tweetId string) error
CreateWithTTL(userId string, tweet domain.Tweet, duration time.Duration) (domain.Tweet, error)
}
type UserAuthStorer ¶
type UserFetcher ¶
type UserFetcher interface {
Create(user domain.User) (domain.User, error)
Get(userId string) (user domain.User, err error)
List(limit *uint64, cursor *string) ([]domain.User, string, error)
WhoToFollow(limit *uint64, cursor *string) ([]domain.User, string, error)
Update(userId string, newUser domain.User) (updatedUser domain.User, err error)
CreateWithTTL(user domain.User, ttl time.Duration) (domain.User, error)
}
type UserFollowsCounter ¶
type UserFollowsCounter interface {
GetFollowersCount(userId string) (uint64, error)
GetFollowingsCount(userId string) (uint64, error)
GetFollowers(userId string, limit *uint64, cursor *string) ([]string, string, error)
GetFollowings(userId string, limit *uint64, cursor *string) ([]string, string, error)
}
type UserStreamer ¶
type UserTweetsCounter ¶
Click to show internal directories.
Click to hide internal directories.