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