Package com.simplicite.util
Class Grant
- java.lang.Object
-
- com.simplicite.util.GrantCore
-
- com.simplicite.util.Grant
-
- All Implemented Interfaces:
CacheInterface
,java.io.Serializable
public class Grant extends GrantCore
User rights
One grant object is loaded for each user session- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.simplicite.util.GrantCore
FUNCTION_ACTION, FUNCTION_CREATE, FUNCTION_DELETE, FUNCTION_READ, FUNCTION_UPDATE, FUNCTION_VIEW, IO_SESSION_PREFIX, STATUS_ACTIVE, STATUS_INACTIVE, STATUS_PENDING, STATUS_WEBSERVICES, SYSTEM_ADMIN_SESSION, SYSTEM_PUBLIC_SESSION, USER_ACTIVE, USER_INACTIVE, USER_PENDING, USER_WEBSERVICES
-
-
Constructor Summary
Constructors Constructor Description Grant()
Default constructor Using this constructor requires further initialization.Grant(java.lang.String login)
Constructor with default initialization (e.g.Grant(java.lang.String login, java.lang.String sessionId, boolean web, int endpoint, boolean ws, java.lang.String scope, SessionInfo info)
Constructor with init
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description int
addColumn(java.lang.String table, java.lang.String column, int type, int size, int prec)
Add a column to a table of default datasourceint
addColumn(java.lang.String datasource, java.lang.String table, java.lang.String column, int type, int size, int prec)
Add a column to a table of designated datasourceboolean
addResponsibility(java.lang.String groupName)
Add responsibility for the user (active, with current date as start date, no end date, using same module as the user)static boolean
addResponsibility(java.lang.String userId, java.lang.String groupName)
Add responsibility for the user (active, with current date as start date, no end date, using same module as the user)boolean
addResponsibility(java.lang.String groupName, java.lang.String startDate, java.lang.String endDate, boolean active, java.lang.String module)
Add responsibility for the userstatic boolean
addResponsibility(java.lang.String userId, java.lang.String groupName, java.lang.String startDate, java.lang.String endDate, boolean active, java.lang.String module)
Add responsibility for the uservoid
beginTransaction()
Start a transactionvoid
beginTransaction(java.lang.String datasource)
Start a transactionboolean
callProcedure(java.lang.String datasource, java.lang.String procedure, java.util.List<ObjectField> params)
Call a stored procedureint
changeColumn(java.lang.String table, java.lang.String oldcolumn, java.lang.String newcolumn, int type, int size, int prec)
Change a column in a table of designated datasourceint
changeColumn(java.lang.String datasource, java.lang.String table, java.lang.String oldcolumn, java.lang.String newcolumn, int type, int size, int prec)
Change a column in a table of designated datasourcejava.lang.String
changePassword(java.lang.String login, java.lang.String password, boolean forceChange)
Deprecated.Use changePassword with addtional argumentsjava.lang.String
changePassword(java.lang.String login, java.lang.String password, boolean validate, boolean forceChange)
Change password for specified loginboolean
changeScope(java.lang.String view)
Change the user home page + disposition + responsibilitiesboolean
checkColumn(java.lang.String table, java.lang.String column)
Checks if the specified column exists in the specified table of default datasourceboolean
checkColumn(java.lang.String datasource, java.lang.String table, java.lang.String column)
Checks if the specified column exists in the specified table of designated datasourceboolean
checkTable(java.lang.String table)
Checks if a table exists in default datasourceboolean
checkTable(java.lang.String datasource, java.lang.String table)
Checks if a table exists in designated datasourcevoid
clearCache(boolean memory, boolean core, boolean cron, int preCompile)
Clears all cachesvoid
clearCache(boolean memory, boolean core, int preCompile)
Deprecated.Use clearCache with cron argumentvoid
clearCache(java.lang.String login)
Clears specified user's cachevoid
clearCache(java.lang.String object, java.lang.String instance)
Clears specified business object's cache (optionally restricted to specified instance) from all usersvoid
clearCacheSession()
Clears session cachevoid
clearListOfValuesCache()
Clears all lists of values from cachevoid
clearListOfValuesCache(java.lang.String name)
Clears specified list of values from cachevoid
commitTransaction()
Commit and close the transactionvoid
commitTransaction(java.lang.String datasource)
Commit and close the transactionjava.lang.String
createForeignKeyConstraint(java.lang.String datasource, java.lang.String table, java.lang.String constraintName, java.lang.String fkColumn, java.lang.String refTable, java.lang.String refColumn)
Create a DB foreign key constraintjava.lang.String
createIndex(java.lang.String datasource, java.lang.String table, java.lang.String indexName, java.lang.String column)
Create a non-unique DB index on single columnjava.lang.String
createIndex(java.lang.String datasource, java.lang.String table, java.lang.String indexName, java.util.List<java.lang.String> columns, boolean uniq)
Create a DB indexProcessus
createProcessus(java.lang.String name)
Create a business process with a new PIDint
createTable(java.lang.String table, ObjectField rowIdField)
Create table with optional custom row ID fieldint
createTable(java.lang.String datasource, java.lang.String table, ObjectField rowIdField)
Create table with optional custom row ID field in specified datasourcevoid
destroy()
To destroy properly a user sessionjava.lang.String
dropForeignKeyConstraint(java.lang.String datasource, java.lang.String table, java.lang.String constraintName)
Drop a DB foreign key constraintjava.lang.String
dropIndex(java.lang.String datasource, java.lang.String table, java.lang.String indexName)
Drop a DB indexstatic boolean
exists(java.lang.String login, boolean active)
Checks if a user exists for specified loginGrant
getAdmin()
Get the system rights in a specific session
Useful to update the system objects in isolated user session (same as static method getAdmin(Grant g))static Grant
getAdmin(Grant g)
Get the system rights in a specific session
Useful to update the system objects in isolated user sessionObjectDB
getAgendaObject(java.lang.String name)
Gets the agenda object definition instance (instance name is agenda_[ajax_]<object name>)ObjectDB
getAjaxObject(java.lang.String name)
Gets the main Ajax business object definition instance (instance name is the_ajax_<object name>)APITool
getAPI(java.lang.String url, java.lang.String login, java.lang.String password, java.lang.String encoding)
Deprecated.Use getAPI with debug parameterAPITool
getAPI(java.lang.String url, java.lang.String login, java.lang.String password, java.lang.String encoding, boolean debug)
Get Simplicite API clientObjectDB
getBatchObject(java.lang.String name)
Gets the batch business object definition instance (instance name is eai_<object name>)int[]
getCacheInfo()
Get cache info: current and max size of objects and grantsjava.lang.String
getContextPath()
Deprecated.java.lang.String
getContextURL()
Get the web application URLObjectDB
getCronObject(java.lang.String name)
Gets the cron business object definition instance (instance name is cron_<object name>)ObjectDB
getDataMapObject(java.lang.String name)
Gets the datamap business object definition instance (instance name is datamap_[ajax_]<object name>)java.lang.String
getDBColumnType(int type, int size, int prec)
Get database column type from field type, size and precisionjava.lang.String
getDBColumnType(java.lang.String datasource, int type, int size, int prec)
Get database column type from field type, size and precisionjava.lang.String
getDBConcat(java.lang.String str1, java.lang.String str2)
Get string concatenation using DB syntax of default datasource (ex: concat mysqljava.lang.String
getDBConcat(java.lang.String datasource, java.lang.String str1, java.lang.String str2)
Get string concatenation using DB syntax of designated datasource (ex: concat mysql)java.lang.String
getDBDate()
Get the DB current date of default datasourcejava.lang.String
getDBDate(java.lang.String datasource)
Get the DB current date of designated datasourcejava.lang.String
getDBInfo()
Get the DB information (product name and version) of default datasourcejava.lang.String
getDBInfo(java.lang.String datasource)
Get the DB information (product name and version) of designated datasourcejava.sql.DatabaseMetaData
getDBMetaData()
Get the DB metadata of default datasourcejava.sql.DatabaseMetaData
getDBMetaData(java.lang.String datasource)
Get the DB metadata of designated datasourcejava.lang.String
getDBNow()
Get the DB syntax of default datasource to retrieve the current datejava.lang.String
getDBNow(java.lang.String datasource)
Get the DB syntax of designated datasource to retrieve the current dateint
getDBOracleAliasLength()
Get Oracle alias length of default datasourceint
getDBOracleAliasLength(java.lang.String datasource)
Get Oracle alias length of designated data source.java.lang.String
getDBToDate(java.lang.String date)
Get a date statement in a DB format for default datasourcejava.lang.String
getDBToDate(java.lang.String datasource, java.lang.String date)
Get a date statement in a DB format for designated datasourcejava.lang.String
getDBToDatetime(java.lang.String datetime)
Get a datetime statement in a DB format for default datasourcejava.lang.String
getDBToDatetime(java.lang.String datasource, java.lang.String datetime)
Get a datetime statement in a DB format for designated datasourcejava.lang.String
getDBToTime(java.lang.String time)
Get a time statement in a DB format for default datasourcejava.lang.String
getDBToTime(java.lang.String datasource, java.lang.String time)
Get a time statement in a DB format for designated datasourceint
getDBVendor()
Get the DB vendor of default datasourceint
getDBVendor(java.lang.String datasource)
Get the DB vendor of designated datasourcejava.lang.String
getDBVendorName()
Get the DB vendor name of default datasourcejava.lang.String
getDBVendorName(java.lang.String datasource)
Get the DB vendor name of designated datasourceint
getEndpoint()
Get endpoint (UI, API, I/O, Git)ExternalObject
getExternalObject(java.lang.String name)
Gets the specified external object definitionjava.lang.String
getExternalObjectLocation(java.lang.String name)
Get external object locationObjectField
getField(java.lang.String name)
Gets the specified business field definitionObjectField
getField(java.lang.String name, ObjectField f, boolean cache)
Gets the specified business field definitionGroupDB
getGroup(java.lang.String group)
Group infojava.util.List<java.lang.String>
getGroupChildren(java.lang.String group)
Children group searchjava.util.List<java.lang.String>
getGroupParents(java.lang.String group)
Parents group searchjava.util.List<java.lang.String>
getGroupProfile(java.lang.String group)
Profile group searchObjectDB
getHomeObject(java.lang.String name)
Gets the home business object definition instance (instance name is home_[ajax_]<object name>)ObjectDB
getIsolatedObject(java.lang.String name)
Gets a memory isolated business object definition instance (instance name is tmp_<object name>_<timestamp>)
Beware, the Object GC cron must run to clean periodically the instancesObjectDB
getJobObject(java.lang.String name)
Gets the job business object definition instance (instance name is job_<object name>)java.lang.String
getLang_ISO_639_1()
Get the ISO639-1 code user languagejava.lang.String
getLang_ISO_639_1(java.lang.String lang)
Get the ISO639-1 code for specified languagejava.lang.String[]
getLangsCodes()
Shorthand that returns all available languages codes from the LANG list of valuesjava.lang.String[]
getLangsValues()
Shorthand that returns all available languages values from the LANG list of valuesjava.util.Map<java.lang.String,ObjectFieldList.ListLink>
getLinkedListsOfValues(ObjectDB obj, ObjectFieldList flist)
Returns linked lists for a contextual list field in an objectListOfValues
getListOfValues(java.lang.String name)
Get list for specified nameListOfValues
getListOfValues(java.lang.String name, java.lang.String sql)
Get list for specified name and SQL statementListOfValues
getListOfValues(java.lang.String name, java.lang.String datasource, java.lang.String sql)
Get list for specified name and SQL statement on specified datasourcejava.lang.String
getListOfValuesCode(java.lang.String name, java.lang.String value, java.lang.String lang)
Get the corresponding code from a list of values that matches a specified value (with a like value% operator)java.lang.String
getListOfValuesValue(java.lang.String name, java.lang.String code)
Shorthand that returns display value from the specified list of values fro the specified codeObjectDB
getMainObject(java.lang.String name)
Gets the main business object definition instance (instance name is the_[ajax_]<object name>)java.lang.String
getMaxId(java.lang.String table)
Get the max standard row ID of a table using default datasourcejava.lang.String
getMaxId(java.lang.String datasource, java.lang.String table)
Get the max standard row ID of a table using designated datasourcejava.lang.String
getMaxIdWhere(java.lang.String table, java.lang.String column, java.lang.String where)
Get the max custom row ID of a table using default datasourcejava.lang.String
getMaxIdWhere(java.lang.String datasource, java.lang.String table, java.lang.String column, java.lang.String where)
Get the max standard row ID of a table using designated datasourcejava.util.List<java.lang.String>
getMetaObjectFields()
Get the all Meta-object fieldsObjectDB
getModelObject(java.lang.String name)
Gets the modeler object definition instance (instance name is model_[ajax_]<object name>)Navigator
getNavigator()
Get navigatorjava.lang.String
getNextIdForColumn(java.lang.String table, java.lang.String column)
Get the next value of an ID column of a table using default datasourcejava.lang.String
getNextIdForColumn(java.lang.String datasource, java.lang.String table, java.lang.String column)
Get the next value of an ID column of a table using designated datasourcelong
getNextSystemParamValue(java.lang.String code)
Get next value of a global (persistent) system parameter used as a sequencejava.lang.String
getNextSystemParamValue(java.lang.String code, java.text.Format fmt)
Get next value of a global (persistent) system parameter used as a sequencejava.lang.String
getNextValueForColumnWhere(java.lang.String table, java.lang.String column, java.lang.String where)
Get the next value of an integer column of a table using designated datasourcejava.lang.String
getNextValueForColumnWhere(java.lang.String datasource, java.lang.String table, java.lang.String column, java.lang.String where)
Get the next value of an integer column of a table using designated datasourcejava.lang.String
getNow()
Deprecated.ObjectDB
getObject(java.lang.String instance, java.lang.String name)
Gets the specified business object definition instancejava.util.List<ObjectDB>
getObjectInstances()
List all objects instantiated for the userjava.util.List<ObjectDB>
getObjectInstances(java.lang.String name)
List all objects instantiated for the userjava.util.List<ObjectDB>
getObjectInstances(java.lang.String name, java.lang.String param, java.lang.String value)
List objects instantiated for the user and/or containing a parameterjava.lang.String
getObjectLabel(java.lang.String name)
Object label in user languagejava.lang.String
getObjectLabel(java.lang.String name, boolean plural)
Object label in user languagejava.lang.String
getObjectLocation(java.lang.String name)
Get business object locationjava.util.List<java.lang.String>
getOrganization(java.lang.String group)
Organization searchObjectDB
getPanelObject(java.lang.String name)
Deprecated.Use getPanelObject(name, refField)ObjectDB
getPanelObject(java.lang.String name, java.lang.String refField)
Gets the panel business object definition instance (instance name is panel_[ajax_]<object name>_<ref name>)java.lang.String
getPictureThumbnailURL()
Get user picture thumbnail URLjava.lang.String
getPictureURL()
Get user picture URLPreference
getPreferenceAction(java.lang.String object)
Parse the ACTION_PREFSPreference
getPreferenceExtra()
Parse the EXTRA_PREFSPreference
getPreferenceList(java.lang.String object)
Parse the LIST_PREFSPreference
getPreferenceSearch(java.lang.String object)
Parse the SEARCH_PREFSPreference
getPreferenceShortcut()
List visible shortcutsObjectDB
getProcessObject(java.lang.String name)
Gets the process business object definition instance (instance name is bpm_[ajax_]<object name>)Processus
getProcessus(java.lang.String name, java.lang.String pid)
Gets the specified business process definition instancestatic Grant
getPublic()
Singleton to use public objectsObjectDB
getRefObject(java.lang.String name)
Gets the reference business object definition instance (instance name is ref_[ajax_]<object name>)java.lang.String
getServerURL()
Get server URL (context URL with context path removed)javax.servlet.http.HttpSession
getSession()
Get session (if available)java.lang.Object
getSessionAttribute(java.lang.String name, java.lang.Object def)
Get session attribute (if session is available)SessionInfo
getSessionInfo()
Get session info with AUTH informationint
getSessionTimeout()
Get session timeout (in seconds if available)static Grant
getSystemAdmin()
Singleton to use system objects with Local access
Be careful to use it in thread safe methods
or only to read parameters, or to execute direct SQL queries/updatesjava.lang.String
getSystemParam(java.lang.String code)
Get the value of a global (persistent) system parameter It's usually a better practice to use getParameter for which all values are loaded once in the session, rather than this method which requests the datasource at each call.java.lang.String
getSystemParam(java.lang.String code, java.lang.String defaultValue)
see getSystemParamObjectDB
getTmpObject(java.lang.String name)
Gets the temporary business object definition instance (instance name is tmp_[ajax_]<object name>)static java.lang.String
getTranslateExternalId(java.lang.String rowId, java.lang.String lang)
Get external object translation row IDstatic java.lang.String
getTranslateFieldId(java.lang.String rowId, java.lang.String lang)
Get field translation row IDstatic java.lang.String
getTranslateId(char type, java.lang.String rowId, java.lang.String lang)
Get translation row IDstatic java.lang.String
getTranslateObjectId(java.lang.String rowId, java.lang.String lang)
Get business object translation row IDstatic java.lang.String
getTranslateProcessId(java.lang.String rowId, java.lang.String lang)
Get business process translation row IDObjectDB
getTreeviewObject(java.lang.String tree, java.lang.String name)
Gets the treeview object definition instance (instance name is tree_[ajax_]<tree name>_<object name>)java.lang.String
getUserAgent()
Get browser user-agentUserSessionFilters
getUserFilters()
Get global filters of user's sessionstatic java.lang.String
getUserId(java.lang.String login)
Returns user ID for specified loginstatic java.lang.String
getUserLogin(java.lang.String userId)
Get user login for specified user IDstatic java.lang.String
getUserModuleId(java.lang.String login)
Returns module ID for specified loginjava.lang.String
getUserSystemParam(java.lang.String login, java.lang.String param)
Get a user's system parameterView
getView(java.lang.String name)
Get a view definitionObjectDB
getWebServiceObject(java.lang.String name)
Gets the web service business object definition instance (instance name is ws_[ajax_]<object name>)WebServicesFactory
getWebServicesFactory(boolean create)
Get web services factoryjava.lang.String
getWorkingId()
Current working Id in table m_sessionlong
getWorkingTime()
Current working creation timevoid
init(java.lang.String login, java.lang.String sessionId, int endpoint, boolean web, Globals.InterfaceType interfaceType, java.lang.String scope, SessionInfo info)
Initialize user rights in a specific interface typevoid
init(java.lang.String login, java.lang.String sessionId, int endpoint, boolean web, java.lang.String lang, Globals.InterfaceType interfaceType, java.lang.String scope, SessionInfo info)
Initialize user rightsvoid
init(java.lang.String login, java.lang.String sessionId, int endpoint, java.lang.String scope, SessionInfo info)
Initialize user rights with web full accessboolean
init(java.lang.String login, javax.servlet.http.HttpServletRequest request, int endpoint)
Initialize user rightsboolean
isAPIEndpoint()
Is on the API endpoint?boolean
isCronEndpoint()
Is on the cron table endpoint?boolean
isCronStarted()
Start cron tablestatic boolean
isDesignerUser(java.lang.String login)
Is designer user?boolean
isGitEndpoint()
Is on the Git endpoint?boolean
isIOEndpoint()
Is on the I/O endpoint?boolean
isMobile()
Deprecated.Use isResponsivestatic boolean
isPublicUser(java.lang.String login)
Is public user?boolean
isResponsive()
Is user on responsive UI ?boolean
isSystemEndpoint()
Is on the system endpoint?static boolean
isSystemUser(java.lang.String login)
Is system user?static boolean
isTechnicalUser(java.lang.String login)
Is technical userboolean
isUIEndpoint()
Is on the UI endpoint?boolean
isUIPublicEndpoint()
Is on the UI public endpoint?Action
loadAction(java.lang.String actionIdOrName)
Gets the specified business action definitionvoid
loadDisposition(java.lang.String disp)
(Re)loads dispositionListOfValuesData
loadListOfValues(ListOfValues lov, java.lang.String lang, java.lang.String name)
Loads specified list of values with values in specified language.ListOfValuesData
loadListOfValues(ListOfValues lov, java.lang.String name, java.lang.String datasource, java.lang.String sql)
Loads specified list of values from a dedicated SQL statement (on specified datasource).void
loadLogEvent()
(Re)loads log eventsvoid
loadPredefinedSearches(java.lang.String object)
(Re)loads predefined searchesvoid
loadResources(java.lang.String obj, java.lang.String objId)
(Re)loads resourcesvoid
loadShortcuts()
(Re)loads shortcutsvoid
loadWebZones()
(Re)loads web zonesjava.lang.String
now(int type)
Deprecated.Use Tool.getCurrentDate or getCurrentTime or detCurrentDatetimejava.lang.String
prepareExpression(java.lang.String content)
Prepare an expression by processing token substitutions: (see prepareExpression for details on tokens)java.lang.String
prepareExpression(java.lang.String content, java.lang.String sep, boolean inlineValues, boolean front)
Prepare an expression by processing token substitutions:
- URL substitutions (see HTMLTool.prepareURLs for details)
- [NOW] (deprecated) or [DATE[:day offset]] : current date in service format yyyy-MM-dd (with optional day offset)
- [TIME[:millisecond offset]] : current time in internal format hh:mm:ss (with optional millisecond offset)
- [DATETIME[:millisecond offset]] : current datetime in service format yyyy-MM-dd HH:mm:ss (with optional millisecond offset)
- [MONTH] : current month in format MM
- [WEEK] : current week in format WW
- [LOV:<list name>:<code>] or [LISTVALUE:<list name>:<code>] : value of a list of values code
- [TEXT:<code>] : static text in user language
- [OBJECT:<object name>[:<object instance name>]] : the specified object (by default it uses temporary instance)
NB : It first calls GrantCore.prepareExpression()java.lang.String
prepareSQL(java.lang.String sql)
Prepares a SQL statement applying following token substitutions:
- [now] : current date (in appropriate format for target database)
- [userid] : user ID
- [login] : user login
- [<lov>:<code>] : List of values value for code (surrounded by SQL quotes)
NB : It first calls GrantCore.prepareSQL()java.util.List<java.lang.String[]>
query(java.lang.String query)
Database query using designated datasourcejava.util.List<java.lang.String[]>
query(java.lang.String datasource, java.lang.String query)
Database query using designated datasourcejava.util.List<java.lang.String[]>
query(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> hosts)
Database query using designated datasourcejava.util.List<java.lang.String[]>
query(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> hosts, int limit)
Database query using designated datasourcejava.util.List<java.lang.String[]>
query(java.lang.String query, java.util.List<ObjectField> hosts)
Database query using default datasourcejava.lang.String[]
queryFirstColumn(java.lang.String query)
Single column database query using default datasourcejava.lang.String[]
querySingleRow(java.lang.String query)
Single row database query using default datasourcejava.lang.String[]
querySingleRow(java.lang.String datasource, java.lang.String query)
Single row database query using designated datasourcejava.lang.String[]
querySingleRow(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host)
Single row database query with hosts values using designated datasourcejava.lang.String[]
querySingleRow(java.lang.String query, java.util.List<ObjectField> host)
Single row database query with hosts values using default datasourcejava.util.List<java.lang.String[]>
queryWithHead(java.lang.String query)
Database query with column names using default datasourcejava.util.List<java.lang.String[]>
queryWithHead(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host)
Database query with column names using designated datasourcejava.util.List<java.lang.String[]>
queryWithHead(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host, int limit)
Database query with column names using designated datasourcejava.util.List<java.lang.String[]>
queryWithHead(java.lang.String query, java.util.List<ObjectField> host)
Database query with column names using default datasourcevoid
registerMetaObjectField(java.lang.String object, java.lang.String field)
Register a meta-object fieldvoid
reinit(java.lang.String login, java.lang.String sessionId, int endpoint, boolean web, java.lang.String scope, SessionInfo info)
Reinitialize user rightsboolean
removeResponsibility(java.lang.String groupName)
Remove responsibility for the userstatic boolean
removeResponsibility(java.lang.String userId, java.lang.String groupName)
Remove responsibility for the uservoid
removeUserSystemParam(java.lang.String login, java.lang.String param, boolean resetCache)
Delete a user's system parameterint
renameTable(java.lang.String oldname, java.lang.String newname)
Rename tableint
renameTable(java.lang.String datasource, java.lang.String oldname, java.lang.String newname)
Rename table of designated datasourcevoid
rollbackTransaction()
Rollback and close the transactionvoid
rollbackTransaction(java.lang.String datasource)
Rollback and close the transactionvoid
setContextPath(java.lang.String contextPath)
Deprecated.void
setContextURL(java.lang.String url)
Set the web application URLjava.lang.String
setDirectScope(java.lang.String url, java.lang.String scope, java.lang.Boolean mobile)
Manage direct, mobile and scope accessvoid
setPreference(java.lang.String param, java.lang.String target, java.lang.String prefs)
Deprecated.void
setPreferenceAction(java.lang.String object, java.lang.String data)
Store Actions preferencevoid
setPreferenceExtra(java.lang.String data)
Store Extra gadgets preferencevoid
setPreferenceList(java.lang.String object, java.lang.String data)
Store List preferencevoid
setPreferenceSearch(java.lang.String object, java.lang.String data)
Store Search preferencevoid
setRespEnable(java.lang.String login, java.lang.String group, boolean enabled, boolean resetCache)
Enable a user responsibility (update the end date)void
setSession(javax.servlet.http.HttpSession session)
Set sessionvoid
setSessionAttribute(java.lang.String name, java.io.Serializable value)
Set session attribute (if session is available)java.lang.String
setSystemParam(java.lang.String code, java.lang.String value)
Set the value of a global (persistent) system parameterjava.lang.String
setSystemParam(java.lang.String code, java.lang.String value, boolean priv)
Deprecated.Use setSystemParam with additional parametersjava.lang.String
setSystemParam(java.lang.String code, java.lang.String value, boolean priv, boolean clearcache)
Set the value of a global (persistent) system parametervoid
setUserFilters(UserSessionFilters uf)
Assign global filters to user's sessionvoid
setUserSystemParam(java.lang.String login, java.lang.String param, java.lang.String value, boolean resetCache)
Upsert a user's system parametervoid
setWebServicesFactory(WebServicesFactory wsf)
Set webservices factoryjava.io.InputStream
simpleBlob(java.lang.String query)
Get a documentjava.io.InputStream
simpleBlob(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host, java.lang.String path)
Get a documentjava.io.InputStream
simpleBlob(java.lang.String query, java.util.List<ObjectField> host, java.lang.String path)
Get a documentjava.lang.String
simpleQuery(java.lang.String query)
Simple database query using default datasourcejava.lang.String
simpleQuery(java.lang.String datasource, java.lang.String query)
Simple database query using designated datasourcejava.lang.String
simpleQuery(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host)
Simple database query with hosts values using designated datasourcejava.lang.String
simpleQuery(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host, boolean silent)
Simple database query with hosts values using designated datasourcejava.lang.String
simpleQuery(java.lang.String query, java.util.List<ObjectField> host)
Simple database query with hosts values using default datasourcedouble
simpleQueryAsDouble(java.lang.String query)
Simple database query using default datasource, the result is parsed into double (typical usage is for avg(), sum() queries)long
simpleQueryAsLong(java.lang.String query)
Simple database query using default datasource, the result is parsed into long (typical usage is for count(*) queries)long
simpleQueryAsLong(java.lang.String datasource, java.lang.String query)
Simple database query using designated datasource, the result is parsed into long (typical usage is for count(*) queries)long
simpleQueryAsLong(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host)
Simple database query using designated datasource with hosts values, the result is parsed into long (typical usage is for count(*) queries)long
simpleQueryAsLong(java.lang.String query, java.util.List<ObjectField> host)
Simple database query using default datasource with hosts values, the result is parsed into long (typical usage is for count(*) queries)boolean
startCron(boolean lock)
Start cron tablevoid
startWorking()
Start working: update the last logon date in table m_user and create one history in m_session and/or log4jboolean
stopCron(boolean unlock)
Stop cron tablevoid
stopWorking()
Stop working: set the duration in table m_session and/or log4jorg.json.JSONObject
toJSONObject(boolean resps, boolean sysparams)
To JSON objectint
update(java.lang.String query)
SQL update in database using default datasourceint
update(java.lang.String datasource, java.lang.String query)
SQL update in database using designated datasourceint
update(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> hosts)
SQL update in database using designated datasource with hosts valuesint
update(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> hosts, boolean silent)
SQL update in database using designated datasource with hosts valuesint
update(java.lang.String query, java.util.List<ObjectField> hosts)
SQL update in database using default datasource with hosts valuesint
updateAll(java.lang.String datasource, java.util.List<java.lang.String> queries)
SQL transactional updates in database using designated datasourceint
updateAll(java.util.List<java.lang.String> queries)
SQL transactional updates in database using default datasourceint
updateBlob(java.lang.String query, byte[] data, java.io.InputStream src)
Update a documentint
updateBlob(java.lang.String datasource, java.lang.String query, byte[] data, java.io.InputStream src)
Update a documentjava.util.List<java.lang.String>
updateMetaObjects(java.lang.String oldObject, java.lang.String oldRowId, java.lang.String newObject, java.lang.String newRowId, boolean deleted, boolean checkOnly)
Update meta-object fields-
Methods inherited from class com.simplicite.util.GrantCore
accessAction, accessCreate, accessDelete, accessDomain, accessIndexedObjects, accessNew, accessObject, accessProcess, accessShortcut, accessUpdate, accessWebZone, addAccessCreate, addAccessDelete, addAccessNew, addAccessObject, addAccessProcess, addAccessRead, addAccessUpdate, addHomePage, addObjectCalculated, addPredefinedSearch, addResource, addSharedScript, addText, canUpdateSystem, changeAccess, changeAccess, checkPwd, clearTreeViews, delAccessCreate, delAccessDelete, delAccessNew, delAccessObject, delAccessProcess, delAccessRead, delAccessUpdate, disableAction, enableAction, enableGC, evalExpression, evalExpression, evalExpressionAsString, evalURLExpression, garbageCollection, getAction, getActions, getActions, getAuthMethod, getAuthProvider, getAuthToken, getAuthTokenExpiry, getBeanDir, getBinDir, getBooleanParameter, getBooleanParameter, getCacheDir, getCacheKey, getClassesDir, getContentDir, getCreatable, getData, getDateFormat, getDBPatchLevel, getDefaultPassword, getDel, getDeletable, getDisposition, getDispositionDefinition, getDocDir, getDocDirMax, getDocLocalDir, getDomains, getEmail, getExportDir, getExternalDocsDir, getFirstName, getFlagParameter, getFlagParameter, getFullName, getGrantInterface, getHashAlgorithm, getHashEncoding, getHashPassword, getHome, getHomeName, getHomePages, getImportDir, getIndexDir, getIntParameter, getIntParameter, getJavadocDir, getJSONArrayParameter, getJSONArrayParameter, getJSONArrayParameter, getJSONObjectParameter, getJSONObjectParameter, getJSONObjectParameter, getLang, getLastName, getLibsDir, getLocale, getLocations, getLogDir, getLogEvent, getLogEvents, getLogin, getLongParameter, getLongParameter, getMavenDir, getMaxRows, getMaxUploadSize, getMenu, getMenuItems, getMenuStyle, getMinRows, getMobilePhoneNumber, getName, getNew, getObjectActions, getObjectCalculated, getObjectInterface, getObjectParameter, getObjectParameter, getObjectParameters, getObjectResources, getObjects, getObjectViews, getPanelCharMax, getParameter, getParameter, getParameterId, getParameters, getPassword, getPicture, getPoweredBy, getPredefinedSearch, getPredefinedSearch, getPredefinedSearch, getProcess, getProcessInterface, getProjectDir, getRailway, getRandomPassword, getRecycleBinDir, getRegistrationGroups, getResource, getResource, getResourceById, getResourceCodes, getResources, getResp, getRespList, getScope, getScriptById, getScriptInterpreter, getScriptInterpreterEngineName, getSessionId, getSharedScript, getShortcut, getShortcuts, getSimpleView, getSimpleViews, getSourcesDir, getSrcDir, getStatus, getSubPackage, getText, getText, getTheme, getTimeZone, getTimeZoneID, getTmpDir, getTreeView, getTreeViews, getTreeViewsOfObject, getUpdatable, getUserId, getUserModuleId, getUserUniqueId, getVersion, getVisibilities, getVisibility, getVisibility, getWebZone, getWebZone, getWebZones, getWebZones, getWindowTitle, hasParameter, hasRegistration, hasResponsibility, isAboutEnable, isAPIInterfaceEnable, isCompletionEnable, isConvertWildcards, isCROWDAuthMethod, isCustomAuthMethod, isDefaultAuthMethod, isDesigner, isEasyModeClearCache, isForcedChangePassword, isGITInterfaceEnable, isHtmlEditorEnable, isInternalOAuth2AuthMethod, isIOInterfaceEnable, isJavaImplemented, isLDAPAuthMethod, isLoaded, isOAuth2AuthMethod, isPanelFilterEnable, isPublic, isRightToLeft, isSAMLAuthMethod, isSystem, isSystemAdmin, lastUsage, limitLicenseRights, logActivity, logDebug, logDocument, logError, logFatal, logInfo, logObject, logSession, logWarning, newData, removeAccessCreate, removeAccessDelete, removeAccessObject, removeAccessRead, removeAccessUpdate, removeObjectParameter, removeObjectParameters, removeParameter, removeResources, removeResources, removeSharedScript, removeSharedScripts, setAbout, setAPIInterface, setAuthToken, setAuthTokenExpiry, setBeanDir, setBinDir, setCacheDir, setClassesDir, setCompletion, setContentDir, setConvertWildcards, setData, setDateFormat, setDateFormat, setDispositionDefinition, setDocDir, setDocDirMax, setDocLocalDir, setEasyModeClearCache, setEmail, setExportDir, setExternalDocsDir, setFirstName, setFlagParameter, setForcedChangePassword, setGITInterface, setHashAlgorithm, setHashEncoding, setHashPassword, setHome, setHtmlEditor, setImportDir, setIndexDir, setInterfaces, setInterfaces, setIOInterface, setJavadocDir, setLang, setLastName, setLibsDir, setLogDebug, setLogDir, setLogDocument, setLogError, setLogFatal, setLogin, setLogInfo, setLogObject, setLogWarning, setMavenDir, setMaxRows, setMaxUploadSize, setMenu, setMinRows, setMobilePhoneNumber, setObjectParameter, setPanelCharMax, setPanelFilter, setParameter, setParameter, setPassword, setPicture, setProjectDir, setRailway, setRecycleBinDir, setRespList, setSessionId, setShortcuts, setShowNavigator, setSourcesDir, setSrcDir, setStatus, setSubPackage, setTimeZone, setTimeZoneID, setTmpDir, setTreeView, setUserId, setUserId, setUserModuleId, setUserUniqueId, setWebZones, setWindowTitle, showNavigator, T, T, T, toFormattedBoolean, toFormattedDate, toFormattedDatetime, toFormattedFloat, toFormattedFloat, toFormattedTime, toJSONObject, toServiceDate, toServiceDatetime, toServiceFloat, toServiceTime, toString, toString
-
-
-
-
Constructor Detail
-
Grant
public Grant()
Default constructor Using this constructor requires further initialization.
-
Grant
public Grant(java.lang.String login)
Constructor with default initialization (e.g. for usage within unit testing).- Parameters:
login
- Login
-
Grant
public Grant(java.lang.String login, java.lang.String sessionId, boolean web, int endpoint, boolean ws, java.lang.String scope, SessionInfo info)
Constructor with init- Parameters:
login
- User loginsessionId
- Unique session ID (can be ad hoc session ID or web application session ID)endpoint
- Endpoint (one of Gloabls.ENDPOINT_*)web
- True if the user has UI accessws
- True if the user has WebServices accessscope
- Optional requested scopeinfo
- Optional session info
-
-
Method Detail
-
getSession
public javax.servlet.http.HttpSession getSession()
Get session (if available)
-
setSession
public void setSession(javax.servlet.http.HttpSession session)
Set session
-
getSessionTimeout
public int getSessionTimeout()
Get session timeout (in seconds if available)
-
getSessionInfo
public SessionInfo getSessionInfo()
Get session info with AUTH information- Returns:
- Session info with optional attributes and groups
-
getSessionAttribute
public java.lang.Object getSessionAttribute(java.lang.String name, java.lang.Object def)
Get session attribute (if session is available)- Parameters:
name
- Namedef
- Default value
-
setSessionAttribute
public void setSessionAttribute(java.lang.String name, java.io.Serializable value)
Set session attribute (if session is available)- Parameters:
name
- Namevalue
- Value
-
getWebServicesFactory
public WebServicesFactory getWebServicesFactory(boolean create)
Get web services factory- Parameters:
create
- Create?- Returns:
- Web services factory
-
setWebServicesFactory
public void setWebServicesFactory(WebServicesFactory wsf)
Set webservices factory- Parameters:
wsf
- Web services factory
-
getAPI
@Deprecated public APITool getAPI(java.lang.String url, java.lang.String login, java.lang.String password, java.lang.String encoding) throws ParamsException, HTTPException
Deprecated.Use getAPI with debug parameter- Throws:
ParamsException
HTTPException
-
getAPI
public APITool getAPI(java.lang.String url, java.lang.String login, java.lang.String password, java.lang.String encoding, boolean debug) throws ParamsException, HTTPException
Get Simplicite API client- Parameters:
url
- Base URLlogin
- Loginpassword
- Passwordencoding
- Encodingdebug
- Debug mode?- Throws:
ParamsException
HTTPException
-
getContextPath
@Deprecated public java.lang.String getContextPath()
Deprecated.
-
setContextPath
@Deprecated public void setContextPath(java.lang.String contextPath)
Deprecated.
-
getContextURL
public java.lang.String getContextURL()
Get the web application URL- Returns:
- Context URL
-
setContextURL
public void setContextURL(java.lang.String url)
Set the web application URL- Parameters:
url
- Web application URL
-
getServerURL
public java.lang.String getServerURL()
Get server URL (context URL with context path removed)- Returns:
- Server URL
-
init
public void init(java.lang.String login, java.lang.String sessionId, int endpoint, boolean web, java.lang.String lang, Globals.InterfaceType interfaceType, java.lang.String scope, SessionInfo info)
Initialize user rights- Parameters:
login
- User loginsessionId
- Unique session ID (can be a dedicated session ID or the web application's session ID)endpoint
- End point (one of Globals.ENDPOINT_*)web
- Load web translations, texts, list of values, gadgets...lang
- user language (if null login language will be used)interfaceType
- Interface type or Globals property if nullscope
- Optional requested scopeinfo
- Optional session info
-
init
public void init(java.lang.String login, java.lang.String sessionId, int endpoint, boolean web, Globals.InterfaceType interfaceType, java.lang.String scope, SessionInfo info)
Initialize user rights in a specific interface type- Parameters:
login
- User loginsessionId
- Unique session ID (can be a dedicated session ID or the web application's session ID)endpoint
- End point (one of Globals.ENDPOINT_*)web
- Load web translations, texts, list of values, gadgets...interfaceType
- Interface type or Globals property if nullscope
- Optional requested scopeinfo
- Optional session info
-
init
public void init(java.lang.String login, java.lang.String sessionId, int endpoint, java.lang.String scope, SessionInfo info)
Initialize user rights with web full access- Parameters:
login
- User loginsessionId
- Unique session ID (can be ad hoc session ID or web application session ID)endpoint
- End point (one of Globals.ENDPOINT_*)scope
- Optional requested scopeinfo
- Optional user info
-
isTechnicalUser
public static boolean isTechnicalUser(java.lang.String login)
Is technical user- Parameters:
login
- Login- Returns:
- True if technical user
-
init
public boolean init(java.lang.String login, javax.servlet.http.HttpServletRequest request, int endpoint)
Initialize user rights- Parameters:
login
- User login for who rights are loadedrequest
- HTTP requestendpoint
- End point (one of Globals.ENDPOINT_*)- Returns:
- false if user is not active
-
reinit
public void reinit(java.lang.String login, java.lang.String sessionId, int endpoint, boolean web, java.lang.String scope, SessionInfo info)
Reinitialize user rights- Parameters:
login
- User loginsessionId
- Unique session ID (can be ad hoc session ID or web application session ID)scope
- Optional requested scopeinfo
- Optional session info
-
getSystemAdmin
public static Grant getSystemAdmin()
Singleton to use system objects with Local access
Be careful to use it in thread safe methods
or only to read parameters, or to execute direct SQL queries/updates- Returns:
- Admin user rights singleton
-
getAdmin
public static Grant getAdmin(Grant g)
Get the system rights in a specific session
Useful to update the system objects in isolated user session- Parameters:
g
- Grant including the session id- Returns:
- Admin user rights
-
getAdmin
public Grant getAdmin()
Get the system rights in a specific session
Useful to update the system objects in isolated user session (same as static method getAdmin(Grant g))- Returns:
- Admin user rights
-
getPublic
public static Grant getPublic()
Singleton to use public objects- Returns:
- Public user rights
-
isSystemUser
public static boolean isSystemUser(java.lang.String login)
Is system user?- Parameters:
login
- User login- Returns:
- True if user is system
-
isPublicUser
public static boolean isPublicUser(java.lang.String login)
Is public user?- Parameters:
login
- User login- Returns:
- True if user is public
-
isDesignerUser
public static boolean isDesignerUser(java.lang.String login)
Is designer user?- Parameters:
login
- User login- Returns:
- True if user is designer
-
getUserLogin
public static java.lang.String getUserLogin(java.lang.String userId)
Get user login for specified user ID- Parameters:
userId
- User ID- Returns:
- User login
-
getUserId
public static java.lang.String getUserId(java.lang.String login)
Returns user ID for specified login- Parameters:
login
- User login- Returns:
- User ID
-
getUserModuleId
public static java.lang.String getUserModuleId(java.lang.String login)
Returns module ID for specified login- Parameters:
login
- User login- Returns:
- User module ID
-
exists
public static boolean exists(java.lang.String login, boolean active)
Checks if a user exists for specified login- Parameters:
login
- User loginactive
- check if user is active- Returns:
- True if user exists (and is active if requested)
-
destroy
public void destroy()
To destroy properly a user session
-
getWorkingId
public java.lang.String getWorkingId()
Current working Id in table m_session
-
getWorkingTime
public long getWorkingTime()
Current working creation time
-
startWorking
public void startWorking()
Start working: update the last logon date in table m_user and create one history in m_session and/or log4j
-
stopWorking
public void stopWorking()
Stop working: set the duration in table m_session and/or log4j
-
getGroup
public GroupDB getGroup(java.lang.String group)
Group info- Parameters:
group
- Group name- Returns:
- Group structure if known
-
getOrganization
public java.util.List<java.lang.String> getOrganization(java.lang.String group)
Organization search- Parameters:
group
- Group name = Organization root- Returns:
- Search result containing the group and all children
-
getGroupParents
public java.util.List<java.lang.String> getGroupParents(java.lang.String group)
Parents group search- Parameters:
group
- Group name- Returns:
- Search result containing all parents
-
getGroupChildren
public java.util.List<java.lang.String> getGroupChildren(java.lang.String group)
Children group search- Parameters:
group
- Group name- Returns:
- Search result containing children
-
getGroupProfile
public java.util.List<java.lang.String> getGroupProfile(java.lang.String group)
Profile group search- Parameters:
group
- Group name- Returns:
- Search result containing all children
-
getObjectLocation
public java.lang.String getObjectLocation(java.lang.String name)
Get business object location- Parameters:
name
- Business object name- Returns:
- class location
-
getExternalObjectLocation
public java.lang.String getExternalObjectLocation(java.lang.String name)
Get external object location- Parameters:
name
- External object name- Returns:
- class location
-
query
public java.util.List<java.lang.String[]> query(java.lang.String query)
Database query using designated datasource- Parameters:
query
- SQL query- Returns:
- list of string array
-
query
public java.util.List<java.lang.String[]> query(java.lang.String datasource, java.lang.String query)
Database query using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query- Returns:
- list of string array
-
query
public java.util.List<java.lang.String[]> query(java.lang.String query, java.util.List<ObjectField> hosts)
Database query using default datasource- Parameters:
query
- SQL query with hosts valueshosts
- ObjectField list to set the hosts values in SQL query- Returns:
- list of string array
-
query
public java.util.List<java.lang.String[]> query(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> hosts)
Database query using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query with hosts valueshosts
- ObjectField list to set the hosts values in SQL query- Returns:
- list of string array
-
query
public java.util.List<java.lang.String[]> query(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> hosts, int limit)
Database query using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query with hosts valueshosts
- ObjectField list to set the hosts values in SQL querylimit
- Nb max rows to return (0 means no limit)- Returns:
- list of string array
-
queryWithHead
public java.util.List<java.lang.String[]> queryWithHead(java.lang.String query) throws java.sql.SQLException
Database query with column names using default datasource- Parameters:
query
- SQL query with hosts values- Returns:
- list of string array
- Throws:
java.sql.SQLException
-
queryWithHead
public java.util.List<java.lang.String[]> queryWithHead(java.lang.String query, java.util.List<ObjectField> host) throws java.lang.Exception
Database query with column names using default datasource- Parameters:
query
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL query- Returns:
- list of string array
- Throws:
java.lang.Exception
-
queryWithHead
public java.util.List<java.lang.String[]> queryWithHead(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host) throws java.sql.SQLException
Database query with column names using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL query- Returns:
- list of string array
- Throws:
java.sql.SQLException
-
queryWithHead
public java.util.List<java.lang.String[]> queryWithHead(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host, int limit) throws java.sql.SQLException
Database query with column names using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL querylimit
- Nb max rows to return (0 means no limit)- Returns:
- list of string array
- Throws:
java.sql.SQLException
-
simpleQuery
public java.lang.String simpleQuery(java.lang.String query)
Simple database query using default datasource- Parameters:
query
- SQL query- Returns:
- first column of the first record
-
simpleQuery
public java.lang.String simpleQuery(java.lang.String datasource, java.lang.String query)
Simple database query using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query- Returns:
- first column of the first record
-
simpleQuery
public java.lang.String simpleQuery(java.lang.String query, java.util.List<ObjectField> host)
Simple database query with hosts values using default datasource- Parameters:
query
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL query- Returns:
- first column of the first record
-
simpleQuery
public java.lang.String simpleQuery(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host)
Simple database query with hosts values using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL query- Returns:
- first column of the first record
-
simpleQuery
public java.lang.String simpleQuery(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host, boolean silent) throws java.sql.SQLException
Simple database query with hosts values using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL querysilent
- Silent mode (throws exception)?- Returns:
- first column of the first record
- Throws:
java.sql.SQLException
-
simpleQueryAsLong
public long simpleQueryAsLong(java.lang.String query)
Simple database query using default datasource, the result is parsed into long (typical usage is for count(*) queries)- Parameters:
query
- SQL query- Returns:
- first column of the first record as long
-
simpleQueryAsLong
public long simpleQueryAsLong(java.lang.String datasource, java.lang.String query)
Simple database query using designated datasource, the result is parsed into long (typical usage is for count(*) queries)- Parameters:
datasource
- Data source namequery
- SQL query- Returns:
- first column of the first record as long
-
simpleQueryAsLong
public long simpleQueryAsLong(java.lang.String query, java.util.List<ObjectField> host)
Simple database query using default datasource with hosts values, the result is parsed into long (typical usage is for count(*) queries)- Parameters:
query
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL query- Returns:
- first column of the first record as long
-
simpleQueryAsLong
public long simpleQueryAsLong(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host)
Simple database query using designated datasource with hosts values, the result is parsed into long (typical usage is for count(*) queries)- Parameters:
datasource
- Data source namequery
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL query- Returns:
- first column of the first record as long
-
simpleQueryAsDouble
public double simpleQueryAsDouble(java.lang.String query)
Simple database query using default datasource, the result is parsed into double (typical usage is for avg(), sum() queries)- Parameters:
query
- SQL query- Returns:
- first column of the first record as long
-
querySingleRow
public java.lang.String[] querySingleRow(java.lang.String query)
Single row database query using default datasource- Parameters:
query
- SQL query- Returns:
- String array or null if not found
-
querySingleRow
public java.lang.String[] querySingleRow(java.lang.String datasource, java.lang.String query)
Single row database query using designated datasource- Parameters:
datasource
- Data source namequery
- SQL query- Returns:
- String array or null if not found
-
querySingleRow
public final java.lang.String[] querySingleRow(java.lang.String query, java.util.List<ObjectField> host)
Single row database query with hosts values using default datasource- Parameters:
query
- SQL query with hosts valueshost
- ObjectField list to set the hosts values in SQL query- Returns:
- String array or null if not found
-
querySingleRow
public java.lang.String[] querySingleRow(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host)
Single row database query with hosts values using designated datasource- Parameters:
datasource
- Data-source name or nullquery
- SQL query (with hosts values or not)host
- ObjectField list to set the hosts values in SQL query (may be null)- Returns:
- String array or null if not found
-
queryFirstColumn
public java.lang.String[] queryFirstColumn(java.lang.String query)
Single column database query using default datasource- Parameters:
query
- SQL query- Returns:
- String array or null if not found
-
simpleBlob
public final java.io.InputStream simpleBlob(java.lang.String query)
Get a document- Parameters:
query
- SQL query (with hosts values or not)- Returns:
- stream or null
-
simpleBlob
public final java.io.InputStream simpleBlob(java.lang.String query, java.util.List<ObjectField> host, java.lang.String path)
Get a document- Parameters:
query
- SQL query (with hosts values or not)host
- ObjectField list to set the hosts values in SQL query (may be null)- Returns:
- stream or null
-
simpleBlob
public java.io.InputStream simpleBlob(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> host, java.lang.String path)
Get a document- Parameters:
datasource
- Data-source name or nullquery
- SQL query (with hosts values or not)host
- ObjectField list to set the hosts values in SQL query (may be null)path
- Optional path to DBDOC to stream file- Returns:
- stream or null
-
getMaxId
public final java.lang.String getMaxId(java.lang.String table)
Get the max standard row ID of a table using default datasource- Parameters:
table
- Table name- Returns:
- Max row ID
-
getMaxId
public java.lang.String getMaxId(java.lang.String datasource, java.lang.String table)
Get the max standard row ID of a table using designated datasource- Parameters:
datasource
- Data source nametable
- Table name- Returns:
- Max row ID
-
getMaxIdWhere
public final java.lang.String getMaxIdWhere(java.lang.String table, java.lang.String column, java.lang.String where)
Get the max custom row ID of a table using default datasource- Parameters:
table
- Table namecolumn
- Custom row ID column namewhere
- Where clause (or null for no where clause)- Returns:
- Max custom row ID
-
getMaxIdWhere
public java.lang.String getMaxIdWhere(java.lang.String datasource, java.lang.String table, java.lang.String column, java.lang.String where)
Get the max standard row ID of a table using designated datasource- Parameters:
datasource
- Data source nametable
- Table name- Returns:
- Max custom row ID
-
getNextIdForColumn
public java.lang.String getNextIdForColumn(java.lang.String table, java.lang.String column)
Get the next value of an ID column of a table using default datasource- Parameters:
table
- Table namecolumn
- Column name- Returns:
- Next ID
-
getNextIdForColumn
public java.lang.String getNextIdForColumn(java.lang.String datasource, java.lang.String table, java.lang.String column)
Get the next value of an ID column of a table using designated datasource- Parameters:
datasource
- Data source nametable
- Table namecolumn
- Column name- Returns:
- Next ID
-
getNextValueForColumnWhere
public java.lang.String getNextValueForColumnWhere(java.lang.String table, java.lang.String column, java.lang.String where)
Get the next value of an integer column of a table using designated datasource- Parameters:
table
- Table namecolumn
- Column namewhere
- Where clause (or null for no where clause)- Returns:
- Next value
-
getNextValueForColumnWhere
public java.lang.String getNextValueForColumnWhere(java.lang.String datasource, java.lang.String table, java.lang.String column, java.lang.String where)
Get the next value of an integer column of a table using designated datasource- Parameters:
datasource
- Data source nametable
- Table namecolumn
- Column namewhere
- Where clause (or null for no where clause)- Returns:
- Next value
-
now
@Deprecated public final java.lang.String now(int type)
Deprecated.Use Tool.getCurrentDate or getCurrentTime or detCurrentDatetime
-
getSystemParam
public java.lang.String getSystemParam(java.lang.String code)
Get the value of a global (persistent) system parameter It's usually a better practice to use getParameter for which all values are loaded once in the session, rather than this method which requests the datasource at each call.- Parameters:
code
- System parameter code
-
getSystemParam
public java.lang.String getSystemParam(java.lang.String code, java.lang.String defaultValue)
see getSystemParam- Parameters:
code
- System parameter codedefaultValue
- Default value if system parameter is unknown or empty
-
setSystemParam
public java.lang.String setSystemParam(java.lang.String code, java.lang.String value)
Set the value of a global (persistent) system parameter- Parameters:
code
- System parameter codevalue
- Value for specified system parameter (delete the parameter if empty)- Returns:
- System parameter Id
-
setSystemParam
@Deprecated public java.lang.String setSystemParam(java.lang.String code, java.lang.String value, boolean priv)
Deprecated.Use setSystemParam with additional parameters
-
setSystemParam
public java.lang.String setSystemParam(java.lang.String code, java.lang.String value, boolean priv, boolean clearcache)
Set the value of a global (persistent) system parameter- Parameters:
code
- System parameter codevalue
- Value for specified system parameter (delete the parameter if empty)priv
- Private parameter ?clearcache
- Partial clear cache for system parameter ?- Returns:
- System parameter Id
-
getNextSystemParamValue
public java.lang.String getNextSystemParamValue(java.lang.String code, java.text.Format fmt)
Get next value of a global (persistent) system parameter used as a sequence- Parameters:
code
- Code of the system parameter holding the sequencefmt
- Format (e.g. new DecimalFormat("ABC00000000"))- Returns:
- next value of system parameter as formatted string
-
getNextSystemParamValue
public long getNextSystemParamValue(java.lang.String code)
Get next value of a global (persistent) system parameter used as a sequence- Parameters:
code
- Code of the system parameter holding the sequence- Returns:
- next value of system parameter as long
-
getDBVendor
public int getDBVendor()
Get the DB vendor of default datasource
-
getDBVendor
public int getDBVendor(java.lang.String datasource)
Get the DB vendor of designated datasource- Parameters:
datasource
- Data source name
-
getDBVendorName
public java.lang.String getDBVendorName()
Get the DB vendor name of default datasource
-
getDBVendorName
public java.lang.String getDBVendorName(java.lang.String datasource)
Get the DB vendor name of designated datasource- Parameters:
datasource
- Data source name
-
getDBMetaData
public java.sql.DatabaseMetaData getDBMetaData()
Get the DB metadata of default datasource
-
getDBMetaData
public java.sql.DatabaseMetaData getDBMetaData(java.lang.String datasource)
Get the DB metadata of designated datasource- Parameters:
datasource
- Data source name
-
getDBOracleAliasLength
public int getDBOracleAliasLength()
Get Oracle alias length of default datasource- Returns:
- Oracle alias length
-
getDBOracleAliasLength
public int getDBOracleAliasLength(java.lang.String datasource)
Get Oracle alias length of designated data source.- Parameters:
datasource
- Data source name- Returns:
- Oracle alias length
-
getDBInfo
public java.lang.String getDBInfo()
Get the DB information (product name and version) of default datasource
-
getDBInfo
public java.lang.String getDBInfo(java.lang.String datasource)
Get the DB information (product name and version) of designated datasource- Parameters:
datasource
- Data source name
-
getNow
@Deprecated public final java.lang.String getNow()
Deprecated.Use getDBNow
-
getDBDate
public java.lang.String getDBDate()
Get the DB current date of default datasource
-
getDBDate
public java.lang.String getDBDate(java.lang.String datasource)
Get the DB current date of designated datasource- Parameters:
datasource
- Data source name
-
getDBNow
public java.lang.String getDBNow()
Get the DB syntax of default datasource to retrieve the current date- Returns:
- sysdate, now(), currenttimestamp...
-
getDBNow
public java.lang.String getDBNow(java.lang.String datasource)
Get the DB syntax of designated datasource to retrieve the current date- Parameters:
datasource
- Data source name- Returns:
- sysdate, now(), currenttimestamp...
-
getDBColumnType
public java.lang.String getDBColumnType(int type, int size, int prec)
Get database column type from field type, size and precision- Parameters:
type
- Field type (one of ObjectField.TYPE_*)size
- Sizeprec
- Precision
-
getDBColumnType
public java.lang.String getDBColumnType(java.lang.String datasource, int type, int size, int prec)
Get database column type from field type, size and precision- Parameters:
datasource
- Datasourcetype
- Field type (one of ObjectField.TYPE_*)size
- Sizeprec
- Precision
-
getDBToDate
public java.lang.String getDBToDate(java.lang.String date)
Get a date statement in a DB format for default datasource- Parameters:
date
- yyyy-MM-dd- Returns:
- db format
-
getDBToDate
public java.lang.String getDBToDate(java.lang.String datasource, java.lang.String date)
Get a date statement in a DB format for designated datasource- Parameters:
datasource
- Data source namedate
- yyyy-MM-dd- Returns:
- db format
-
getDBToTime
public java.lang.String getDBToTime(java.lang.String time)
Get a time statement in a DB format for default datasource- Parameters:
time
- HH:mm:ss- Returns:
- db format
-
getDBToTime
public java.lang.String getDBToTime(java.lang.String datasource, java.lang.String time)
Get a time statement in a DB format for designated datasource- Parameters:
datasource
- Data source nametime
- HH:mm:ss- Returns:
- db format
-
getDBToDatetime
public java.lang.String getDBToDatetime(java.lang.String datetime)
Get a datetime statement in a DB format for default datasource- Parameters:
datetime
- yyyy-MM-dd HH:mm:ss- Returns:
- db format
-
getDBToDatetime
public java.lang.String getDBToDatetime(java.lang.String datasource, java.lang.String datetime)
Get a datetime statement in a DB format for designated datasource- Parameters:
datasource
- Data source namedatetime
- yyyy-MM-dd HH:mm:ss- Returns:
- db format
-
getDBConcat
public java.lang.String getDBConcat(java.lang.String str1, java.lang.String str2)
Get string concatenation using DB syntax of default datasource (ex: concat mysql- Parameters:
str1
- First DB string to concatstr2
- Second DB string to concat
-
getDBConcat
public java.lang.String getDBConcat(java.lang.String datasource, java.lang.String str1, java.lang.String str2)
Get string concatenation using DB syntax of designated datasource (ex: concat mysql)- Parameters:
datasource
- Data source namestr1
- First DB string to concatstr2
- Second DB string to concat
-
update
public int update(java.lang.String query)
SQL update in database using default datasource- Parameters:
query
- SQL insert/update/delete query- Returns:
- negative if an error occurs
-
update
public int update(java.lang.String datasource, java.lang.String query)
SQL update in database using designated datasource- Parameters:
datasource
- Data source namequery
- SQL insert/update/delete query- Returns:
- negative if an error occurs
-
update
public int update(java.lang.String query, java.util.List<ObjectField> hosts)
SQL update in database using default datasource with hosts values- Parameters:
query
- SQL insert/update/delete queryhosts
- ObjectField list- Returns:
- negative if an error occurs
-
update
public int update(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> hosts)
SQL update in database using designated datasource with hosts values- Parameters:
datasource
- Data source namequery
- SQL insert/update/delete queryhosts
- ObjectField list- Returns:
- negative if an error occurs
-
update
public int update(java.lang.String datasource, java.lang.String query, java.util.List<ObjectField> hosts, boolean silent) throws java.sql.SQLException
SQL update in database using designated datasource with hosts values- Parameters:
datasource
- Data source namequery
- SQL insert/update/delete queryhosts
- ObjectField listsilent
- Silent mode (throw exception)- Returns:
- negative if an error occurs
- Throws:
java.sql.SQLException
-
updateAll
public int updateAll(java.util.List<java.lang.String> queries)
SQL transactional updates in database using default datasource- Parameters:
queries
- ordered insert/update/delete queries- Returns:
- negative if an error occurs
-
updateAll
public int updateAll(java.lang.String datasource, java.util.List<java.lang.String> queries)
SQL transactional updates in database using designated datasource- Parameters:
datasource
- Data source namequeries
- ordered insert/update/delete queries- Returns:
- negative if an error occurs
-
callProcedure
public boolean callProcedure(java.lang.String datasource, java.lang.String procedure, java.util.List<ObjectField> params)
Call a stored procedure- Parameters:
datasource
- Data source nameprocedure
- Procedure nameparams
- optional IN parameters (OUT not supported)- Returns:
- success or not
-
updateBlob
public int updateBlob(java.lang.String query, byte[] data, java.io.InputStream src)
Update a document- Parameters:
query
- SQL update query with a single host '?'data
- documentsrc
- or source file
-
updateBlob
public int updateBlob(java.lang.String datasource, java.lang.String query, byte[] data, java.io.InputStream src)
Update a document- Parameters:
datasource
- Data source namequery
- SQL update query with a single host variable '?'data
- documentsrc
- or source file
-
checkTable
public boolean checkTable(java.lang.String table)
Checks if a table exists in default datasource- Parameters:
table
- Table
-
checkTable
public boolean checkTable(java.lang.String datasource, java.lang.String table)
Checks if a table exists in designated datasource- Parameters:
datasource
- Data source name
-
checkColumn
public boolean checkColumn(java.lang.String table, java.lang.String column)
Checks if the specified column exists in the specified table of default datasource- Parameters:
table
- Tablecolumn
- Column
-
checkColumn
public boolean checkColumn(java.lang.String datasource, java.lang.String table, java.lang.String column)
Checks if the specified column exists in the specified table of designated datasource- Parameters:
datasource
- Data source nametable
- Tablecolumn
- Column
-
createTable
public int createTable(java.lang.String table, ObjectField rowIdField)
Create table with optional custom row ID field- Parameters:
table
- Table namerowIdField
- Optional custom row ID field (if null standard row ID field will be used)- Returns:
- Update status
-
createTable
public int createTable(java.lang.String datasource, java.lang.String table, ObjectField rowIdField)
Create table with optional custom row ID field in specified datasource- Parameters:
datasource
- Data source nametable
- Table namerowIdField
- Optional custom row ID field (if null standard row ID field will be used)- Returns:
- Update status
-
renameTable
public int renameTable(java.lang.String oldname, java.lang.String newname)
Rename table- Parameters:
oldname
- Old table namenewname
- New table name- Returns:
- Update status
-
renameTable
public int renameTable(java.lang.String datasource, java.lang.String oldname, java.lang.String newname)
Rename table of designated datasource- Parameters:
datasource
- Data source nameoldname
- Old table namenewname
- New table name- Returns:
- Update status
-
addColumn
public int addColumn(java.lang.String table, java.lang.String column, int type, int size, int prec)
Add a column to a table of default datasource- Parameters:
table
- Table namecolumn
- Column nametype
- Field type (one of ObjectField.TYPE_*)size
- Sizeprec
- Precision
-
addColumn
public int addColumn(java.lang.String datasource, java.lang.String table, java.lang.String column, int type, int size, int prec)
Add a column to a table of designated datasource- Parameters:
datasource
- Datasourcetable
- Table namecolumn
- Column nametype
- Field type (one of ObjectField.TYPE_*)size
- Sizeprec
- Precision
-
changeColumn
public int changeColumn(java.lang.String table, java.lang.String oldcolumn, java.lang.String newcolumn, int type, int size, int prec)
Change a column in a table of designated datasource- Parameters:
table
- Table nameoldcolumn
- Old column namenewcolumn
- New column nametype
- Field type (one of ObjectField.TYPE_*)size
- Sizeprec
- Precision
-
changeColumn
public int changeColumn(java.lang.String datasource, java.lang.String table, java.lang.String oldcolumn, java.lang.String newcolumn, int type, int size, int prec)
Change a column in a table of designated datasource- Parameters:
datasource
- Datasourcetable
- Table nameoldcolumn
- Old column namenewcolumn
- New column nametype
- Field type (one of ObjectField.TYPE_*)size
- Sizeprec
- Precision
-
createIndex
public final java.lang.String createIndex(java.lang.String datasource, java.lang.String table, java.lang.String indexName, java.lang.String column) throws java.sql.SQLException
Create a non-unique DB index on single column- Parameters:
datasource
- Data source nametable
- TableindexName
- Index namecolumn
- Column- Throws:
java.sql.SQLException
-
createIndex
public java.lang.String createIndex(java.lang.String datasource, java.lang.String table, java.lang.String indexName, java.util.List<java.lang.String> columns, boolean uniq) throws java.sql.SQLException
Create a DB index- Parameters:
datasource
- Data source nametable
- TableindexName
- Index namecolumns
- Columnsuniq
- Unique?- Throws:
java.sql.SQLException
-
dropIndex
public java.lang.String dropIndex(java.lang.String datasource, java.lang.String table, java.lang.String indexName) throws java.sql.SQLException
Drop a DB index- Parameters:
datasource
- Data source nametable
- TableindexName
- Index name- Throws:
java.sql.SQLException
-
createForeignKeyConstraint
public java.lang.String createForeignKeyConstraint(java.lang.String datasource, java.lang.String table, java.lang.String constraintName, java.lang.String fkColumn, java.lang.String refTable, java.lang.String refColumn) throws java.sql.SQLException
Create a DB foreign key constraint- Parameters:
datasource
- Data source nametable
- TableconstraintName
- Constraint namefkColumn
- Foreign key columnrefTable
- Foreign key referenced tablerefColumn
- Foreign key referenced column- Throws:
java.sql.SQLException
-
dropForeignKeyConstraint
public java.lang.String dropForeignKeyConstraint(java.lang.String datasource, java.lang.String table, java.lang.String constraintName) throws java.sql.SQLException
Drop a DB foreign key constraint- Parameters:
datasource
- Data source nametable
- TableconstraintName
- Constraint name- Throws:
java.sql.SQLException
-
getProcessus
public Processus getProcessus(java.lang.String name, java.lang.String pid)
Gets the specified business process definition instance- Parameters:
name
- Process namepid
- Optional PID- Returns:
- Business process instance
-
createProcessus
public final Processus createProcessus(java.lang.String name)
Create a business process with a new PID- Parameters:
name
- Process name- Returns:
- Business process instance
-
getField
public final ObjectField getField(java.lang.String name)
Gets the specified business field definition- Parameters:
name
- Field name- Returns:
- Business field instance
-
getField
public ObjectField getField(java.lang.String name, ObjectField f, boolean cache)
Gets the specified business field definition- Parameters:
name
- Field namef
- Optional field (to load into this instance)cache
- Cache the field definition or not- Returns:
- Business field instance
-
loadAction
public Action loadAction(java.lang.String actionIdOrName)
Gets the specified business action definition- Parameters:
actionIdOrName
- Action id or name
-
getObjectInstances
public final java.util.List<ObjectDB> getObjectInstances()
List all objects instantiated for the user- Returns:
- a list of objects
-
getObjectInstances
public final java.util.List<ObjectDB> getObjectInstances(java.lang.String name)
List all objects instantiated for the user- Parameters:
name
- optional object name- Returns:
- a list of objects
-
getObjectInstances
public java.util.List<ObjectDB> getObjectInstances(java.lang.String name, java.lang.String param, java.lang.String value)
List objects instantiated for the user and/or containing a parameter- Parameters:
name
- optional object nameparam
- optional parameter namevalue
- optional parameter value- Returns:
- a list of objets
-
getObject
public ObjectDB getObject(java.lang.String instance, java.lang.String name)
Gets the specified business object definition instance- Parameters:
instance
- Instance namename
- Object name- Returns:
- Business object instance
-
getExternalObject
public ExternalObject getExternalObject(java.lang.String name)
Gets the specified external object definition- Parameters:
name
- External object name- Returns:
- External object
-
getMainObject
public ObjectDB getMainObject(java.lang.String name)
Gets the main business object definition instance (instance name is the_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object main instance
-
getPanelObject
public ObjectDB getPanelObject(java.lang.String name, java.lang.String refField)
Gets the panel business object definition instance (instance name is panel_[ajax_]<object name>_<ref name>)- Parameters:
name
- Object namerefField
- Reference field name- Returns:
- Business object panel instance
-
getPanelObject
@Deprecated public final ObjectDB getPanelObject(java.lang.String name)
Deprecated.Use getPanelObject(name, refField)
-
getRefObject
public ObjectDB getRefObject(java.lang.String name)
Gets the reference business object definition instance (instance name is ref_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object ref instance
-
getDataMapObject
public ObjectDB getDataMapObject(java.lang.String name)
Gets the datamap business object definition instance (instance name is datamap_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object datamap instance
-
getHomeObject
public ObjectDB getHomeObject(java.lang.String name)
Gets the home business object definition instance (instance name is home_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object home instance
-
getBatchObject
public ObjectDB getBatchObject(java.lang.String name)
Gets the batch business object definition instance (instance name is eai_<object name>)- Parameters:
name
- Object name- Returns:
- Business object batch instance
-
getWebServiceObject
public ObjectDB getWebServiceObject(java.lang.String name)
Gets the web service business object definition instance (instance name is ws_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object WS instance
-
getAjaxObject
public ObjectDB getAjaxObject(java.lang.String name)
Gets the main Ajax business object definition instance (instance name is the_ajax_<object name>)- Parameters:
name
- Object name- Returns:
- Business object AJAX instance
-
getTmpObject
public ObjectDB getTmpObject(java.lang.String name)
Gets the temporary business object definition instance (instance name is tmp_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object tmp instance
-
getIsolatedObject
public ObjectDB getIsolatedObject(java.lang.String name)
Gets a memory isolated business object definition instance (instance name is tmp_<object name>_<timestamp>)
Beware, the Object GC cron must run to clean periodically the instances- Parameters:
name
- Object name- Returns:
- Business object tmp instance
-
getProcessObject
public ObjectDB getProcessObject(java.lang.String name)
Gets the process business object definition instance (instance name is bpm_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object bpm instance
-
getJobObject
public ObjectDB getJobObject(java.lang.String name)
Gets the job business object definition instance (instance name is job_<object name>)- Parameters:
name
- Object name- Returns:
- Business object job instance
-
getCronObject
public ObjectDB getCronObject(java.lang.String name)
Gets the cron business object definition instance (instance name is cron_<object name>)- Parameters:
name
- Object name- Returns:
- Business object cron instance
-
getTreeviewObject
public ObjectDB getTreeviewObject(java.lang.String tree, java.lang.String name)
Gets the treeview object definition instance (instance name is tree_[ajax_]<tree name>_<object name>)- Parameters:
tree
- Tree namename
- Object name- Returns:
- Business object treeview instance
-
getAgendaObject
public ObjectDB getAgendaObject(java.lang.String name)
Gets the agenda object definition instance (instance name is agenda_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object agenda instance
-
getModelObject
public ObjectDB getModelObject(java.lang.String name)
Gets the modeler object definition instance (instance name is model_[ajax_]<object name>)- Parameters:
name
- Object name- Returns:
- Business object instance
-
getObjectLabel
public java.lang.String getObjectLabel(java.lang.String name)
Object label in user language- Parameters:
name
- Object name- Returns:
- Object label
-
getObjectLabel
public java.lang.String getObjectLabel(java.lang.String name, boolean plural)
Object label in user language- Parameters:
name
- Object nameplural
- plural if exists- Returns:
- Object label
-
clearCache
@Deprecated public void clearCache(boolean memory, boolean core, int preCompile)
Deprecated.Use clearCache with cron argument
-
clearCache
public void clearCache(boolean memory, boolean core, boolean cron, int preCompile)
Clears all caches- Parameters:
memory
- Memory?core
- Core?cron
- (Re)start cron?preCompile
- Pre-compile?
-
getCacheInfo
public int[] getCacheInfo()
Get cache info: current and max size of objects and grants- Returns:
- Ccahe size info
-
clearCache
public void clearCache(java.lang.String login)
Clears specified user's cache- Parameters:
login
- User login
-
clearCache
public void clearCache(java.lang.String object, java.lang.String instance)
Clears specified business object's cache (optionally restricted to specified instance) from all users- Parameters:
object
- Object nameinstance
- Optional object instance name (null means all instances of the object)
-
clearCacheSession
public void clearCacheSession()
Clears session cache
-
loadLogEvent
public void loadLogEvent()
(Re)loads log events
-
loadDisposition
public void loadDisposition(java.lang.String disp)
(Re)loads disposition
-
loadShortcuts
public void loadShortcuts()
(Re)loads shortcuts
-
loadWebZones
public void loadWebZones()
(Re)loads web zones
-
loadResources
public void loadResources(java.lang.String obj, java.lang.String objId)
(Re)loads resources
-
loadPredefinedSearches
public void loadPredefinedSearches(java.lang.String object)
(Re)loads predefined searches- Parameters:
object
- optional object name (all if null)
-
prepareExpression
public java.lang.String prepareExpression(java.lang.String content) throws ScriptException
Prepare an expression by processing token substitutions: (see prepareExpression for details on tokens)- Overrides:
prepareExpression
in classGrantCore
- Parameters:
content
- Script, template or expression including tokens to substitute- Throws:
ScriptException
-
prepareExpression
public java.lang.String prepareExpression(java.lang.String content, java.lang.String sep, boolean inlineValues, boolean front) throws ScriptException
Prepare an expression by processing token substitutions:
- URL substitutions (see HTMLTool.prepareURLs for details)
- [NOW] (deprecated) or [DATE[:day offset]] : current date in service format yyyy-MM-dd (with optional day offset)
- [TIME[:millisecond offset]] : current time in internal format hh:mm:ss (with optional millisecond offset)
- [DATETIME[:millisecond offset]] : current datetime in service format yyyy-MM-dd HH:mm:ss (with optional millisecond offset)
- [MONTH] : current month in format MM
- [WEEK] : current week in format WW
- [LOV:<list name>:<code>] or [LISTVALUE:<list name>:<code>] : value of a list of values code
- [TEXT:<code>] : static text in user language
- [OBJECT:<object name>[:<object instance name>]] : the specified object (by default it uses temporary instance)
NB : It first calls GrantCore.prepareExpression()- Overrides:
prepareExpression
in classGrantCore
- Parameters:
content
- Script, template or expression including tokens to substitutesep
- separator for StringinlineValues
- Replace with explicit value or with API. Ex: [LOGIN] will be replaced with explicit user login, or replaced by obj.getGrant().getLogin()- Returns:
- Prepared expression
- Throws:
ScriptException
-
prepareSQL
public java.lang.String prepareSQL(java.lang.String sql)
Prepares a SQL statement applying following token substitutions:
- [now] : current date (in appropriate format for target database)
- [userid] : user ID
- [login] : user login
- [<lov>:<code>] : List of values value for code (surrounded by SQL quotes)
NB : It first calls GrantCore.prepareSQL()- Overrides:
prepareSQL
in classGrantCore
- Parameters:
sql
- SQL including tokens to substitute- Returns:
- Prepared SQL statement
-
clearListOfValuesCache
public void clearListOfValuesCache()
Clears all lists of values from cache
-
clearListOfValuesCache
public void clearListOfValuesCache(java.lang.String name)
Clears specified list of values from cache- Parameters:
name
- List of values name
-
loadListOfValues
public ListOfValuesData loadListOfValues(ListOfValues lov, java.lang.String lang, java.lang.String name)
Loads specified list of values with values in specified language. This method should not be used for common needs, the getListOfvalues() method should be used instead.- Parameters:
lov
- List of values container to usename
- List of values name
-
getListOfValues
public ListOfValues getListOfValues(java.lang.String name)
Get list for specified name
-
getLangsCodes
public java.lang.String[] getLangsCodes()
Shorthand that returns all available languages codes from the LANG list of values
-
getLangsValues
public java.lang.String[] getLangsValues()
Shorthand that returns all available languages values from the LANG list of values
-
getListOfValuesValue
public java.lang.String getListOfValuesValue(java.lang.String name, java.lang.String code)
Shorthand that returns display value from the specified list of values fro the specified code
-
getLang_ISO_639_1
public java.lang.String getLang_ISO_639_1(java.lang.String lang)
Get the ISO639-1 code for specified language
-
getLang_ISO_639_1
public java.lang.String getLang_ISO_639_1()
Get the ISO639-1 code user language
-
getEndpoint
public int getEndpoint()
Get endpoint (UI, API, I/O, Git)- Returns:
- One of Globals.ENDPOINT_*
-
isSystemEndpoint
public boolean isSystemEndpoint()
Is on the system endpoint?- Returns:
- True if on the system endpoint
-
isUIEndpoint
public boolean isUIEndpoint()
Is on the UI endpoint?- Returns:
- True if on the UI endpoint
-
isUIPublicEndpoint
public boolean isUIPublicEndpoint()
Is on the UI public endpoint?- Returns:
- True if on the UI public endpoint
-
isAPIEndpoint
public boolean isAPIEndpoint()
Is on the API endpoint?- Returns:
- True if on the API endpoint
-
isIOEndpoint
public boolean isIOEndpoint()
Is on the I/O endpoint?- Returns:
- True if on the I/O endpoint
-
isGitEndpoint
public boolean isGitEndpoint()
Is on the Git endpoint?- Returns:
- True if on the Git endpoint
-
isCronEndpoint
public boolean isCronEndpoint()
Is on the cron table endpoint?- Returns:
- True if on the cron table endpoint
-
loadListOfValues
public ListOfValuesData loadListOfValues(ListOfValues lov, java.lang.String name, java.lang.String datasource, java.lang.String sql)
Loads specified list of values from a dedicated SQL statement (on specified datasource). This method should not be used for common needs, the getListOfvalues() method should be used instead.- Parameters:
lov
- List of values container to usename
- List of values namedatasource
- Data source name (null means default datasource)sql
- SQL statement
-
getListOfValues
public ListOfValues getListOfValues(java.lang.String name, java.lang.String sql)
Get list for specified name and SQL statement
-
getListOfValues
public ListOfValues getListOfValues(java.lang.String name, java.lang.String datasource, java.lang.String sql)
Get list for specified name and SQL statement on specified datasource
-
getListOfValuesCode
public java.lang.String getListOfValuesCode(java.lang.String name, java.lang.String value, java.lang.String lang)
Get the corresponding code from a list of values that matches a specified value (with a like value% operator)- Parameters:
name
- List of values namevalue
- Value to searchlang
- Language of value- Returns:
- Code for value in the list of values
-
getLinkedListsOfValues
public java.util.Map<java.lang.String,ObjectFieldList.ListLink> getLinkedListsOfValues(ObjectDB obj, ObjectFieldList flist)
Returns linked lists for a contextual list field in an object- Parameters:
obj
- Objectflist
- Contextual list field
-
registerMetaObjectField
public void registerMetaObjectField(java.lang.String object, java.lang.String field)
Register a meta-object field- Parameters:
object
- Object containing the object fieldfield
- TYPE_OBJECT field
-
getMetaObjectFields
public java.util.List<java.lang.String> getMetaObjectFields()
Get the all Meta-object fields- Returns:
- list of object:inputs
-
updateMetaObjects
public java.util.List<java.lang.String> updateMetaObjects(java.lang.String oldObject, java.lang.String oldRowId, java.lang.String newObject, java.lang.String newRowId, boolean deleted, boolean checkOnly)
Update meta-object fields- Parameters:
oldObject
- Old object nameoldRowId
- Old row ID of the updated elementnewObject
- New object namenewRowId
- New row ID of the updated elementdeleted
- Row ID has been deleted ?checkOnly
- true to check if update is allowed- Returns:
- errors or null
-
isCronStarted
public boolean isCronStarted()
Start cron table
-
startCron
public boolean startCron(boolean lock)
Start cron table- Parameters:
lock
- true to unlock anyway and to lock with this platform- Returns:
- false if cron could not be started (or was already started)
-
stopCron
public boolean stopCron(boolean unlock)
Stop cron table- Parameters:
unlock
- true to unlock if the cron has been launched by this platform- Returns:
- false if cron could not be stopped (or was already stopped)
-
getView
public View getView(java.lang.String name)
Get a view definition- Parameters:
name
- View name- Returns:
- View or null if not exists
-
changeScope
public boolean changeScope(java.lang.String view)
Change the user home page + disposition + responsibilities- Parameters:
view
- new Home name or null to restore rights- Returns:
- true on success
-
getUserSystemParam
public java.lang.String getUserSystemParam(java.lang.String login, java.lang.String param)
Get a user's system parameter- Parameters:
login
- User loginparam
- Parameter name- Returns:
- Parameter value if it exists
-
setUserSystemParam
public void setUserSystemParam(java.lang.String login, java.lang.String param, java.lang.String value, boolean resetCache)
Upsert a user's system parameter- Parameters:
login
- User loginparam
- Parameter namevalue
- Parameter valueresetCache
- true to clear the user cache
-
removeUserSystemParam
public void removeUserSystemParam(java.lang.String login, java.lang.String param, boolean resetCache)
Delete a user's system parameter- Parameters:
login
- User loginparam
- Parameter nameresetCache
- true to clear the user cache
-
setRespEnable
public void setRespEnable(java.lang.String login, java.lang.String group, boolean enabled, boolean resetCache)
Enable a user responsibility (update the end date)- Parameters:
login
- User logingroup
- Group nameenabled
- true to set the end date to null, or false to set the end date to yesterdayresetCache
- true to clear the user cache
-
getPreferenceList
public Preference getPreferenceList(java.lang.String object)
Parse the LIST_PREFS- Parameters:
object
- Object name- Returns:
- List preference
-
setPreferenceList
public void setPreferenceList(java.lang.String object, java.lang.String data)
Store List preference- Parameters:
object
- Object namedata
- List of Fields to display
-
getPreferenceSearch
public Preference getPreferenceSearch(java.lang.String object)
Parse the SEARCH_PREFS- Parameters:
object
- Object name- Returns:
- Search preference
-
setPreferenceSearch
public void setPreferenceSearch(java.lang.String object, java.lang.String data)
Store Search preference- Parameters:
object
- Object namedata
- List of Fields to display
-
getPreferenceAction
public Preference getPreferenceAction(java.lang.String object)
Parse the ACTION_PREFS- Parameters:
object
- Object name- Returns:
- Action preference
-
setPreferenceAction
public void setPreferenceAction(java.lang.String object, java.lang.String data)
Store Actions preference- Parameters:
object
- Object namedata
- List of Actions to display
-
getPreferenceExtra
public Preference getPreferenceExtra()
Parse the EXTRA_PREFS- Returns:
- Extra preference
-
setPreferenceExtra
public void setPreferenceExtra(java.lang.String data)
Store Extra gadgets preference- Parameters:
data
- List of gadgets to display
-
getPreferenceShortcut
public Preference getPreferenceShortcut()
List visible shortcuts
-
setPreference
@Deprecated public void setPreference(java.lang.String param, java.lang.String target, java.lang.String prefs)
Deprecated.
-
beginTransaction
public final void beginTransaction()
Start a transaction
-
beginTransaction
public void beginTransaction(java.lang.String datasource)
Start a transaction
-
commitTransaction
public final void commitTransaction()
Commit and close the transaction
-
commitTransaction
public void commitTransaction(java.lang.String datasource)
Commit and close the transaction
-
rollbackTransaction
public void rollbackTransaction()
Rollback and close the transaction
-
rollbackTransaction
public void rollbackTransaction(java.lang.String datasource)
Rollback and close the transaction
-
addResponsibility
public static boolean addResponsibility(java.lang.String userId, java.lang.String groupName, java.lang.String startDate, java.lang.String endDate, boolean active, java.lang.String module)
Add responsibility for the user- Parameters:
userId
- user IdgroupName
- Group namestartDate
- Start date (internal format) for responsibility (today if null)endDate
- End date (internal format) for responsibility (can be null)active
- is enabled ?module
- Optional module name- Returns:
- True if responsibility was sucessfully added
-
addResponsibility
public static boolean addResponsibility(java.lang.String userId, java.lang.String groupName)
Add responsibility for the user (active, with current date as start date, no end date, using same module as the user)- Parameters:
userId
- user IdgroupName
- Group name- Returns:
- True if responsibility was sucessfully added
-
addResponsibility
public boolean addResponsibility(java.lang.String groupName, java.lang.String startDate, java.lang.String endDate, boolean active, java.lang.String module)
Add responsibility for the user- Parameters:
groupName
- Group namestartDate
- Start date (yyyy-MM-dd or null=today)endDate
- End date (yyyy-MM-dd or can be null)active
- is enabled ?module
- Module name- Returns:
- True if responsibility was sucessfully added
-
addResponsibility
public boolean addResponsibility(java.lang.String groupName)
Add responsibility for the user (active, with current date as start date, no end date, using same module as the user)- Parameters:
groupName
- Group name- Returns:
- True if responsibility was sucessfully added
-
removeResponsibility
public static boolean removeResponsibility(java.lang.String userId, java.lang.String groupName)
Remove responsibility for the user- Parameters:
userId
- user IdgroupName
- Group name- Returns:
- True if responsibility was sucessfully removed
-
removeResponsibility
public boolean removeResponsibility(java.lang.String groupName)
Remove responsibility for the user- Parameters:
groupName
- Group name- Returns:
- True if responsibility was sucessfully removed
-
changePassword
@Deprecated public java.lang.String changePassword(java.lang.String login, java.lang.String password, boolean forceChange)
Deprecated.Use changePassword with addtional arguments
-
changePassword
public java.lang.String changePassword(java.lang.String login, java.lang.String password, boolean validate, boolean forceChange)
Change password for specified login- Parameters:
login
- Login (if empty current user login is used)password
- Password (if empty random password is used)validate
- Validate password ?forceChange
- Force password change?- Returns:
- Plain text password
-
isResponsive
public boolean isResponsive()
Is user on responsive UI ?
-
isMobile
@Deprecated public boolean isMobile()
Deprecated.Use isResponsive
-
getUserAgent
public java.lang.String getUserAgent()
Get browser user-agent
-
getPictureURL
public java.lang.String getPictureURL()
Get user picture URL
-
getPictureThumbnailURL
public java.lang.String getPictureThumbnailURL()
Get user picture thumbnail URL
-
getNavigator
public Navigator getNavigator()
Get navigator- Returns:
- Navigator
-
setDirectScope
public java.lang.String setDirectScope(java.lang.String url, java.lang.String scope, java.lang.Boolean mobile)
Manage direct, mobile and scope access- Parameters:
url
- Direct URLscope
- Scope URLmobile
- Mobile usage ?- Returns:
- Work URL
-
getTranslateId
public static java.lang.String getTranslateId(char type, java.lang.String rowId, java.lang.String lang)
Get translation row ID- Parameters:
type
- Translation typerowId
- Target row IDlang
- Language- Returns:
- Row ID of translation
-
getTranslateFieldId
public static java.lang.String getTranslateFieldId(java.lang.String rowId, java.lang.String lang)
Get field translation row ID- Parameters:
rowId
- Field row IDlang
- Language- Returns:
- Row ID of field translation
-
getTranslateObjectId
public static java.lang.String getTranslateObjectId(java.lang.String rowId, java.lang.String lang)
Get business object translation row ID- Parameters:
rowId
- Business object row IDlang
- Language- Returns:
- Row ID of business object translation
-
getTranslateProcessId
public static java.lang.String getTranslateProcessId(java.lang.String rowId, java.lang.String lang)
Get business process translation row ID- Parameters:
rowId
- Business process row IDlang
- Language- Returns:
- Row ID of business object translation
-
getTranslateExternalId
public static java.lang.String getTranslateExternalId(java.lang.String rowId, java.lang.String lang)
Get external object translation row ID- Parameters:
rowId
- External object row IDlang
- Language- Returns:
- Row ID of external object translation
-
setUserFilters
public void setUserFilters(UserSessionFilters uf)
Assign global filters to user's session- Parameters:
uf
- User filters
-
getUserFilters
public UserSessionFilters getUserFilters()
Get global filters of user's session
-
toJSONObject
public org.json.JSONObject toJSONObject(boolean resps, boolean sysparams)
To JSON object- Overrides:
toJSONObject
in classGrantCore
- Parameters:
resps
- Responsibilities?sysparams
- System parameters?- Returns:
- grant as JSON object
-
-