application

package
v0.0.0-...-5ff6d09 Latest Latest
Warning

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

Go to latest
Published: Jun 28, 2019 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddingAnswererUsecase

type AddingAnswererUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func NewAddingAnswererUsecase

func NewAddingAnswererUsecase(
	repository NotificationTargetRepository,
	notificationTargetIDProvider NotificationTargetIDProvider,
) AddingAnswererUsecase

func (AddingAnswererUsecase) AddAnswerer

type AddingAnswererUsecaseInput

type AddingAnswererUsecaseInput struct {
	// contains filtered or unexported fields
}

genconstructor

func NewAddingAnswererUsecaseInput

func NewAddingAnswererUsecaseInput(
	notificationTarget domain.NotificationTarget,
) AddingAnswererUsecaseInput

func (AddingAnswererUsecaseInput) NotificationTarget

func (m AddingAnswererUsecaseInput) NotificationTarget() domain.NotificationTarget

type AdminDescriptor

type AdminDescriptor struct {
}

type AnswerIDProvider

type AnswerIDProvider interface {
	NewAnswerID() domain.AnswerID
}

type AnswerInputValue

type AnswerInputValue struct {
	// contains filtered or unexported fields
}

genconstructor

func NewAnswerInputValue

func NewAnswerInputValue(
	questionID domain.QuestionID,
	value string,
) AnswerInputValue

func (AnswerInputValue) QuestionID

func (m AnswerInputValue) QuestionID() domain.QuestionID

func (AnswerInputValue) Value

func (m AnswerInputValue) Value() string

type AnswerRepository

type AnswerRepository interface {
	Create(ctx context.Context, answer domain.Answer) domain.Error
	Update(ctx context.Context, answer domain.Answer, version int) domain.Error
	Delete(ctx context.Context, answer domain.Answer) domain.Error
	FindByID(ctx context.Context, answerID domain.AnswerID) (answer domain.Answer, version int, derr domain.Error)
}

type AnswererIDProvider

type AnswererIDProvider interface {
	NewAnswererID() domain.AnswererID
}

type AnswererRepository

type AnswererRepository interface {
	Create(ctx context.Context, answerer domain.Answerer) domain.Error
	Update(ctx context.Context, answerer domain.Answerer, version int) domain.Error
	Delete(ctx context.Context, answerer domain.Answerer) domain.Error
	FindByID(ctx context.Context, id domain.AnswererID) (answerer domain.Answerer, version int, derr domain.Error)
}

type AnsweringUsecase

type AnsweringUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func NewAnsweringUsecase

func NewAnsweringUsecase(
	questionnaireRepository QuestionnaireRepository,
	answererRepository AnswererRepository,
	answerRepository AnswerRepository,
	answerIDProvider AnswerIDProvider,
	postingService domain.PostingService,
) AnsweringUsecase

func (AnsweringUsecase) Answer

type AnsweringUsecaseInput

type AnsweringUsecaseInput struct {
	// contains filtered or unexported fields
}

genconstructor

func NewAnsweringUsecaseInput

func NewAnsweringUsecaseInput(
	questionnaireID domain.QuestionnaireID,
	answererID domain.AnswererID,
	answers []AnswerInputValue,
) AnsweringUsecaseInput

func (AnsweringUsecaseInput) AnswererID

func (m AnsweringUsecaseInput) AnswererID() domain.AnswererID

func (AnsweringUsecaseInput) Answers

func (AnsweringUsecaseInput) QuestionnaireID

func (m AnsweringUsecaseInput) QuestionnaireID() domain.QuestionnaireID

type AskingUsecase

type AskingUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func NewAskingUsecase

func NewAskingUsecase(
	askingService domain.AskingService,
) AskingUsecase

func (AskingUsecase) AskAllIfNeeded

func (u AskingUsecase) AskAllIfNeeded(ctx context.Context) domain.Error

type CreatingAnswererUsecase

type CreatingAnswererUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func NewCreatingAnswererUsecase

func NewCreatingAnswererUsecase(
	repository AnswererRepository,
	answererIDProvider AnswererIDProvider,
) CreatingAnswererUsecase

func (CreatingAnswererUsecase) CreateAnswerer

type CreatingAnswererUsecaseInput

type CreatingAnswererUsecaseInput struct {
	// contains filtered or unexported fields
}

genconstructor

func NewCreatingAnswererUsecaseInput

func NewCreatingAnswererUsecaseInput(
	name string,
) CreatingAnswererUsecaseInput

func (CreatingAnswererUsecaseInput) Name

type CreatingQuestionnaireAuthorizationService

type CreatingQuestionnaireAuthorizationService interface {
	CanCreateQuestionnaire(
		ctx context.Context,
		adminDescriptor AdminDescriptor,
		workspaceDescriptor WorkspaceDescriptor,
	) (bool, domain.Error)
}

type CreatingQuestionnaireUsecase

type CreatingQuestionnaireUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func NewCreatingQuestionnaireUsecase

func NewCreatingQuestionnaireUsecase(
	repository QuestionnaireRepository,
	questionnaireIDProvider QuestionnaireIDProvider,
	questionIDProvider QuestionIDProvider,
	authorizationService CreatingQuestionnaireAuthorizationService,
) CreatingQuestionnaireUsecase

func (CreatingQuestionnaireUsecase) Create

type CreatingQuestionnaireUsecaseInput

type CreatingQuestionnaireUsecaseInput struct {
	// contains filtered or unexported fields
}

genconstructor

func NewCreatingQuestionnaireUsecaseInput

func NewCreatingQuestionnaireUsecaseInput(
	title string,
	questionItems []QuestionItem,
) CreatingQuestionnaireUsecaseInput

func (CreatingQuestionnaireUsecaseInput) PostTargets

func (CreatingQuestionnaireUsecaseInput) QuestionItems

func (m CreatingQuestionnaireUsecaseInput) QuestionItems() []QuestionItem

func (CreatingQuestionnaireUsecaseInput) Schedule

func (*CreatingQuestionnaireUsecaseInput) SetPostTargets

func (m *CreatingQuestionnaireUsecaseInput) SetPostTargets(s []domain.PostTarget)

func (*CreatingQuestionnaireUsecaseInput) SetSchedule

func (CreatingQuestionnaireUsecaseInput) Title

type LastExecutedRecorder

type LastExecutedRecorder struct {
	// contains filtered or unexported fields
}

genconstructor

func NewLastExecutedRecorder

func NewLastExecutedRecorder(
	quesitonnaireRepository QuestionnaireRepository,
) LastExecutedRecorder

func (LastExecutedRecorder) RecordLastExecuted

func (s LastExecutedRecorder) RecordLastExecuted(ctx context.Context, questionnaire domain.Questionnaire, lastExecuted time.Time) domain.Error

type NotificationService

type NotificationService struct {
	// contains filtered or unexported fields
}

genconstructor

func NewNotificationService

func NewNotificationService(
	notifySlack func(ctx context.Context, target domain.NotificationTargetSlack, questionnaire domain.Questionnaire) domain.Error,
) NotificationService

func (NotificationService) Notify

func (s NotificationService) Notify(ctx context.Context, notificationTarget domain.NotificationTarget, questionnaire domain.Questionnaire) domain.Error

type NotificationTargetIDProvider

type NotificationTargetIDProvider interface {
	NewNotificationTargetID() domain.NotificationTargetID
}

type NotificationTargetRepository

type NotificationTargetRepository interface {
	Create(ctx context.Context, notificationTarget domain.NotificationTarget) domain.Error
	Update(ctx context.Context, notificationTarget domain.NotificationTarget, version int) domain.Error
	Delete(ctx context.Context, notificationTarget domain.NotificationTarget) domain.Error
}

type OverwritingQuestionnaireTitleUsecase

type OverwritingQuestionnaireTitleUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func NewOverwritingQuestionnaireTitleUsecase

func NewOverwritingQuestionnaireTitleUsecase(
	repository QuestionnaireRepository,
) OverwritingQuestionnaireTitleUsecase

func (OverwritingQuestionnaireTitleUsecase) OverwriteQuestionnaireTitle

type OverwritingQuestionnaireTitleUsecaseInput

type OverwritingQuestionnaireTitleUsecaseInput struct {
	// contains filtered or unexported fields
}

genconstructor

func NewOverwritingQuestionnaireTitleUsecaseInput

func NewOverwritingQuestionnaireTitleUsecaseInput(
	questionnaireID domain.QuestionnaireID,
	title string,
) OverwritingQuestionnaireTitleUsecaseInput

func (OverwritingQuestionnaireTitleUsecaseInput) QuestionnaireID

func (OverwritingQuestionnaireTitleUsecaseInput) Title

type PostingService

type PostingService struct {
	// contains filtered or unexported fields
}

genconstructor

func NewPostingService

func NewPostingService(
	postSlack func(ctx context.Context, target domain.PostTargetSlack, questionnaire domain.Questionnaire, answerer domain.Answerer, answers []domain.Answer) domain.Error,
) PostingService

func (PostingService) PostAnswers

func (s PostingService) PostAnswers(ctx context.Context, questionnaire domain.Questionnaire, answerer domain.Answerer, answers []domain.Answer) domain.Error

type Question

type Question struct {
	// contains filtered or unexported fields
}

genconstructor

func NewQuestion

func NewQuestion(
	text string,
) Question

func (Question) ID

func (m Question) ID() domain.QuestionID

func (*Question) SetID

func (m *Question) SetID(s domain.QuestionID)

func (Question) Text

func (m Question) Text() string

type QuestionIDProvider

type QuestionIDProvider interface {
	NewQuestionID() domain.QuestionID
}

type QuestionItem

type QuestionItem struct {
	// contains filtered or unexported fields
}

genconstructor

func NewQuestionItem

func NewQuestionItem(
	question Question,
	required bool,
) QuestionItem

func (QuestionItem) Question

func (m QuestionItem) Question() Question

func (QuestionItem) Required

func (m QuestionItem) Required() bool

type QuestionnaireIDProvider

type QuestionnaireIDProvider interface {
	NewQuestionnaireID() domain.QuestionnaireID
}

type QuestionnaireRepository

type QuestionnaireRepository interface {
	Create(ctx context.Context, questionnaire domain.Questionnaire) domain.Error
	Update(ctx context.Context, questionnaire domain.Questionnaire, version int) domain.Error
	Delete(ctx context.Context, questionnaire domain.Questionnaire) domain.Error
	FindByID(ctx context.Context, id domain.QuestionnaireID) (questionnaire domain.Questionnaire, version int, derr domain.Error)
}

type RemovingAnswererUsecase

type RemovingAnswererUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func (RemovingAnswererUsecase) RemoveAnswerer

type RemovingAnswererUsecaseInput

type RemovingAnswererUsecaseInput struct {
	// contains filtered or unexported fields
}

genconstructor

func NewRemovingAnswererUsecaseInput

func NewRemovingAnswererUsecaseInput(
	questionnaireID domain.QuestionnaireID,
	answererID domain.AnswererID,
) RemovingAnswererUsecaseInput

func (RemovingAnswererUsecaseInput) AnswererID

func (RemovingAnswererUsecaseInput) QuestionnaireID

type ReplacingQuestionsUsecase

type ReplacingQuestionsUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func NewReplacingQuestionsUsecase

func NewReplacingQuestionsUsecase(
	repository QuestionnaireRepository,
	questionIDProvider QuestionIDProvider,
) ReplacingQuestionsUsecase

func (ReplacingQuestionsUsecase) ReplaceQuestions

type ReplacingQuestionsUsecaseInput

type ReplacingQuestionsUsecaseInput struct {
	// contains filtered or unexported fields
}

genconstructor

func NewReplacingQuestionsUsecaseInput

func NewReplacingQuestionsUsecaseInput(
	questionnaireID domain.QuestionnaireID,
	questionItems []QuestionItem,
) ReplacingQuestionsUsecaseInput

func (ReplacingQuestionsUsecaseInput) QuestionItems

func (m ReplacingQuestionsUsecaseInput) QuestionItems() []QuestionItem

func (ReplacingQuestionsUsecaseInput) QuestionnaireID

type ULIDProvider

type ULIDProvider struct {
	// contains filtered or unexported fields
}

func NewULIDProvider

func NewULIDProvider() ULIDProvider

func (ULIDProvider) NewAnswerID

func (p ULIDProvider) NewAnswerID() domain.AnswerID

func (ULIDProvider) NewAnswererID

func (p ULIDProvider) NewAnswererID() domain.AnswererID

func (ULIDProvider) NewNotificationTargetID

func (p ULIDProvider) NewNotificationTargetID() domain.NotificationTargetID

func (ULIDProvider) NewQuestionID

func (p ULIDProvider) NewQuestionID() domain.QuestionID

func (ULIDProvider) NewQuestionnaireID

func (p ULIDProvider) NewQuestionnaireID() domain.QuestionnaireID

func (ULIDProvider) NewString

func (p ULIDProvider) NewString() string

type UpdatingQuestionnaireAuthorizationService

type UpdatingQuestionnaireAuthorizationService interface {
	CanUpdateQuestionnaire(
		ctx context.Context,
		questionnaire domain.Questionnaire,
		adminDescriptor AdminDescriptor,
		workspaceDescriptor WorkspaceDescriptor,
	) (bool, domain.Error)
}

type UpdatingQuestionnaireUsecase

type UpdatingQuestionnaireUsecase struct {
	// contains filtered or unexported fields
}

genconstructor

func NewUpdatingQuestionnaireUsecase

func NewUpdatingQuestionnaireUsecase(
	repository QuestionnaireRepository,
	questionIDProvider QuestionIDProvider,
	authorizationService UpdatingQuestionnaireAuthorizationService,
) UpdatingQuestionnaireUsecase

func (UpdatingQuestionnaireUsecase) Update

type UpdatingQuestionnaireUsecaseInput

type UpdatingQuestionnaireUsecaseInput struct {
	// contains filtered or unexported fields
}

genconstructor

func NewUpdatingQuestionnaireUsecaseInput

func NewUpdatingQuestionnaireUsecaseInput(
	questionnaireID domain.QuestionnaireID,
	creatingInput CreatingQuestionnaireUsecaseInput,
) UpdatingQuestionnaireUsecaseInput

func (UpdatingQuestionnaireUsecaseInput) CreatingInput

func (UpdatingQuestionnaireUsecaseInput) QuestionnaireID

type WorkspaceDescriptor

type WorkspaceDescriptor struct {
}

Directories

Path Synopsis
Package mock_application is a generated GoMock package.
Package mock_application is a generated GoMock package.

Jump to

Keyboard shortcuts

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