Documentation ¶
Index ¶
- type IUserRepository
- type MongoUserRepository
- func (usr *MongoUserRepository) AddUser(ctx context.Context, user UserEntity) (string, error)
- func (usr *MongoUserRepository) DeleteUser(ctx context.Context, id string) error
- func (usr *MongoUserRepository) GetUser(ctx context.Context, id string) (UserDocument, error)
- func (usr *MongoUserRepository) UpdateUser(ctx context.Context, id string, user UserEntity) error
- type UserDocument
- type UserEntity
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type IUserRepository ¶
type IUserRepository interface { AddUser(context.Context, UserEntity) (string, error) GetUser(context.Context, string) (UserDocument, error) UpdateUser(context.Context, string, UserEntity) error DeleteUser(context.Context, string) error }
IUserRepository defines user operations
type MongoUserRepository ¶
MongoUserRepository gives mongo implementation for user operations
func (*MongoUserRepository) AddUser ¶
func (usr *MongoUserRepository) AddUser(ctx context.Context, user UserEntity) (string, error)
AddUser adds new user to the database
func (*MongoUserRepository) DeleteUser ¶
func (usr *MongoUserRepository) DeleteUser(ctx context.Context, id string) error
DeleteUser deletes user document for given id
func (*MongoUserRepository) GetUser ¶
func (usr *MongoUserRepository) GetUser(ctx context.Context, id string) (UserDocument, error)
GetUser fetches user info from the database
func (*MongoUserRepository) UpdateUser ¶
func (usr *MongoUserRepository) UpdateUser(ctx context.Context, id string, user UserEntity) error
UpdateUser updates user data in the database
type UserDocument ¶
type UserDocument struct { FirstName string `json:"firstname" bson:"firstname"` LastName string `json:"lastname" bson:"lastname"` Email string `json:"email" bson:"email"` Phone string `json:"phone" bson:"phone"` Country string `json:"country" bson:"country"` }
UserDocument is user object for mongo document retrieval
type UserEntity ¶
type UserEntity struct { FirstName string `json:"firstname" bson:"firstname"` LastName string `json:"lastname" bson:"lastname"` Email string `json:"email" bson:"email"` Phone string `json:"phone" bson:"phone"` Country string `json:"country" bson:"country"` }
UserEntity is user object for document
Click to show internal directories.
Click to hide internal directories.