Documentation
¶
Index ¶
- type CheckoutSessionConfig
- type CustomValidator
- type DatabaseService
- type GithubAccessTokenResponseBody
- type GithubClient
- type GithubService
- type GitlabAccessTokenResponseBody
- type GitlabClient
- type GitlabService
- type LanguagePairDetails
- type PortalSessionConfig
- type StorageService
- func (s *StorageService) DeleteSubmission(id string) error
- func (s *StorageService) GetObject(path string) (*minio.Object, error)
- func (s *StorageService) GetObjects(path string) <-chan *s3.GetObjectsResult
- func (s *StorageService) ListSubmissionFiles(submissionID string) <-chan *s3.GetObjectsResult
- func (s *StorageService) PutSubmissionObject(submissionId string, path string, reader io.Reader, size int64) (info minio.UploadInfo, err error)
- func (s *StorageService) ScheduleForDeletion(id string) error
- func (s *StorageService) SizeofObjects(prefix string) int64
- type SubmissionMessage
- type SubmissionService
- type SubmissionStatusMessage
- type SubscriptionService
- func (s *SubscriptionService) CancelStripeSubscription(stripeSubscriptionId string) error
- func (s *SubscriptionService) CancelSubscriptionFromStripeCustomerId(stripeCustomerId string, expiresAt time.Time) error
- func (s *SubscriptionService) CancelUserSubscription(userId uuid.UUID, expiresAt time.Time) error
- func (s *SubscriptionService) ConstructWebhookEvent(w http.ResponseWriter, req *http.Request, endpointSecret string) (stripe.Event, error)
- func (s *SubscriptionService) CreateCheckoutSession(stripeCustomer *stripe.Customer, config *CheckoutSessionConfig) (*stripe.CheckoutSession, error)
- func (s *SubscriptionService) CreatePortalSession(currentUserSubscription *ent.Subscription, config *PortalSessionConfig) (*stripe.BillingPortalSession, error)
- func (s *SubscriptionService) GetActiveSubscriptions(offset int, limit int) ([]*ent.Subscription, error)
- func (s *SubscriptionService) GetCurrentUserSubscription(userID uuid.UUID) (*ent.Subscription, error)
- func (s *SubscriptionService) GetLastUserSubscription(userID uuid.UUID) (*ent.Subscription, error)
- func (s *SubscriptionService) GetOrCreateStripeCustomer(subscribingUser *ent.User, lastUserSubscription *ent.Subscription) (*stripe.Customer, *ent.Subscription, error)
- func (s *SubscriptionService) GetTierFromPriceId(priceId string) string
- func (s *SubscriptionService) GetTierPrices(tier string) TierPrices
- func (s *SubscriptionService) GetTiers() []string
- func (s *SubscriptionService) HasTier(tier string) bool
- func (s *SubscriptionService) IsActive(subscription *ent.Subscription) bool
- func (s *SubscriptionService) RemoveSubscriptionsFromStripeCustomerId(stripeCustomerId string) error
- func (s *SubscriptionService) UpdateStripeSubscription(stripeSubscriptionId string, targetTier string) (*stripe.Subscription, error)
- func (s *SubscriptionService) UpdateSubscription(stripeSubscription *stripe.Subscription) error
- type TierPrices
- type TokenService
- func (s *TokenService) GenerateToken(userId uuid.UUID) (uuid.UUID, error)
- func (s *TokenService) GetTokenFromContext(c echo.Context) (uuid.UUID, error)
- func (s *TokenService) GetUser(tokenId uuid.UUID) (*ent.User, error)
- func (s *TokenService) GetUserFromContext(c echo.Context) (*ent.User, error)
- func (s *TokenService) VaidateTokenFromContext(c echo.Context) (bool, error)
- func (s *TokenService) ValidateToken(tokenId uuid.UUID) (bool, error)
- type TranspilerDetails
- type TranspilerDetailsTarget
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CheckoutSessionConfig ¶
type CustomValidator ¶
func (*CustomValidator) Validate ¶
func (cv *CustomValidator) Validate(i interface{}) error
type DatabaseService ¶
func NewDatabaseService ¶
func NewDatabaseService(driver string, dataSourceName string) (*DatabaseService, error)
func (*DatabaseService) AutoMigrate ¶
func (s *DatabaseService) AutoMigrate() error
func (*DatabaseService) Close ¶
func (s *DatabaseService) Close() error
type GithubClient ¶
type GithubClient struct {
// contains filtered or unexported fields
}
func (*GithubClient) GetEmails ¶
func (c *GithubClient) GetEmails() []*github.UserEmail
type GithubService ¶
type GithubService struct { ClientId string // contains filtered or unexported fields }
func NewGithubService ¶
func NewGithubService(clientId string, clientSecret string) (*GithubService, error)
func (*GithubService) GenerateAccessTokenFromCode ¶
func (s *GithubService) GenerateAccessTokenFromCode(code string) (*GithubAccessTokenResponseBody, error)
func (*GithubService) NewClient ¶
func (s *GithubService) NewClient(accessToken string) *GithubClient
type GitlabClient ¶
type GitlabClient struct {
// contains filtered or unexported fields
}
func (*GitlabClient) GetUser ¶
func (c *GitlabClient) GetUser() (*gitlab.User, error)
type GitlabService ¶
type GitlabService struct { ClientId string // contains filtered or unexported fields }
func NewGitlabService ¶
func NewGitlabService(clientId string, clientSecret string) (*GitlabService, error)
func (*GitlabService) GenerateAccessTokenFromCode ¶
func (s *GitlabService) GenerateAccessTokenFromCode(code string, redirectUri string) (*GitlabAccessTokenResponseBody, error)
func (*GitlabService) NewClient ¶
func (s *GitlabService) NewClient(accessToken string) (*GitlabClient, error)
type LanguagePairDetails ¶
type PortalSessionConfig ¶
type PortalSessionConfig struct {
ReturnURL string
}
type StorageService ¶
type StorageService struct {
// contains filtered or unexported fields
}
func NewStorageService ¶
func (*StorageService) DeleteSubmission ¶
func (s *StorageService) DeleteSubmission(id string) error
func (*StorageService) GetObject ¶
func (s *StorageService) GetObject(path string) (*minio.Object, error)
func (*StorageService) GetObjects ¶
func (s *StorageService) GetObjects(path string) <-chan *s3.GetObjectsResult
func (*StorageService) ListSubmissionFiles ¶
func (s *StorageService) ListSubmissionFiles(submissionID string) <-chan *s3.GetObjectsResult
func (*StorageService) PutSubmissionObject ¶
func (*StorageService) ScheduleForDeletion ¶
func (s *StorageService) ScheduleForDeletion(id string) error
Set a tag for the objects to be deleted by Lifecycle later on
func (*StorageService) SizeofObjects ¶
func (s *StorageService) SizeofObjects(prefix string) int64
type SubmissionMessage ¶
type SubmissionService ¶
type SubmissionService struct {
// contains filtered or unexported fields
}
func NewSubmissionService ¶
func NewSubmissionService(queueService *queue.QueueService, databaseService *DatabaseService, storageService *StorageService) *SubmissionService
func (*SubmissionService) GetLanguagePairDetails ¶
func (s *SubmissionService) GetLanguagePairDetails(sourceLanguage string, targetLanguage string) (*LanguagePairDetails, error)
func (*SubmissionService) HandleSubmissionStatus ¶
func (s *SubmissionService) HandleSubmissionStatus(msg SubmissionStatusMessage) error
func (*SubmissionService) PublishSubmissionToTranspile ¶
func (s *SubmissionService) PublishSubmissionToTranspile(sub SubmissionMessage) error
type SubmissionStatusMessage ¶
type SubmissionStatusMessage struct { ID string `json:"id"` Status submission.Status `json:"status"` Reason string `json:"reason"` Timestamp int64 `json:"timestamp"` }
type SubscriptionService ¶
type SubscriptionService struct {
// contains filtered or unexported fields
}
func NewSubscriptionService ¶
func NewSubscriptionService( stripeSecretKey string, stripeProTierPrices TierPrices, stripeEnterpriseTierPrices TierPrices, databaseService *DatabaseService, ) *SubscriptionService
func (*SubscriptionService) CancelStripeSubscription ¶
func (s *SubscriptionService) CancelStripeSubscription(stripeSubscriptionId string) error
func (*SubscriptionService) CancelSubscriptionFromStripeCustomerId ¶
func (s *SubscriptionService) CancelSubscriptionFromStripeCustomerId(stripeCustomerId string, expiresAt time.Time) error
func (*SubscriptionService) CancelUserSubscription ¶
func (*SubscriptionService) ConstructWebhookEvent ¶
func (s *SubscriptionService) ConstructWebhookEvent(w http.ResponseWriter, req *http.Request, endpointSecret string) (stripe.Event, error)
func (*SubscriptionService) CreateCheckoutSession ¶
func (s *SubscriptionService) CreateCheckoutSession(stripeCustomer *stripe.Customer, config *CheckoutSessionConfig) (*stripe.CheckoutSession, error)
func (*SubscriptionService) CreatePortalSession ¶
func (s *SubscriptionService) CreatePortalSession(currentUserSubscription *ent.Subscription, config *PortalSessionConfig) (*stripe.BillingPortalSession, error)
func (*SubscriptionService) GetActiveSubscriptions ¶
func (s *SubscriptionService) GetActiveSubscriptions(offset int, limit int) ([]*ent.Subscription, error)
func (*SubscriptionService) GetCurrentUserSubscription ¶
func (s *SubscriptionService) GetCurrentUserSubscription(userID uuid.UUID) (*ent.Subscription, error)
func (*SubscriptionService) GetLastUserSubscription ¶
func (s *SubscriptionService) GetLastUserSubscription(userID uuid.UUID) (*ent.Subscription, error)
func (*SubscriptionService) GetOrCreateStripeCustomer ¶
func (s *SubscriptionService) GetOrCreateStripeCustomer(subscribingUser *ent.User, lastUserSubscription *ent.Subscription) (*stripe.Customer, *ent.Subscription, error)
func (*SubscriptionService) GetTierFromPriceId ¶
func (s *SubscriptionService) GetTierFromPriceId(priceId string) string
func (*SubscriptionService) GetTierPrices ¶
func (s *SubscriptionService) GetTierPrices(tier string) TierPrices
func (*SubscriptionService) GetTiers ¶
func (s *SubscriptionService) GetTiers() []string
func (*SubscriptionService) HasTier ¶
func (s *SubscriptionService) HasTier(tier string) bool
func (*SubscriptionService) IsActive ¶
func (s *SubscriptionService) IsActive(subscription *ent.Subscription) bool
func (*SubscriptionService) RemoveSubscriptionsFromStripeCustomerId ¶
func (s *SubscriptionService) RemoveSubscriptionsFromStripeCustomerId(stripeCustomerId string) error
func (*SubscriptionService) UpdateStripeSubscription ¶
func (s *SubscriptionService) UpdateStripeSubscription(stripeSubscriptionId string, targetTier string) (*stripe.Subscription, error)
func (*SubscriptionService) UpdateSubscription ¶
func (s *SubscriptionService) UpdateSubscription(stripeSubscription *stripe.Subscription) error
type TierPrices ¶
type TokenService ¶
type TokenService struct {
// contains filtered or unexported fields
}
func NewTokenService ¶
func NewTokenService(databaseService *DatabaseService) *TokenService
func (*TokenService) GenerateToken ¶
func (*TokenService) GetTokenFromContext ¶
func (s *TokenService) GetTokenFromContext(c echo.Context) (uuid.UUID, error)
func (*TokenService) GetUserFromContext ¶
func (s *TokenService) GetUserFromContext(c echo.Context) (*ent.User, error)
Return a *echo.HTTPError if failing
func (*TokenService) VaidateTokenFromContext ¶
func (s *TokenService) VaidateTokenFromContext(c echo.Context) (bool, error)
Return a *echo.HTTPError if failing
func (*TokenService) ValidateToken ¶
func (s *TokenService) ValidateToken(tokenId uuid.UUID) (bool, error)
type TranspilerDetails ¶
type TranspilerDetails struct { FileExtension string Targets map[string]*TranspilerDetailsTarget }
type TranspilerDetailsTarget ¶
Source Files
¶
Click to show internal directories.
Click to hide internal directories.