Class Ivy
- java.lang.Object
-
- ch.ivyteam.ivy.environment.Ivy
-
- Direct Known Subclasses:
IvyJSP
public class Ivy extends Object
This class defines the Java API to get access to all relevant environment data of ivy. It is the equivalent for the "ivy" environment variable in IvyScript or in JSP.Access to some features (e.g.
cms()
orcms
) are only possible within a certain scope (e.g. process request, etc.). If this scope is not available aEnvironmentNotAvailableException
is thrown.Some methods are only available depending on the request kind. If they are not available, they will return
null
. In such a case a method call on one of these fields will throw anIllegalStateException
.Newer features, like ivy.casemap, are not directly available by corresponding methods. Instead the methods
get(String)
andget(Class)
can be used. E.g.Ivy.get(ICaseMapService.class)
. All environment interfaces have also a static current method to get the current instance of them. E.g.IContentManagementSystem#current()
- API:
- This is a public API.
-
-
Field Summary
Fields Modifier and Type Field Description IDefaultBusinessCalendar
cal
IContentManagementSystem
cms
Provides access to thecontent management system
of the currently active project (process model version).IDataCacheContext
datacache
Provides access todata cache context
to manage application (global) and session (user-specific) data caches.IExtensions
extensions
Provides access to anyextensions
that are installed on the ivy server.IHtmlDialogContext
html
Provides access to the currentHTML dialog context
.ILogger
log
Provides access to the ivy logging subsystem.IPersistenceContext
persistence
Access to theIPersistenceContext
of the current process model version.BusinessDataRepository
repo
Provides access to theBusinessDataRepository
.IProcessModelVersionRequest
request
The currently executed processrequest
.IResponse
response
Theresponse
for the currently executed request.IRestClientContext
rest
Access torest clients
.ISecurity
security
Provides access to runtime information of thesecurity subsystem
(with respect to the current session).IWorkflowSession
session
Provides information about the currently activesession
.IGlobalVariableContext
var
Access tovariable context
to manage variables.IWorkflowContext
wf
Provides access to runtime information of theworkflow subsystem
(with respect to the current session).ICase
wfCase
The currently executedcase
.ITask
wfTask
The currently executedtask
.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static IDefaultBusinessCalendar
cal()
Returns the default business calendar.static IContentManagementSystem
cms()
Returns thecontent management system
of the currently active project (process model version).static IDataCacheContext
datacache()
Provides access todata cache context
to manage application (global) and session (user-specific) data caches.static IExtensions
extensions()
Gets access to anyextensions
that are installed on the ivy server.static <T> T
get(Class<T> type)
Provides access to the ivy variable member that is an instance of the given typestatic <T> T
get(String memberName)
Provides access to the ivy variable member with the given name.static Ivy
getInstance()
Returns the singleton ofIvy
.static IHtmlDialogContext
html()
Returns the currently runningHTML dialog context
.static Logger
log()
Gets the runtime log from the environment.static IPersistenceContext
persistence()
Returns thepersistence context
of the current process model version.static BusinessDataRepository
repo()
Provides access to theBusinessDataRepository
.static IProcessModelVersionRequest
request()
Returns the currently executed processrequest
.static IResponse
response()
Returns theresponse
for the currently executed request.static IRestClientContext
rest()
Access torest clients
.static ISecurity
security()
Returns thesecurity context
(with respect to the current session) to access runtime information of the security subsystem.static IWorkflowSession
session()
Returns the currently activesession
.static IGlobalVariableContext
var()
Access tovariable context
to manage variables (constants).static IWorkflowContext
wf()
Returns theworkflow context
(with respect to the current session) to access runtime information of the workflow subsystem.static ICase
wfCase()
Returns the currently executedcase
.static ITask
wfTask()
Returns the currently executedtask
.
-
-
-
Field Detail
-
cal
public final IDefaultBusinessCalendar cal
- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
request
public final IProcessModelVersionRequest request
The currently executed processrequest
.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
response
public final IResponse response
Theresponse
for the currently executed request.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
wf
public final IWorkflowContext wf
Provides access to runtime information of theworkflow subsystem
(with respect to the current session).- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
session
public final IWorkflowSession session
Provides information about the currently activesession
.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
wfCase
public final ICase wfCase
The currently executedcase
.
If thecase
is not available (e.g. on a static HTML page), anIllegalStateException
will be thrown on method invocation.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
wfTask
public final ITask wfTask
The currently executedtask
.
If thetask
is not available (e.g. on a static HTML page), anIllegalStateException
will be thrown on method invocation.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
security
public final ISecurity security
Provides access to runtime information of thesecurity subsystem
(with respect to the current session).- Since:
- 9.3
- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
cms
public final IContentManagementSystem cms
Provides access to thecontent management system
of the currently active project (process model version).- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
html
public final IHtmlDialogContext html
Provides access to the currentHTML dialog context
.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
log
public final ILogger log
Provides access to the ivy logging subsystem. Log entries are written to the categoryRuntimeLogCategory.USER
.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
extensions
public final IExtensions extensions
Provides access to anyextensions
that are installed on the ivy server.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
datacache
public final IDataCacheContext datacache
Provides access todata cache context
to manage application (global) and session (user-specific) data caches.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
persistence
public final IPersistenceContext persistence
Access to theIPersistenceContext
of the current process model version.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
var
public final IGlobalVariableContext var
Access tovariable context
to manage variables. The exact values depend on the currently active environment.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
rest
public final IRestClientContext rest
Access to
rest clients
.Example:
Ivy ivy = Ivy.getInstance(); String response = ivy.rest.client("myRestClient").request().get().readEntity(String.class);
- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
repo
public final BusinessDataRepository repo
Provides access to the
BusinessDataRepository
.- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
-
Method Detail
-
getInstance
public static Ivy getInstance()
Returns the singleton ofIvy
. Useful for access to the ivy fields in the same way as in IvyScript. So it possible to copy/paste code snippets forth and back from IvyScript to Java and vice versa.Example:
Ivy ivy = Ivy.getInstance(); ivy.cms.co("/Project/Banner");
- Returns:
- the singleton of
Ivy
. - API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
cal
public static IDefaultBusinessCalendar cal()
Returns the default business calendar.- Returns:
- The default business calendar.
- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
request
public static IProcessModelVersionRequest request()
Returns the currently executed processrequest
. Returnsnull
if not available.- Returns:
- the currently executed process
request
ornull
, if not available - Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
response
public static IResponse response()
- Returns:
IResponse
instance ornull
if not available.- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
persistence
public static IPersistenceContext persistence()
Returns thepersistence context
of the current process model version. Returnsnull
if not available.- Returns:
- the
IPersistenceContext
of the current process model version ornull
if not available. - Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
var
public static IGlobalVariableContext var()
Access tovariable context
to manage variables (constants). The exact values depend on the currently active environment.- Returns:
variable context
with defined variables.- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
rest
public static IRestClientContext rest()
Access to
rest clients
.Example:
String response = Ivy.rest().client("myRestClient").request().get().readEntity(String.class);
- Returns:
- rest clients
- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
repo
public static BusinessDataRepository repo()
Provides access to the
BusinessDataRepository
.- Returns:
- the Business Data Repository
- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
html
public static IHtmlDialogContext html()
Returns the currently runningHTML dialog context
. Returnsnull
if not available- Returns:
IHtmlDialogContext
instance ornull
- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
cms
public static IContentManagementSystem cms()
Returns thecontent management system
of the currently active project (process model version).- Returns:
- the
content management system
of the currently active project (i.e. process model version). - Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
session
public static IWorkflowSession session()
Returns the currently activesession
.- Returns:
- the currently active
session
. - Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
wf
public static IWorkflowContext wf()
Returns theworkflow context
(with respect to the current session) to access runtime information of the workflow subsystem.- Returns:
IWorkflowContext
instance- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
security
public static ISecurity security()
Returns thesecurity context
(with respect to the current session) to access runtime information of the security subsystem.- Returns:
ISecurityContext
instance- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- Since:
- 9.3
- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
wfCase
public static ICase wfCase()
Returns the currently executedcase
.- Returns:
- the currently executed
case
ornull
, if not available (e.g. on a static HTML page) - Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
wfTask
public static ITask wfTask()
Returns the currently executedtask
.- Returns:
- the currently executed
task
. ornull
, if not available (e.g. on a static HTML page) - Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
log
public static Logger log()
Gets the runtime log from the environment. Log entries are written to the categoryRuntimeLogCategory.USER
.- Returns:
- the ivy runtime log instance for the category
RuntimeLogCategory.USER
- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if accessing this method outside a request thread- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
extensions
public static IExtensions extensions()
Gets access to anyextensions
that are installed on the ivy server.- Returns:
- interface to access ivy extensions
- Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if environment is not available- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
datacache
public static IDataCacheContext datacache()
Provides access todata cache context
to manage application (global) and session (user-specific) data caches.- Returns:
- the
data cache context
to access data caches - Throws:
ch.ivyteam.ivy.environment.EnvironmentNotAvailableException
- if environment is not available- API:
- This public API is available in IvyScript and Java. It has the visibility NOVICE.
-
get
public static <T> T get(String memberName)
Provides access to the ivy variable member with the given name.
Example:
import ch.ivyteam.ivy.globalvars.IGlobalVariableContext; IGlobalVariableContext var = Ivy.get("var");
- Parameters:
memberName
- name of the member of the ivy variable- Returns:
- value of the member or null if member does not exist
- API:
- This public API is available in IvyScript and Java. It has the visibility ADVANCED.
-
get
public static <T> T get(Class<T> type)
Provides access to the ivy variable member that is an instance of the given type
Example:
import ch.ivyteam.ivy.globalvars.IGlobalVariableContext; IGlobalVariableContext var = Ivy.get(IGlobalVariableContext.class);
- Parameters:
type
- the type of the member of the ivy variable- Returns:
- value of the member or null if member does not exist
- API:
- This public API is available in IvyScript and Java. It has the visibility ADVANCED.
-
-