timesheetUploader

package
v0.0.0-...-9a10099 Latest Latest
Warning

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

Go to latest
Published: Aug 29, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BambooApi

type BambooApi interface {
	LogIn(username string, password string) model.BambooSession
	AddTimesheetRecord(session model.BambooSession, entries []model.TimesheetEntry)
	GetHomeContent() model.TimeTracking
}

type EmailComposer

type EmailComposer interface {
	ComposeTimeTrackingEmailPayload(timeTracking model.TimeTracking) model.TimeTrackingEmailPayload
}

type EmailComposerImpl

type EmailComposerImpl struct {
}

func (EmailComposerImpl) ComposeTimeTrackingEmailPayload

func (e EmailComposerImpl) ComposeTimeTrackingEmailPayload(timeTracking model.TimeTracking) model.TimeTrackingEmailPayload

type EmailSender

type EmailSender interface {
	SendEmail(payload model.TimeTrackingEmailPayload)
}

func InitEmailSender

func InitEmailSender(sesRepository SesRepository) EmailSender

type EmailSenderImpl

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

func (EmailSenderImpl) SendEmail

func (e EmailSenderImpl) SendEmail(payload model.TimeTrackingEmailPayload)

type S3Repository

type S3Repository interface {
	GetS3FileContent(key string, bucket string) string
}

type SesRepository

type SesRepository interface {
	SendEmail(sender string, recipient string, htmlBody string, subject string)
}

type TimeTrackingService

type TimeTrackingService interface {
	GetCurrentTimeTracking() model.TimeTracking
	UploadTimesheetEntries(timesheetEntries []model.TimesheetEntry)
}

func InitTimeTrackingService

func InitTimeTrackingService(api BambooApi) TimeTrackingService

type TimeTrackingServiceImpl

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

func (TimeTrackingServiceImpl) GetCurrentTimeTracking

func (s TimeTrackingServiceImpl) GetCurrentTimeTracking() model.TimeTracking

func (TimeTrackingServiceImpl) UploadTimesheetEntries

func (s TimeTrackingServiceImpl) UploadTimesheetEntries(timesheetEntries []model.TimesheetEntry)

type TimesheetParser

type TimesheetParser interface {
	GetTimesheetEntries(weekday time.Weekday) []model.TimesheetEntry
}

func InitTimesheetParser

func InitTimesheetParser(s3Repository S3Repository) TimesheetParser

type TimesheetParserImpl

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

func (TimesheetParserImpl) GetTimesheetEntries

func (p TimesheetParserImpl) GetTimesheetEntries(weekday time.Weekday) []model.TimesheetEntry

Jump to

Keyboard shortcuts

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