Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrUserAlreadyExist is returned when user already exist in registration. ErrUserAlreadyExist = errors.New("user already exist") )
Functions ¶
This section is empty.
Types ¶
type BatchUsecase ¶
type BatchUsecase interface {
CollectTweets(ctx context.Context, searchID model.SearchID, userID model.UserID) error
}
BatchUsecase provides usecases of Batch domain.
func NewBatchUsecase ¶
func NewBatchUsecase(input *NewBatchUsecaseInput) BatchUsecase
NewBatchUsecase creates BatchUsecase.
type NewBatchUsecaseInput ¶
type NewBatchUsecaseInput struct { UserUsecase UserUsecase SearchUsecase SearchUsecase TweetRepository repository.TweetRepository TwitterClient twitter.Client SentimentDetector sentiment.Detector }
NewBatchUsecaseInput is the input of NewBatchUsecase.
type SearchUsecase ¶
type SearchUsecase interface { ListShouldUpdateSearches(ctx context.Context) ([]*model.Search, error) ListByUserID(ctx context.Context, userID model.UserID) ([]*model.Search, error) ListUserSearches(ctx context.Context) ([]*model.Search, error) Find(ctx context.Context, searchID model.SearchID, userID model.UserID) (*model.Search, error) GetUserSearch(ctx context.Context, searchID model.SearchID) (*model.Search, error) DeleteUserSearch(ctx context.Context, searchID model.SearchID) error Create(ctx context.Context, input *SearchUsecaseCreateInput) (*model.Search, error) UpdateNextUpdateAt(ctx context.Context, search *model.Search) error }
SearchUsecase provides usecases of Search domain.
func NewSearchUsecase ¶
func NewSearchUsecase(authenticator auth.Authenticator, validator validator.Validator, searchRepository repository.SearchRepository) SearchUsecase
NewSearchUsecase creates SearchUsecase.
type SearchUsecaseCreateInput ¶
type SearchUsecaseCreateInput struct {
Query string `validate:"required,gte=3,lte=100"`
}
SearchUsecaseCreateInput is the input of SearchUsecase.Create().
type UserUsecase ¶
type UserUsecase interface { FetchAuthUser(ctx context.Context) (*model.User, error) FindByID(ctx context.Context, userID model.UserID) (*model.User, error) Register(ctx context.Context, input UserUsecaseRegisterInput) (*model.User, error) }
UserUsecase provides usecases of User domain.
func NewUserUsecase ¶
func NewUserUsecase(authenticator auth.Authenticator, userRepository repository.UserRepository) UserUsecase
NewUserUsecase creates UserUsecase.
type UserUsecaseRegisterInput ¶
UserUsecaseRegisterInput represents the input of Register method.
Click to show internal directories.
Click to hide internal directories.