Class Session
java.lang.Object
ch.autumo.beetroot.Session
- All Implemented Interfaces:
Serializable
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAdd uploaded files info .voidaddOrUpdateUserSetting(String key, String value) Add or update user setting.voidDelete internal generated 2FA code from session.voidClear all user data within session.voidClear all user data within session except a previously set language.Get uploaded files infocreateIdPair(int origId, String entity) Crate a new ID pair.voidDelete all parameters in this sessiondeleteUserSetting(String key) Delete user setting.voiddestroy(org.nanohttpd.protocols.http.content.CookieHandler cookies) Destroy session by given cookie handler holding the '__SESSION_ID__'.voiddestroyDelete(org.nanohttpd.protocols.http.content.CookieHandler cookies) Destroy session by given cookie handler holding the '__SESSION_ID__' and delete stored session.Get value.Date and time when the session has been created.Get CSRF token.Get internal generated 2FA code.getMapValue(String mapKey, String key) Get map value.getModifyId(int origId, String entity) Get modified ID based on original database ID.intGet original database ID based on modified ID.Get session ID.getUser()Get user.Get user email.Get full user name, can be first name or last name or both and first or last name is not present, the user name.intGet user DB id.Get user language.Get user name.Get user permissions.Get user roles (DB role table).Get user secret key.getUserSetting(String key) Get one user setting.Get user settings map.booleanUser has 2FA?booleanhasUserPermission(String perm) Check if user has a permission (DB role table).booleanhasUserRole(String role) Check if user has a role (DB role table).booleanChecks if this session is older than the timeout.booleanIs 2FA state set?voidrefresh()Refresh session to save from timeout.voidRemove a specific key.voidClean session from all ID pairs!voidRemove an ID pair by given modify ID and entity.voidRemove a specific map key.voidReset 2FA state.voidset(String key, Serializable value) Set a key/value pair.voidsetFormCsrfToken(String token) Set CSRF token.voidsetInternalTOTPCode(String genCode) Set internal generated 2FA code.voidsetMapValue(String mapKey, String key, String value) Set a key/value pair to a map.voidSet 2FA state totrue.voidsetUserData(User user, String roles, String permissions) Set user data.voidsetUserLang(String lang) Set user language.voidsetUserSettings(Map<String, String> settingsMap) Set user settings map.
-
Constructor Details
-
Session
New session with given session id '__SESSION_ID__' or what is configured.- Parameters:
sessionID- session id
-
-
Method Details
-
getCreated
Date and time when the session has been created.- Returns:
- creation date/time
-
refresh
public void refresh()Refresh session to save from timeout. -
isOlderThanSessionTimeout
public boolean isOlderThanSessionTimeout()Checks if this session is older than the timeout.- Returns:
- true if so
-
createIdPair
Crate a new ID pair. Remove old ID's if a pair is found associated to the original ID given. 2 ID pairs are 2 ID key/value pairs. Modify ID is the protected web GUI id.- Parameters:
origId- original id (database id)entity- entity- Returns:
- newly created modify ID
-
getModifyId
-
getOrigId
-
removeIds
-
removeAllIds
public void removeAllIds()Clean session from all ID pairs! -
setUserData
Set user data. Use user or or user roles depending if you use the simple role management or the full User-Role ACL.- Parameters:
user- userroles- user roles (comma-separated roles)permissions- user permissions (comma-separated permissions)
-
clearUserDataExceptLanguage
public void clearUserDataExceptLanguage()Clear all user data within session except a previously set language. -
clearUserData
public void clearUserData()Clear all user data within session. -
deleteAllParameters
public void deleteAllParameters()Delete all parameters in this session -
getSessionId
-
setUserSettings
-
getUserSettings
-
getUserSetting
-
addOrUpdateUserSetting
-
deleteUserSetting
-
getUserId
public int getUserId()Get user DB id. Returns -1 is no user is present.- Returns:
- user DB id
-
getUserRoles
-
hasUserRole
Check if user has a role (DB role table).- Parameters:
role- user role- Returns:
- true, if so
-
getUserPermissions
-
hasUserPermission
Check if user has a permission (DB role table).- Parameters:
perm- user permission- Returns:
- true, if so
-
getUser
-
getUserName
-
getUserEmail
-
getUserSecretKey
-
getUTwoFa
public boolean getUTwoFa()User has 2FA?- Returns:
- user has 2FA?
-
getUserLang
-
setUserLang
Set user language.- Parameters:
lang- user language (ISO code 2 length)
-
setTwoFaLogin
public void setTwoFaLogin()Set 2FA state totrue. -
isTwoFaLoginOk
public boolean isTwoFaLoginOk()Is 2FA state set?- Returns:
- true is so
-
resetTwoFaLogin
public void resetTwoFaLogin()Reset 2FA state. -
addFiles
-
consumeFiles
-
getUserFullNameOrUserName
Get full user name, can be first name or last name or both and first or last name is not present, the user name.- Returns:
- full name or user name
-
getFormCsrfToken
-
setFormCsrfToken
-
setInternalTOTPCode
Set internal generated 2FA code.- Parameters:
genCode- generated 2FA code
-
getInternalTOTPCode
Get internal generated 2FA code.- Returns:
- internal generated 2FA code
-
clearInternalTOTPCode
public void clearInternalTOTPCode()Delete internal generated 2FA code from session. -
getMapValue
Get map value.- Parameters:
mapKey- map keykey- key- Returns:
- value
-
setMapValue
-
removeMap
-
get
-
set
Set a key/value pair. They are persisted in the session file if the server is stopped; you have to house-keep these values!- Parameters:
key- keyvalue- value
-
remove
-
destroy
public void destroy(org.nanohttpd.protocols.http.content.CookieHandler cookies) Destroy session by given cookie handler holding the '__SESSION_ID__'.- Parameters:
cookies- cookie handler
-
destroyDelete
public void destroyDelete(org.nanohttpd.protocols.http.content.CookieHandler cookies) Destroy session by given cookie handler holding the '__SESSION_ID__' and delete stored session.- Parameters:
cookies- cookie handler
-