Class: BackendUserService
backend-services/backend-user.service.BackendUserService
Constructors
constructor
• new BackendUserService(graphqlService, loginUserService)
Parameters
| Name | Type |
|---|---|
graphqlService | GraphqlService |
loginUserService | LoginUserService |
Defined in
login-service/src/backend-services/backend-user.service.ts:17
Properties
graphqlService
• Private Readonly graphqlService: GraphqlService
Defined in
login-service/src/backend-services/backend-user.service.ts:17
logger
• Private Readonly logger: Logger
Defined in
login-service/src/backend-services/backend-user.service.ts:16
loginUserService
• Private Readonly loginUserService: LoginUserService
Defined in
login-service/src/backend-services/backend-user.service.ts:17
Methods
checkIsUserAdmin
▸ checkIsUserAdmin(user): Promise<boolean>
Checks if the user may access admin actions.
Calls the backend API to retrieve the information.
Potential optimation if performance is a problem: Cache admin state for one login session (activeLogin)
Parameters
| Name | Type | Description |
|---|---|---|
user | LoginUser | The user for which to check admin permissions |
Returns
Promise<boolean>
true if the user is allowed to access admin actions, false if not
Defined in
login-service/src/backend-services/backend-user.service.ts:29
checkUserExists
▸ checkUserExists(user): Promise<boolean>
Checks for the existance of a GropiusUser with the neo4jid specified in the given LoginUser
Meant to check database consistency. For a properly created LoginUser this should always return true
Parameters
| Name | Type | Description |
|---|---|---|
user | LoginUser | The LoginUser to check in the backend |
Returns
Promise<boolean>
true iff the LoginUser has a valid associated GropiusUser in the backend
Defined in
login-service/src/backend-services/backend-user.service.ts:53
createLoginUserForExistingBackendUser
▸ createLoginUserForExistingBackendUser(neo4jId): Promise<LoginUser>
Fetches the user date (username, ...) of the user fron the backend and creates a LoginUser for it
Meant to be used in case of database inconsistency as usually both users should be created simultaneously
Parameters
| Name | Type | Description |
|---|---|---|
neo4jId | string | The bakcend neo4j id of the GropiusUser to create a LoginUser for |
Returns
Promise<LoginUser>
The created LoginUser instance
Defined in
login-service/src/backend-services/backend-user.service.ts:110
createNewUser
▸ createNewUser(input, isAdmin): Promise<LoginUser>
Parameters
| Name | Type |
|---|---|
input | CreateUserInput |
isAdmin | boolean |
Returns
Promise<LoginUser>
Defined in
login-service/src/backend-services/backend-user.service.ts:75
getAllGropiusUsersInBackend
▸ getAllGropiusUsersInBackend(): Promise<string[]>
Fetches all backend ids of all existing GropiusUsers in the backend
Returns
Promise<string[]>
Defined in
login-service/src/backend-services/backend-user.service.ts:67
linkAllImsUsersToGropiusUser
▸ linkAllImsUsersToGropiusUser(loginUser, loginData): Promise<void>
Parameters
| Name | Type |
|---|---|
loginUser | LoginUser |
loginData | UserLoginData |
Returns
Promise<void>
Defined in
login-service/src/backend-services/backend-user.service.ts:143
linkOneImsUserToGropiusUser
▸ linkOneImsUserToGropiusUser(loginUser, imsUser): Promise<void>
Parameters
| Name | Type |
|---|---|
loginUser | LoginUser |
imsUser | UserLoginDataImsUser |
Returns
Promise<void>
Defined in
login-service/src/backend-services/backend-user.service.ts:129