jet.server.api.rmi.admin.cfg
Interface RemoteConfigurationAdvanced

All Superinterfaces:
java.rmi.Remote

public interface RemoteConfigurationAdvanced
extends java.rmi.Remote

The RemoteConfigurationAdvanced interface defines methods to configure advanced setting of JReport Server via RMI, including user session timeout, view report timeout, etc. This is an RMI-based interface, invocation on the method of this interface will bring an RMI call on the associated JReport Server.

Since:
version 6

Method Summary
 int getAdminPort()
          Deprecated. Since V8.1 replaced by RemoteConfigurationService.getAdminPort().
 int getAdvancedPasswordMinLength()
          Get the password minimum length.
 java.lang.String getAdvancedPasswordUserDefinedRuleClassName()
          Get the advanced password user defined rule class name.
 boolean getConnectionKeepAlive()
          Gets to keep the http connection alive after it has connected to JReport Server.
 boolean getEnablePublishTempToVersion()
          Gets whether to enable the "Publish to Version System" link when ondemand running a report.
 boolean getEnableSecurityCheck()
          Gets whether to enable security checking in a request.
 java.lang.String getEngineDefaultLanguage()
          Deprecated. as of version 7, no replacement
 int getEnginePriority()
          Gets the CPU utilization priority for the engine.
 java.lang.String getLinkedCatalog()
          Gets the linked catalog defined on the server level.
 int getMaxCompletedRecordCount()
          Gets the maximum number of completed records that will be kept in the Completed table.
 int getPermissionAlgorithmType()
          Gets the server permission check algorithm.
 long getReportResultLife()
          Gets the time length for the temporary report result files to be kept in JReport Server temporary folder after they have been generated.
 boolean getScheduleShouldRun()
          Deprecated. obsolete method, no replacement
 int getTaskDurationCheckPeriod()
          Gets task duration check frequency in seconds.
 int getUserSessionTimeout()
          Gets user session timeout.
 int getViewReportTimeout()
          Gets the try-view time limit in seconds.
 boolean isAdvancedPasswordContainsLowercase()
          Check whether the password must contain at least one lower case letter.
 boolean isAdvancedPasswordContainsNumber()
          Check whether the password must contain at least one Number.
 boolean isAdvancedPasswordContainsSymbols()
          Check whether the password must contain at least one character that is not defined as letters , numerals and spaces.
 boolean isAdvancedPasswordContainsUppercase()
          Check whether the password must contain at least one upper case letter.
 boolean isAdvancedPasswordEnabled()
          Check whether to support advanced password.
 boolean isAdvancedPasswordLimitedMinLength()
          Check whether the password length must greater than specified length.
 boolean isAdvancedPasswordUserDefinedRule()
          Check whether using user defined advanced password rule.
 boolean isEnableDispalyGroupPermissionUI()
          Indicates whether to display group permissions setting in the permission setting UI.
 boolean isEnableDispalyRolePermissionUI()
          Indicates whether to display role permissions setting in the permission setting UI.
 boolean isEnableDispalyUserPermissionUI()
          Indicates whether to display user permissions setting in the permission setting UI.
 boolean isEnableDynamicResource()
          Gets whether to enable getting server resources from their real disk paths.
 boolean isEnableLinkedCatalog()
          Gets whether to pre-define a linked catalog on the server level for the My Reports and Public Reports folders to inherit.
 boolean isEnableMultipleLogin()
          Gets the multiple sessions created by one user, which can exist simultaneously.
 boolean isEnableRoleBasedAuthorization()
          Indicates whether to activate the role based security in replace of the default applied security of setting permissions for users, groups and roles.
 boolean isEnableTaskDuration()
          Gets whether to enable setting a time duration for a task and checks if the task can finish running in the duration.
 boolean isPromptActionQueueFull()
          Checks whether to prompt message when a user triggers an action on JReport Viewer which cannot be started immediately.
 boolean isPromptTaskQueueFull()
          Checks whether to prompt message when a user wants to run a report via web UI but the report task cannot be immediately started.
 boolean isShowNameWithPostfix()
          Gets whether to show the file name extensions for the catalog and report files on JReport Console web UI.
 boolean isShowNameWithPostfixForWebViewer()
          Gets whether to show the file name extensions for the catalog and report files on Web Viewer(Web Report Studio, Page Report Studio, JDashboard).
 void loadProperties()
          Loads JReport Server settings from <reporthome>/bin/server.properties.
 void setAdminPort(int adminPort)
          Deprecated. Since V8.1 replaced by RemoteConfigurationService.setAdminPort(int adminPort).
 void setAdvancedPasswordContainsLowercase(boolean containsLowercase)
          Set whether the password must contain at least one lower case letter.
 void setAdvancedPasswordContainsNumber(boolean containsNumber)
          Set whether the password must contain at least one Number.
 void setAdvancedPasswordContainsSymbols(boolean containsSymbols)
          Set whether the password must contain at least one character that is not defined as letters , numerals and spaces.
 void setAdvancedPasswordContainsUppercase(boolean containsUppercase)
          Set whether the password must contain at least one upper case letter.
 void setAdvancedPasswordEnabled(boolean enabled)
          Set whether to support advanced password.
 void setAdvancedPasswordLimitedMinLength(boolean limitedMinLength)
          Set whether the password length must greater than specified length.
 void setAdvancedPasswordMinLength(int minLength)
          Set the password minimum length.
 void setAdvancedPasswordUserDefinedRule(boolean userDefinedRule)
          Set whether using user defined advanced password rule.
 void setAdvancedPasswordUserDefinedRuleClassName(java.lang.String className)
          Set the advanced password user defined rule class name.
 void setConnectionKeepAlive(boolean enableKeepAlive)
          Sets to keep the http connection alive after it has connected to JReport Server.
 void setEnableDisplayGroupPermissionUI(boolean enableDispaly)
          Sets whether to display group permissions setting in the permission setting UI.
 void setEnableDisplayRolePermissionUI(boolean enableDispaly)
          Sets whether to display role permissions setting in the permission setting UI.
 void setEnableDisplayUserPermissionUI(boolean enableDispaly)
          Sets whether to display user permissions setting in the permission setting UI.
 void setEnableDynamicResource(boolean enableDynamicResource)
          Sets whether to enable getting server resources from their real disk paths.
 void setEnableLinkedCatalog(boolean enableLinkedCatalog)
          Sets whether to pre-define a linked catalog on the server level for the My Reports and Public Reports folders to inherit.
 void setEnableMultipleLogin(boolean enableMultipleLogin)
          Sets that multiple sessions created by one user, which can exist simultaneously.
 void setEnablePublishTempToVersion(boolean enablePublishTempToVersion)
          Sets whether to enable the "Publish to Version System" link when ondemand running a report.
 void setEnableRoleBasedAuthorization(boolean enableRoleBasedAuth)
          Sets whether to activate the role based security in replace of the default applied security of setting permissions for users, groups and roles.
 void setEnableSecurityCheck(boolean enableSecurityCheck)
          Sets whether to enable security checking in a request.
 void setEnableTaskDuration(boolean enableTaskDuration)
          Sets whether to enable setting a time duration for a task and checks if the task can finish running in the duration.
 void setEngineDefaultLanguage(java.lang.String useLanguage)
          Deprecated. as of version 7, no replacement
 void setEnginePriority(int enginePriority)
          Sets the CPU utilization priority for the engine.
 void setLinkedCatalog(java.lang.String linkedCatalog)
          Sets the linked catalog on the server level.
 void setMaxCompletedRecordCount(int maxCompletedRecordCount)
          Sets the maximum number of completed records that will be kept in the Completed table.
 void setPermissionAlgorithmType(int algorithmType)
          Sets the server permission check algorithm.
 void setPromptActionQueueFull(boolean isSet)
          Sets whether to prompt message when a user triggers an action on JReport Viewer which cannot be started immediately.
 void setPromptTaskQueueFull(boolean isSet)
          Sets whether to prompt message when a user wants to run a report via web UI but the report task cannot be immediately started.
 void setReportResultLife(long rptResultLife)
          Sets the time length for the temporary report result files to be kept in JReport Server temporary folder after they have been generated.
 void setScheduleShouldRun(boolean shouldRun)
          Deprecated. obsolete method, no replacement
 void setShowNameWithPostfix(boolean isShowExtengsion)
          Specifies whether to show the file name extensions for the catalogs and reports on JReport Console & JReport Administration web UI.
 void setShowNameWithPostfixForWebViewer(boolean isShowExtengsion)
          Specifies whether to show the file name extensions for the catalogs and reports on Web Viewer(Web Report Studio, Page Report Studio, JDashboard).
 void setTaskDurationCheckPeriod(int checkPeriod)
          Sets task duration check frequency in seconds.
 void setUserSessionTimeout(int userSessionTimeout)
          Sets user session timeout.
 void setViewReportTimeout(int viewReportTimeout)
          Sets the try-view time limit in seconds.
 

Method Detail

setUserSessionTimeout

void setUserSessionTimeout(int userSessionTimeout)
                           throws java.rmi.RemoteException
Sets user session timeout.

A user session will be created when a client logs in JReport Server via http. User session timeout is used to define an interval. If the client associated with a user session does not access JReport Server within the interval, this user session is expired.

This method works the same as modifying the value of server.session.timeout in <install_root>/bin/server.properties.

Parameters:
userSessionTimeout - user session timeout in seconds. The valid range is 0 to Integer.MAX_VALUE / 1000
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
See Also:
UserSession

getUserSessionTimeout

int getUserSessionTimeout()
                          throws java.rmi.RemoteException
Gets user session timeout.

A user session will be created when a client logs in JReport Server via http. User session timeout is used to define an interval. If the client associated with a user session does not access JReport Server within the interval, this user session is expired.

Returned value is same as the value of server.session.timeout in file<install_root>/bin/server.properties.

Returns:
user session timeout in seconds. The range is 0 to Integer.MAX_VALUE / 1000
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
See Also:
UserSession

setViewReportTimeout

void setViewReportTimeout(int viewReportTimeout)
                          throws java.rmi.RemoteException
Sets the try-view time limit in seconds. Any running report (submitted using the Run or Advanced Run command, excluding running as dhtml/studio) will be put into the Background Tasks list after the time limit.

This method works the same as modifying the value of web.timeouts.reoprt_wait in <install_root>/bin/server.properties.

Parameters:
viewReportTimeout - the try-view time limit in seconds
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getViewReportTimeout

int getViewReportTimeout()
                         throws java.rmi.RemoteException
Gets the try-view time limit in seconds. Any running report (submitted using the Run or Advanced Run command, excluding running as dhtml/studio) will be put into the Background Tasks list after the time limit.

Returned value is same as the value of web.timeouts.report_wait in file<install_root>/bin/server.properties.

Returns:
the try-view time limit in seconds
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdminPort

void setAdminPort(int adminPort)
                  throws java.rmi.RemoteException
Deprecated. Since V8.1 replaced by RemoteConfigurationService.setAdminPort(int adminPort).

Sets the Administration Console port for standalone server.

This method works the same as modifying the value of httpserver.admin.port in <install_root>/bin/server.properties.

Parameters:
adminPort - the Administration Console port.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
See Also:
RemoteConfigurationService.setAdminPort(int)

getAdminPort

int getAdminPort()
                 throws java.rmi.RemoteException
Deprecated. Since V8.1 replaced by RemoteConfigurationService.getAdminPort().

Gets the Administration Console port for standalone server.

Returned value is same as the value of httpserver.admin.port in file<install_root>/bin/server.properties.

Returns:
the Administration port.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
See Also:
RemoteConfigurationService.getAdminPort(int)

setReportResultLife

void setReportResultLife(long rptResultLife)
                         throws java.rmi.RemoteException
Sets the time length for the temporary report result files to be kept in JReport Server temporary folder after they have been generated. By default it is 86400 seconds (24 hours), 300 is the minimum number.

This method works the same as modifying the value of resource.result.life in <install_root>/bin/server.properties.

Parameters:
rptResultLife - the time length for keeping the temporary report result files
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getReportResultLife

long getReportResultLife()
                         throws java.rmi.RemoteException
Gets the time length for the temporary report result files to be kept in JReport Server temporary folder after they have been generated. By default it is 86400 seconds (24 hours), 300 is the minimum number.

Returned value is same as the value of resource.result.life in file<install_root>/bin/server.properties.

Returns:
the time length for keeping the temporary report result files
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setEnginePriority

void setEnginePriority(int enginePriority)
                       throws java.rmi.RemoteException
Sets the CPU utilization priority for the engine. The performance of JReport Server is influenced by the usage of the CPU that the JReport engine can occupy. A larger share of CPU usage will speed up performance.

It has 5 levels:
1 - Lowest Priority
2 - Low Priority
3 - Normal Priority
4 - High Priority
5 - Highest Priority

This method works the same as modifying the value of engine.priority in <install_root>/bin/server.properties.

Parameters:
enginePriority - the CPU utilization priority for the engine.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getEnginePriority

int getEnginePriority()
                      throws java.rmi.RemoteException
Gets the CPU utilization priority for the engine. The performance of JReport Server is influenced by the usage of the CPU that the JReport engine can occupy. A larger share of CPU usage will speed up performance.

It has 5 levels:
1 - Lowest Priority
2 - Low Priority
3 - Normal Priority
4 - High Priority
5 - Highest Priority

Returned value is same as the value of engine.priority in file<install_root>/bin/server.properties.

Returns:
the CPU utilization priority for the engine.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setEnableSecurityCheck

void setEnableSecurityCheck(boolean enableSecurityCheck)
                            throws java.rmi.RemoteException
Sets whether to enable security checking in a request.

When it is set to false, JReport Server will respond a request without any security check, no user name required, no permission check, etc. Default value is true.

This method works the same as modifying the value of server.security in <install_root>/bin/server.properties in non-cluster environment, and it will be stored in the system database in a cluster environment.

Parameters:
enableSecurityCheck - whether to enable security checking, true means to enable.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getEnableSecurityCheck

boolean getEnableSecurityCheck()
                               throws java.rmi.RemoteException
Gets whether to enable security checking in a request.

When the returned value is false, JReport Server will respond a request without any security check, no user name required, no permission check, etc.

In non-cluster environment, the returned value is same as the value of server.security in file<install_root>/bin/server.properties, and in a cluster environment, it will be stored in the system database.

Returns:
boolean whether to enable Security Checking.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setEnablePublishTempToVersion

void setEnablePublishTempToVersion(boolean enablePublishTempToVersion)
                                   throws java.rmi.RemoteException
Sets whether to enable the "Publish to Version System" link when ondemand running a report.

When it is set to true, "Publish to Version System" link will be shown when ondemand running a report (except running as dhtml/studio). after clicking this link, JReport Server will add a result version into the resource system by using the result of the ondemand running.

This method works the same as modifying the value of server.version.from.temp in <install_root>/bin/server.properties in non-cluster environment, and it will be stored in the system database in a cluster environment.

Parameters:
enablePublishTempToVersion - whether to enable publishing to version system when viewing a report.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getEnablePublishTempToVersion

boolean getEnablePublishTempToVersion()
                                      throws java.rmi.RemoteException
Gets whether to enable the "Publish to Version System" link when ondemand running a report.

When it is true, "Publish to Version System" link will be shown when ondemand running a report (except running as dhtml/studio). After clicking this link, JReport Server will add a result version into the resource system by using the result of the ondemand running.

In non-cluster environment, the returned value is same as the value of server.version.from.temp in file<install_root>/bin/server.properties, and in a cluster environment, it will be stored in the system database.

Returns:
whether to enable publishing to version system when viewing a report.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setConnectionKeepAlive

void setConnectionKeepAlive(boolean enableKeepAlive)
                            throws java.rmi.RemoteException
Sets to keep the http connection alive after it has connected to JReport Server.

Setting it to false will disconnect the connection once it has received the response.

This method works the same as modifying the value of server.connection.keepalive in <install_root>/bin/server.properties.

Parameters:
enableKeepAlive - true if you want to keep the connection alive, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getConnectionKeepAlive

boolean getConnectionKeepAlive()
                               throws java.rmi.RemoteException
Gets to keep the http connection alive after it has connected to JReport Server.

If it is false, JReport Server will disconnect the connection once it has received the response.

Returned value is same as the value of server.connection.keepalive in file<install_root>/bin/server.properties.

Returns:
true if you want to keep the connection alive, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setScheduleShouldRun

void setScheduleShouldRun(boolean shouldRun)
                          throws java.rmi.RemoteException
Deprecated. obsolete method, no replacement

Sets whether to run a schedule while starting up the server if the scheduled time has passed.

Parameters:
shouldRun - true if it will run the schedule while starting up the server if the scheduled time has passed, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getScheduleShouldRun

boolean getScheduleShouldRun()
                             throws java.rmi.RemoteException
Deprecated. obsolete method, no replacement

Gets whether to run a schedule while starting up the server if the scheduled time has passed.

Returns:
return true if it will run the schedule while starting up the server if the scheduled time has passed, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setEngineDefaultLanguage

void setEngineDefaultLanguage(java.lang.String useLanguage)
                              throws java.rmi.RemoteException
Deprecated. as of version 7, no replacement

Sets the engine default language.

Parameters:
useLanguage - the language engine uses
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getEngineDefaultLanguage

java.lang.String getEngineDefaultLanguage()
                                          throws java.rmi.RemoteException
Deprecated. as of version 7, no replacement

Returns the engine default language.

Returns:
string which is the engine default language.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

loadProperties

void loadProperties()
                    throws java.rmi.RemoteException
Loads JReport Server settings from <reporthome>/bin/server.properties.

In a cluster environment, some settings are stored in the system database.

Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setMaxCompletedRecordCount

void setMaxCompletedRecordCount(int maxCompletedRecordCount)
                                throws java.rmi.RemoteException
Sets the maximum number of completed records that will be kept in the Completed table.

Set the value to 0 if you do not want to limit the record count.

This method works the same as modifying the value of server.completed.max_count in <install_root>/bin/server.properties in non-cluster environment, and it will be stored in the system database in a cluster environment.

Parameters:
maxCompletedRecordCount - the maximum number of completed records
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getMaxCompletedRecordCount

int getMaxCompletedRecordCount()
                               throws java.rmi.RemoteException
Gets the maximum number of completed records that will be kept in the Completed table.

Returned value 0 means the record count is unlimited.

In non-cluster environment, the returned value is same as the value of server.completed.max_count in file<install_root>/bin/server.properties, and in a cluster environment, it will be stored in the system database.

Default value is 3000.

Returns:
int which is the maximum complete records count
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isEnableMultipleLogin

boolean isEnableMultipleLogin()
                              throws java.rmi.RemoteException
Gets the multiple sessions created by one user, which can exist simultaneously.

If the returned value is true, a user can log onto JReport Server repeatedly without having to terminate any of his/her former sessions until the number of sessions reaches the number permitted by the license.

If the return value is false, only the newly created session is active, and all the other former sessions created by the same user will be terminated by JReport Server automatically.

Returned value is same as the value of server.enableMultipleLogin in file<install_root>/bin/server.properties, default value is true

Returns:
true means to enable creating multiple sessions by the same user simultaneously, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setEnableMultipleLogin

void setEnableMultipleLogin(boolean enableMultipleLogin)
                            throws java.rmi.RemoteException
Sets that multiple sessions created by one user, which can exist simultaneously.

If the enableMultipleLogin is true, a user can log onto JReport Server repeatedly without having to terminate any of his/her former sessions until the number of sessions reaches the number permitted by the license.

If the value is false, only the newly created session is active, and all the other former sessions created by the same user will be terminated by JReport Server automatically.

This method works the same as modifying the value of server.enableMultipleLogin in <install_root>/bin/server.properties.

Parameters:
enableMultipleLogin - true to enable creating multiple sessions by the same user simultaneously, false to disable
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isEnableDynamicResource

boolean isEnableDynamicResource()
                                throws java.rmi.RemoteException
Gets whether to enable getting server resources from their real disk paths.

This setting only takes effect in non-cluster environment.

Returned value is same as the value of server.enableDynamicResource in file<install_root>/bin/server.properties, default value is false (disable).

Returns:
return true if getting server resources from real paths is enabled, otherwise return falseThrows:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 7.1

setEnableDynamicResource

void setEnableDynamicResource(boolean enableDynamicResource)
                              throws java.rmi.RemoteException
Sets whether to enable getting server resources from their real disk paths.

This setting only takes effect in non-cluster environment.

This method works the same as modifying the value of server.enableDynamicResource in <install_root>/bin/server.properties.

Parameters:
enableDynamicResource - true means to enable getting server resources from their real disk paths, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 7.1

setEnableDisplayUserPermissionUI

void setEnableDisplayUserPermissionUI(boolean enableDispaly)
                                      throws java.rmi.RemoteException
Sets whether to display user permissions setting in the permission setting UI.

Specifies whether to display user permissions in the permission setting UI for the server resource tree node and Version Properties, and the Scheduling to Version and Advanced Run dialogs.

This method works the same as modifying the value of server.ui.set_permission.user in <install_root>/bin/server.properties.

Parameters:
enableDispaly - true to display user permission setting in UI, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setEnableDisplayRolePermissionUI

void setEnableDisplayRolePermissionUI(boolean enableDispaly)
                                      throws java.rmi.RemoteException
Sets whether to display role permissions setting in the permission setting UI.

Specifies whether to display role permissions in the permission setting UI for the server resource tree node and Version Properties, and the Scheduling to Version and Advanced Run dialogs.

This method works the same as modifying the value of server.ui.set_permission.role in <install_root>/bin/server.properties.

Parameters:
enableDispaly - true to display role permission setting in UI, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setEnableDisplayGroupPermissionUI

void setEnableDisplayGroupPermissionUI(boolean enableDispaly)
                                       throws java.rmi.RemoteException
Sets whether to display group permissions setting in the permission setting UI.

Specifies whether to display group permissions in the permission setting UI for the server resource tree node and Version Properties, and the Scheduling to Version and Advanced Run dialogs.

This method works the same as modifying the value of server.ui.set_permission.group in <install_root>/bin/server.properties.

Parameters:
enableDispaly - true to display group permission setting in UI, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setEnableRoleBasedAuthorization

void setEnableRoleBasedAuthorization(boolean enableRoleBasedAuth)
                                     throws java.rmi.RemoteException
Sets whether to activate the role based security in replace of the default applied security of setting permissions for users, groups and roles.

In the role based security, permissions are defined on roles only, and users and groups are mapped to roles. Only permissions defined on roles take effect when checking permission, and only permissions set to roles will apply when setting permission.

This method works the same as modifying the value of server.rolebased.authorization in <install_root>/bin/server.properties.

Parameters:
enableRoleBasedAuth - true to activate role based security, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isEnableRoleBasedAuthorization

boolean isEnableRoleBasedAuthorization()
                                       throws java.rmi.RemoteException
Indicates whether to activate the role based security in replace of the default applied security of setting permissions for users, groups and roles.

In the role based security, permissions are defined on roles only, and users and groups are mapped to roles. Only permissions defined on roles take effect when checking permission, and only permissions set to roles will apply when setting permission.

Returned value is same as the value of server.rolebased.authorization in file<install_root>/bin/server.properties, default value is false (hide).

Returns:
return true means to activate role based security, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isEnableDispalyUserPermissionUI

boolean isEnableDispalyUserPermissionUI()
                                        throws java.rmi.RemoteException
Indicates whether to display user permissions setting in the permission setting UI.

Indicates whether to display user permissions in the permission setting UI for the server resource tree node and Version Properties, and the Scheduling to Version and Advanced Run dialogs.

Returned value is same as the value of server.ui.set_permission.user in file<install_root>/bin/server.properties, default value is false (hide).

Returns:
return true means to display user permission setting in UI, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isEnableDispalyRolePermissionUI

boolean isEnableDispalyRolePermissionUI()
                                        throws java.rmi.RemoteException
Indicates whether to display role permissions setting in the permission setting UI.

Indicates whether to display role permissions in the permission setting UI for the server resource tree node and Version Properties, and the Scheduling to Version and Advanced Run dialogs.

Returned value is same as the value of server.ui.set_permission.role in file<install_root>/bin/server.properties, default value is true (display).

Returns:
return true means to display role permission setting in UI, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isEnableDispalyGroupPermissionUI

boolean isEnableDispalyGroupPermissionUI()
                                         throws java.rmi.RemoteException
Indicates whether to display group permissions setting in the permission setting UI.

Indicates whether to display group permissions in the permission setting UI for the server resource tree node and Version Properties, and the Scheduling to Version and Advanced Run dialogs.

Returned value is same as the value of server.ui.set_permission.group in file<install_root>/bin/server.properties, default value is false (hide).

Returns:
return true means to display group permission setting in UI, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getPermissionAlgorithmType

int getPermissionAlgorithmType()
                               throws java.rmi.RemoteException
Gets the server permission check algorithm.

There are two kinds of algorithm types:

Type 0: The Permission Accumulation Algorithm: Like the algorithm name, the permission algorithm will accumulate all permissions into the user permission according to the user's inheritance relationship.

Type 1: The User Permission Replacement Algorithm: Like the algorithm name, when the administrator sets some permissions on a user, the user permissions will replace the permissions calculated by inheritance relationship.

For example: There is a user named Sam and he is the member of the group DP.

The principal's permission settings: The user Sam - Schedule, The group DP - Visible, Read, Write

If using the permission algorithm type 0, the permissions calculated result is: Visible, Read, Write, Schedule

If using the permission algorithm type 1, the permissions calculated result is: Schedule.

Returned value is same as the value of server.permission.algorithm in file<install_root>/bin/server.properties, default value is 0 (The Permission Accumulation Algorithm).

Returns:
the permission algorithm type, available values are 0: The Permission Accumulation Algorithm.

1: The User Permission Replacement Algorithm

Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setPermissionAlgorithmType

void setPermissionAlgorithmType(int algorithmType)
                                throws java.rmi.RemoteException
Sets the server permission check algorithm.

There are two kinds of algorithm types:

Type 0: The Permission Accumulation Algorithm: Like the algorithm name, the permission algorithm will accumulate all permissions into the user permission according to the user's inheritance relationship.

Type 1: The User Permission Replacement Algorithm: Like the algorithm name, when the administrator sets some permissions on a user, the user permissions will replace the permissions calculated by inheritance relationship.

For example: There is a user named Sam and he is the member of the group DP.

The principal's permission settings: The user Sam - Schedule, The group DP - Visible, Read, Write

If using the permission algorithm type 0, the permissions calculated result is: Visible, Read, Write, Schedule

If using the permission algorithm type 1, the permissions calculated result is: Schedule.

This method works the same as modifying the value of server.permission.algorithm in <install_root>/bin/server.properties.

Parameters:
algorithmType - 0: The Permission Accumulation Algorithm.

1: The User Permission Replacement Algorithm

Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isEnableTaskDuration

boolean isEnableTaskDuration()
                             throws java.rmi.RemoteException
Gets whether to enable setting a time duration for a task and checks if the task can finish running in the duration.

Specifies whether to enable setting a time duration for a task and asking JReport Server to cancel the task or to notify you or someone else of the task status via e-mail if the task has not yet finished running when the task duration is up.

If the value is set to true, the Duration tab will be available in the Advanced Run and Schedule dialogs on UI.

Returned value is same as the value of task.duration.enable in file<install_root>/bin/server.properties, default value is false (disable task duration check).

Returns:
return true if task duration check is enabled, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 7.3

setEnableTaskDuration

void setEnableTaskDuration(boolean enableTaskDuration)
                           throws java.rmi.RemoteException
Sets whether to enable setting a time duration for a task and checks if the task can finish running in the duration.

Specifies whether to enable setting a time duration for a task and asking JReport Server to cancel the task or to notify you or someone else of the task status via e-mail if the task has not yet finished running when the task duration is up.

If the value is set to true, the Duration tab will be available in the Advanced Run and Schedule dialogs on UI.

This method works the same as modifying the value of task.duration.enable in <install_root>/bin/server.properties.

Parameters:
enableTaskDuration - true to enable task duration check, false to disable it.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 7.3

getTaskDurationCheckPeriod

int getTaskDurationCheckPeriod()
                               throws java.rmi.RemoteException
Gets task duration check frequency in seconds.

By default, JReport Server checks task duration every 30 seconds.

Returned value is same as the value of task.duration.check_cycle in file<install_root>/bin/server.properties, default value is 30.

Returns:
the task duration check period, in seconds.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 7.3

setTaskDurationCheckPeriod

void setTaskDurationCheckPeriod(int checkPeriod)
                                throws java.rmi.RemoteException
Sets task duration check frequency in seconds.

By default, JReport Server checks task duration every 30 seconds. Note that the value must be an integer greater than 0.

This method works the same as modifying the value of task.duration.check_cycle in <install_root>/bin/server.properties.

Parameters:
checkPeriod - the task duration check period, in seconds.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 7.3

isEnableLinkedCatalog

boolean isEnableLinkedCatalog()
                              throws java.rmi.RemoteException
Gets whether to pre-define a linked catalog on the server level for the My Reports and Public Reports folders to inherit.

If it is false as default, the My Reports and the Public Reports folders cannot inherit server level linked catalog.

Returned value is same as the value of server.resource.enable_linked_catalog in file<install_root>/bin/server.properties, default value is false (disable server level linked catalog).

Returns:
return true if linked catalog on the server level is enabled, otherwise return false
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 8.1

setEnableLinkedCatalog

void setEnableLinkedCatalog(boolean enableLinkedCatalog)
                            throws java.rmi.RemoteException
Sets whether to pre-define a linked catalog on the server level for the My Reports and Public Reports folders to inherit.

If it is set to false, the My Reports and the Public Reports folders cannot inherit server level linked catalog.

This method works the same as modifying the value of task.duration.enable in <install_root>/bin/server.properties.

Parameters:
enableLinkedCatalog - true to enable linked catalog on the server level, otherwise false
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 8.1

getLinkedCatalog

java.lang.String getLinkedCatalog()
                                  throws java.rmi.RemoteException
Gets the linked catalog defined on the server level.

The server level linked catalog will be inherited by the My Reports and Public Reports folders, if isEnableLinkedCatalog() returns true.

Returned value is same as the value of server.resource.linked_catalog in file<install_root>/bin/server.properties.

Returns:
the linked catalog on the server level, null if it is not set.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 8.1

setLinkedCatalog

void setLinkedCatalog(java.lang.String linkedCatalog)
                      throws java.rmi.RemoteException
Sets the linked catalog on the server level.

The server level linked catalog will be inherited by the My Reports and Public Reports folders, if isEnableLinkedCatalog() returns true.

This method works the same as modifying the value of server.resource.linked_catalog in <install_root>/bin/server.properties.

Parameters:
linkedCatalog - the server level linked catalog.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution
Since:
version 8.1

isPromptTaskQueueFull

boolean isPromptTaskQueueFull()
                              throws java.rmi.RemoteException
Checks whether to prompt message when a user wants to run a report via web UI but the report task cannot be immediately started.

If a user triggered a report task (by directly clicking or using advance run), which cannot be immediately started (because server running queue is 100% full or because the normal queue is full or because the server accelerated queue still has room but such task is not qualified enough to be put into the server accelerated queue), if this method returns true, a message dialog will pop up to ask the user if he wants to wait or cancel it and try it later.

Returned value is same as the value of web.prompt.taskqueue_full in file<install_root>/bin/server.properties, default value is true (prompt message when the queue is full).

Returns:
return true to prompt message, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setPromptTaskQueueFull

void setPromptTaskQueueFull(boolean isSet)
                            throws java.rmi.RemoteException
Sets whether to prompt message when a user wants to run a report via web UI but the report task cannot be immediately started.

If a user triggered a report task (by directly clicking or using advance run), which cannot be immediately started (because the server running queue is 100% full or because the normal queue is full or because the server accelerated queue still has room but such task is not qualified enough to be put into the server accelerated queue), if this setting is true, a message dialog will pop up to ask the user if he wants to wait or cancel it and try it later

This method works the same as modifying the value of web.prompt.taskqueue_full in <install_root>/bin/server.properties.

Parameters:
isSet - true to prompt message, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isPromptActionQueueFull

boolean isPromptActionQueueFull()
                                throws java.rmi.RemoteException
Checks whether to prompt message when a user triggers an action on JReport Viewer which cannot be started immediately.

For JReport Viewer, there are two different scenarios, although both resulted action cannot be started immediately, but we should treat them differently.

One action cannot be started immediately because some other actions are running and the new action will be put into JReport Viewer waiting queue. If this method return true, a message box pops up and asks the user if he wants to wait or cancel it and try it later.

The other action cannot be started immediately because JReport Viewer queue is totally full, and no more actions can be put into it. If this method returns true, a message box pops up, and simply tells user that there is not room for more actions

Returned value is same as the value of web.prompt.actionqueue_full in file<install_root>/bin/server.properties, default value is true (prompt message when the queue is full).

Returns:
return true to prompt message, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setPromptActionQueueFull

void setPromptActionQueueFull(boolean isSet)
                              throws java.rmi.RemoteException
Sets whether to prompt message when a user triggers an action on JReport Viewer which cannot be started immediately.

For JReport Viewer, there are two different scenarios, although both resulted action cannot be started immediately, but we should treat them differently.

One action cannot be started immediately because some other actions are running and the new action will be put into JReport Viewer waiting queue. If this setting is true, a message box pops up and asks user if he wants to wait or cancel it and try it later.

The other action cannot be started immediately because JReport Viewer queue is totally full, and no more actions can be put into it. If this setting is true, a message box pops up, and simply tells user that there is not room for more actions

This method works the same as modifying the value of web.prompt.actionqueue_full in <install_root>/bin/server.properties.

Parameters:
isSet - true to prompt message, otherwise false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setShowNameWithPostfix

void setShowNameWithPostfix(boolean isShowExtengsion)
                            throws java.rmi.RemoteException
Specifies whether to show the file name extensions for the catalogs and reports on JReport Console & JReport Administration web UI.

This method works the same as modifying the value of web.page.option.show_name_with_postfix in <install_root>/bin/server.properties.

Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isShowNameWithPostfix

boolean isShowNameWithPostfix()
                              throws java.rmi.RemoteException
Gets whether to show the file name extensions for the catalog and report files on JReport Console web UI.

Returned value is same as the value of web.page.option.show_name_with_postfix in file<install_root>/bin/server.properties, default value is true (show postfix).

Returns:
true if the file name extensions for the catalogs and reports are shown, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setShowNameWithPostfixForWebViewer

void setShowNameWithPostfixForWebViewer(boolean isShowExtengsion)
                                        throws java.rmi.RemoteException
Specifies whether to show the file name extensions for the catalogs and reports on Web Viewer(Web Report Studio, Page Report Studio, JDashboard).

This method works the same as modifying the value of web.viewer.option.show_name_with_postfix in <install_root>/bin/server.properties.

Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isShowNameWithPostfixForWebViewer

boolean isShowNameWithPostfixForWebViewer()
                                          throws java.rmi.RemoteException
Gets whether to show the file name extensions for the catalog and report files on Web Viewer(Web Report Studio, Page Report Studio, JDashboard).

Returned value is same as the value of web.viewer.option.show_name_with_postfix in file<install_root>/bin/server.properties, default value is true (show postfix).

Returns:
true if the file name extensions for the catalogs and reports are shown, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isAdvancedPasswordEnabled

boolean isAdvancedPasswordEnabled()
                                  throws java.rmi.RemoteException
Check whether to support advanced password.

Returns:
true to support advanced password, otherwise return false.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordEnabled

void setAdvancedPasswordEnabled(boolean enabled)
                                throws java.rmi.RemoteException
Set whether to support advanced password.

Parameters:
enabled - true means that support advanced password, otherwise don't support.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isAdvancedPasswordLimitedMinLength

boolean isAdvancedPasswordLimitedMinLength()
                                           throws java.rmi.RemoteException
Check whether the password length must greater than specified length.

Returns:
true means that the password length must greater than specified length.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordLimitedMinLength

void setAdvancedPasswordLimitedMinLength(boolean limitedMinLength)
                                         throws java.rmi.RemoteException
Set whether the password length must greater than specified length.

Parameters:
limitedMinLength - true means that the password length must greater than specified length.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getAdvancedPasswordMinLength

int getAdvancedPasswordMinLength()
                                 throws java.rmi.RemoteException
Get the password minimum length.

Returns:
the password minimum length
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordMinLength

void setAdvancedPasswordMinLength(int minLength)
                                  throws java.rmi.RemoteException
Set the password minimum length.

Parameters:
minLength - the password minimum length
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isAdvancedPasswordContainsUppercase

boolean isAdvancedPasswordContainsUppercase()
                                            throws java.rmi.RemoteException
Check whether the password must contain at least one upper case letter.

Returns:
true means that the password must contain at least one upper case letter.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordContainsUppercase

void setAdvancedPasswordContainsUppercase(boolean containsUppercase)
                                          throws java.rmi.RemoteException
Set whether the password must contain at least one upper case letter.

Parameters:
containsUppercase - true means that the password must contain at least one upper case letter.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isAdvancedPasswordContainsLowercase

boolean isAdvancedPasswordContainsLowercase()
                                            throws java.rmi.RemoteException
Check whether the password must contain at least one lower case letter.

Returns:
true means that the password must contain at least one lower case letter.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordContainsLowercase

void setAdvancedPasswordContainsLowercase(boolean containsLowercase)
                                          throws java.rmi.RemoteException
Set whether the password must contain at least one lower case letter.

Parameters:
containsLowercase - true means that the password must contain at least one lower case letter.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isAdvancedPasswordContainsNumber

boolean isAdvancedPasswordContainsNumber()
                                         throws java.rmi.RemoteException
Check whether the password must contain at least one Number.

Returns:
true means that the password must contain at least one Number.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordContainsNumber

void setAdvancedPasswordContainsNumber(boolean containsNumber)
                                       throws java.rmi.RemoteException
Set whether the password must contain at least one Number.

Parameters:
containsNumber - true means that the password must contain at least one Number.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isAdvancedPasswordContainsSymbols

boolean isAdvancedPasswordContainsSymbols()
                                          throws java.rmi.RemoteException
Check whether the password must contain at least one character that is not defined as letters , numerals and spaces.

Returns:
true means that the password must contain at least one character that is not defined as letters , numerals and spaces.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordContainsSymbols

void setAdvancedPasswordContainsSymbols(boolean containsSymbols)
                                        throws java.rmi.RemoteException
Set whether the password must contain at least one character that is not defined as letters , numerals and spaces.

Parameters:
containsSymbols - true means that the password must contain at least one character that is not defined as letters , numerals and spaces.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

isAdvancedPasswordUserDefinedRule

boolean isAdvancedPasswordUserDefinedRule()
                                          throws java.rmi.RemoteException
Check whether using user defined advanced password rule.

Returns:
false means that using JReport Password Rule, true means that using User Defined Password Rule.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordUserDefinedRule

void setAdvancedPasswordUserDefinedRule(boolean userDefinedRule)
                                        throws java.rmi.RemoteException
Set whether using user defined advanced password rule.

Parameters:
userDefinedRule - false means that using JReport Password Rule, true means that using User Defined Password Rule.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

getAdvancedPasswordUserDefinedRuleClassName

java.lang.String getAdvancedPasswordUserDefinedRuleClassName()
                                                             throws java.rmi.RemoteException
Get the advanced password user defined rule class name. This class must implements the interface AdvancedPasswordRule.

The user will supply this implement JAVA class to validate the password.

Returns:
the full class name.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution

setAdvancedPasswordUserDefinedRuleClassName

void setAdvancedPasswordUserDefinedRuleClassName(java.lang.String className)
                                                 throws java.rmi.RemoteException
Set the advanced password user defined rule class name. This class must implements the interface AdvancedPasswordRule.

The user will supply the implement JAVA class to validate the password.

Parameters:
className - the full class name.
Throws:
java.rmi.RemoteException - if communication-related error occurs during RMI call execution