usecase

package
v0.0.0-...-346ca5a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 25, 2023 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Locale = "Asia/Tokyo"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Artist

type Artist interface {
	CreateArtist(artist *model.Artist) (*model.Artist, error)
	//UpdateArtist(artist *model.Artist) (*model.Artist, error)
	//GetArtistByName(name string) ([]*model.Artist, error)
	GetArtistByID(id string) (*model.Artist, error)
}

func NewArtistUsecase

func NewArtistUsecase(db repository.Artist, r framework.RandomID) Artist

type Calendar

type Calendar interface {
	CreateEvent(*model.Event) (*model.Event, error)
	CreateCalender(*model.ExternalCalendar) (*model.ExternalCalendar, error)
}

func NewCalendarApplication

func NewCalendarApplication(cal repository.ExternalCalendar, db repository.DB) Calendar

type Event

type Event interface {
	CreateEvent(*model.CreateEvent) (*model.Event, error)
	DeleteEvent(*model.Event) error
	UpdateEvent(*model.UpdateEvent) (*model.Event, error)
	//GetEvent(string) (*model.Event, error)
	CreateArtistEventsFromCrawlData(id string) ([]*model.Event, error)
	GetEventByID(string) (*model.Event, error)
	MergeEvents(*model.MergeEvent) (*model.Event, error)
	SearchEvents(*model.EventSearchQuery) ([]*model.Event, error)
}

type OAuth

type OAuth interface {
	GoogleLinkage(*model.User) (*model.OAuthURLResponse, error)
	GoogleOAuthCallback(*model.GoogleOauthCallback) error
}

func NewOAuthUsecase

func NewOAuthUsecase(db repository.DB, ramdom framework.RandomID, google framework.GoogleOAuth) OAuth

type ScrapingApplication

type ScrapingApplication interface {
	Execute(*model.ScrapingRequest) (model.APIResponse, error)
}

type User

type User interface {
	GetUserByUserID(id string) (*model.User, error)
	CreateUser(user *model.User) (*model.User, error)
	DeleteUser(*model.User) error
	GetUserByAPIKey(apiKey string) (*model.User, error)
	VerifyAccount(userID string) (*model.User, error)
	CreateCalendar(*model.ExternalCalendar) (*model.ExternalCalendar, error)
	RegistrationEvent(*model.User, *model.Event) (*model.RegistrationEventResponse, error)
	CreateAPIKey(*model.LoginRequest) (*model.CreateAPIKeyResponse, error)
}

type Venue

type Venue interface {
	CreateVenue(*model.Venue) (*model.Venue, error)
	UpdateVenue(*model.Venue) (*model.Venue, error)
	//GetVenueByName(string) (*model.Venue, error)
	GetVenueByID(string) (*model.Venue, error)
}

func NewVenueUsecase

func NewVenueUsecase(db repository.DB, r framework.RandomID) Venue

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL