mongomanager

package
v0.0.0-...-ccc70e5 Latest Latest
Warning

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

Go to latest
Published: Mar 30, 2024 License: BSD-4-Clause Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckMongoConnectionFiles

func CheckMongoConnectionFiles(log *zap.Logger) error

func ValidateStruct

func ValidateStruct(s interface{}) error

Types

type MongoConnection

type MongoConnection struct {
	Client *mongo.Client
	Log    *zap.Logger
}

func InitMongoConnection

func InitMongoConnection(ctx context.Context, log *zap.Logger) (*MongoConnection, error)

func (*MongoConnection) CheckMongoConnectability

func (mongoConnection *MongoConnection) CheckMongoConnectability(ctx context.Context) error

func (*MongoConnection) CreateTrial

func (mongoConnection *MongoConnection) CreateTrial(ctx context.Context, trial Trial) error

func (*MongoConnection) CreateUser

func (mongoConnection *MongoConnection) CreateUser(ctx context.Context, user User) error

func (*MongoConnection) DeleteUser

func (mongoConnection *MongoConnection) DeleteUser(ctx context.Context, user User) error

func (*MongoConnection) GetTrial

func (mongoConnection *MongoConnection) GetTrial(ctx context.Context, trialFilter Trial) (Trial, error)

func (*MongoConnection) GetUser

func (mongoConnection *MongoConnection) GetUser(ctx context.Context, userFilter User) (User, error)

func (*MongoConnection) UpdateUser

func (mongoConnection *MongoConnection) UpdateUser(ctx context.Context, user User) error

type Trial

type Trial struct {
	SubscriptionID         string `bson:"subscriptionID" index:"unique"`
	ProductType            string `bson:"productType" validate:"required"`
	CustomerID             string `bson:"customerID,omitempty" index:"unique" validate:"required"`
	PaymentCardFingerprint string `bson:"paymentCardFingerprint,omitempty" index:"unique"`
	PaymentPayPalEMail     string `bson:"paymentPayPalEMail,omitempty" index:"unique"`
	PaymentSEPAFingerprint string `bson:"paymentSEPAFingerprint,omitempty" index:"unique"`
}

type User

type User struct {
	UID        string `bson:"uid,omitempty"`
	CustomerID string `bson:"customerID,omitempty"`
}

Jump to

Keyboard shortcuts

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