Interface IApplication

All Superinterfaces:
IActivity, org.eclipse.core.runtime.IAdaptable, IAttributeStore<Object>, ICustomPropertyProvider, ISystemEventDispatcher

public interface IApplication extends IActivity, org.eclipse.core.runtime.IAdaptable, IAttributeStore<Object>, ISystemEventDispatcher, ICustomPropertyProvider
API:
This is a public API.
  • Field Details

    • SYSTEM_APPLICATION_NAME

      static final String SYSTEM_APPLICATION_NAME
      System application name
      See Also:
      API:
      This public API is available in Java.
    • DESIGNER_APPLICATION_NAME

      static final String DESIGNER_APPLICATION_NAME
      The name of the application on the designer (is always the same)
      See Also:
      API:
      This public API is available in Java.
  • Method Details

    • getId

      long getId()
      Gets the identifier of the application
      Returns:
      the identifier
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getName

      String getName()
      Returns the name of the application
      Returns:
      name
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • getDescription

      String getDescription()
      Returns the description
      Returns:
      description
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • setDescription

      void setDescription(String description)
      Sets the description
      Parameters:
      description - The description of the application
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
      Security:
      SESSION OWNS ApplicationWriteDescription PERMISSION OR OWNS ApplicationWriteDescription@SYSTEM PERMISSION
    • getFileDirectory

      String getFileDirectory()
      Returns the directory where the files of the application are stored (in this directory, there are different directories for each project and then in each directory different directories for each version...)
      Returns:
      the directory where the files of the application are stored
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getFileArea

      File getFileArea()
      Gets the directory where the persistent files that can be accessed with the IvyScript File type are stored for this application. The returned location is relative to the application's general file directory, which is accessible with getFileDirectory().
      Returns:
      persistent file area directory
      Throws:
      PersistencyException - if persistency access fails
      See Also:
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • getSessionFileArea

      File getSessionFileArea()
      Gets the directory where the temporary IvyScript Files for the current session are stored. The returned location is relative to the application's general file directory, which is accessible with getFileDirectory().
      Returns:
      temporary file area directory for current session
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • setFileDirectory

      void setFileDirectory(String directory)
      Set the data directory where the files of the application are stored (in this directory, there are different directories for each project and then in each directory different directories for each version...)
      Parameters:
      directory - The directory where the files of the application are stored (null means default directory)
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
      Security:
      SESSION OWNS ApplicationWriteFileDirectory PERMISSION OR OWNS ApplicationWriteFileDirectory@SYSTEM PERMISSION
    • setOwnerName

      void setOwnerName(String ownerName)
      Sets the owner name
      Parameters:
      ownerName - The new owner name
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
      Security:
      SESSION OWNS ApplicationWriteOwnerName PERMISSION OR OWNS ApplicationWriteOwnerName@SYSTEM PERMISSION
    • getOwnerName

      String getOwnerName()
      Gets the owner name
      Returns:
      owner name
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • findProcessModel

      IProcessModel findProcessModel(String processModelName)
      Finds a process model by its name
      Parameters:
      processModelName - Name of the process model
      Returns:
      process model or null if no process model with the name exists
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • findProcessModel

      IProcessModel findProcessModel(Object identifier)
      Finds a process model by its identifier
      Parameters:
      identifier - process model identifier
      Returns:
      process model or null
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • findProcessModelVersion

      IProcessModelVersion findProcessModelVersion(String processModelVersionUrl)
      Finds a process model version with the procesModelVersionUrl or procesModelUrl
      Parameters:
      processModelVersionUrl - of the process model version
      Returns:
      process model version or null
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • createProcessModel

      IProcessModel createProcessModel(String processModelName, String description)
      Creates a new process model within the application
      Parameters:
      processModelName - The process model name
      description - Description of the process model
      Returns:
      created process model or null if processModelName isn't unique
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
      Security:
      SESSION OWNS ProcessModelCreate PERMISSION OR OWNS ProcessModelCreate@SYSTEM PERMISSION
    • deleteProcessModel

      void deleteProcessModel(String processModelName)
      Deletes a process model
      Parameters:
      processModelName - The name of the process model
      Throws:
      PersistencyException - If db access fails
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
      Security:
      SESSION OWNS ProcessModelDelete PERMISSION OR OWNS ProcessModelDelete@SYSTEM PERMISSION
    • getProcessModels

      List<IProcessModel> getProcessModels()
      Gets all process models
      Returns:
      unmodifiable list with all process models
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • getProcessModelsSortedByName

      List<IProcessModel> getProcessModelsSortedByName()
      Gets all process models sorted by the name of the process models
      Returns:
      unmodifiable list with all process models sorted by name
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • isSystem

      boolean isSystem()
      Returns true if this application is the system application
      Returns:
      true if system application, otherwise false
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getSecurityDescriptor

      ISecurityDescriptor getSecurityDescriptor()
      Gets the security descriptor of the application
      Returns:
      the security descriptor
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getSecurityContext

      ISecurityContext getSecurityContext()
      Gets the security context of this application
      Returns:
      security context
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getLibraries

      List<ILibrary> getLibraries()
      Gets all liberaries
      Returns:
      list with libraries. Maybe empty, never null.
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • setActiveEnvironment

      @Deprecated(since="9.4", forRemoval=true) void setActiveEnvironment(String environment)
      Deprecated, for removal: This API element is subject to removal in a future version.

      Set the environment for the application.

      This settings could be overriden by ISession.setActiveEnvironment(String) and/or ICase.setActiveEnvironment(String)

      Parameters:
      environment - name of the environment. Use null or an empty string to set the default environment
      Throws:
      NoSuchElementException - if the environment does not exist
      See Also:
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getActiveEnvironment

      @Deprecated(since="9.4", forRemoval=true) String getActiveEnvironment()
      Deprecated, for removal: This API element is subject to removal in a future version.

      Returns the active environment of the application.

      Use getActualEnvironment() to get the actual environment.

      Returns:
      name of the active environment or null if not set (i.e. the default environment is set)
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getActualEnvironment

      @Deprecated(since="9.4", forRemoval=true) IEnvironment getActualEnvironment(ISession session)
      Deprecated, for removal: This API element is subject to removal in a future version.

      Determines the actual environment. The priority is as follows:

      • CaseEnvironment
      • SessionEnvironment
      • ApplicationEnvironment
      • DefaultEnvironment

      Use the setActiveEnvironment(String) method on ICase, ISession or IApplication to control the actual environment.

      Parameters:
      session - the current session or null
      Returns:
      the actual environment set on the case, the session, the application or the default environment if none is set
      Throws:
      PersistencyException
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getActualEnvironment

      @Deprecated(since="9.4", forRemoval=true) IEnvironment getActualEnvironment()
      Deprecated, for removal: This API element is subject to removal in a future version.

      Determines the actual environment. The priority is as follows:

      • CaseEnvironment
      • SessionEnvironment
      • ApplicationEnvironment
      • DefaultEnvironment

      Use the setActiveEnvironment(String) method on ICase, ISession or IApplication to control the actual environment.

      Returns:
      the actual environment set on the case, the session, the application or the default environment if none is set
      Throws:
      PersistencyException
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getDefaultEMailNotifcationSettings

      @Deprecated(since="9.4", forRemoval=true) IEMailNotificationSettings getDefaultEMailNotifcationSettings()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Gets the default email notification settings of this application. If not set or is set to null, default settings are returned, never null.

      This settings are used if the user settings define to use the application default (see IUserEMailNotificationSettings.isUseApplicationDefault()).

      Returns:
      the default email notification settings of this application, never null.
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • setDefaultEMailNotifcationSettings

      @Deprecated(since="9.4", forRemoval=true) void setDefaultEMailNotifcationSettings(IEMailNotificationSettings settings)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Sets the default email notification settings of this application.

      This settings are used if the user settings define to use the application default (see IUserEMailNotificationSettings.isUseApplicationDefault()).

      Parameters:
      settings - the default email notification settings of this application, can be null.
      Throws:
      PersistencyException - if persistency access fails
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • getBusinessCalendarSettings

      IBusinessCalendarSettings getBusinessCalendarSettings()
      Returns:
      never null
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • setBusinessCalendar

      void setBusinessCalendar(IBusinessCalendar calendar)
      Defines the IBusinessCalendar for this IApplication. This influences the IDefaultBusinessCalendar determination when calling ivy.cal.
      Parameters:
      calendar - may be null.
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.
    • current

      static IApplication current()

      Gets the current application.

      Will return null if called out of scope. The scope is set if you call this method from an ivy process or any supported ivy environment. It is not set in non supported ivy environments (e.g. if you start your own threads, etc.).

      Returns:
      current application or null if out of scope
      Since:
      9.1
      API:
      This public API is available in IvyScript and Java. It has the visibility EXPERT.