| Type | Name and description |
|---|---|
java.util.Map<java.lang.String, java.lang.Object> |
call()Call the service synchronously and immediately get the result. |
ServiceCallSync |
disableAuthz()Disable authorization for the current thread during this service call. |
ServiceCallSync |
ignorePreviousError(boolean ipe)Normally service won't run if there was an error (ec.message.hasError()), set this to true to run anyway. |
ServiceCallSync |
ignoreTransaction(boolean ignoreTransaction)By default a service uses the existing transaction or begins a new one if no tx is in place. |
ServiceCallSync |
multi(boolean mlt)If true expect multiple sets of parameters passed in a single map, each set with a suffix of an underscore and the row of the number, ie something like "userId_8" for the userId parameter in the 8th row. |
ServiceCallSync |
name(java.lang.String serviceName)Name of the service to run. |
ServiceCallSync |
name(java.lang.String verb, java.lang.String noun) |
ServiceCallSync |
name(java.lang.String path, java.lang.String verb, java.lang.String noun) |
ServiceCallSync |
parameter(java.lang.String name, java.lang.Object value)Single name, value pairs to put in the context (in parameters) passed to the service. |
ServiceCallSync |
parameters(java.util.Map<java.lang.String, ?> context)Map of name, value pairs that make up the context (in parameters) passed to the service. |
ServiceCallSync |
requireNewTransaction(boolean requireNewTransaction)If true suspend/resume the current transaction (if a transaction is active) and begin a new transaction for the scope of this service call. |
ServiceCallSync |
transactionTimeout(int timeout)Override the transaction-timeout attribute in the service definition, only used if a transaction is begun in this service call. |
ServiceCallSync |
useTransactionCache(boolean useTransactionCache)Use the write-through TransactionCache. |
| Methods inherited from class | Name |
|---|---|
interface ServiceCall |
getCurrentParameters, getServiceName |
Call the service synchronously and immediately get the result.
Disable authorization for the current thread during this service call.
Normally service won't run if there was an error (ec.message.hasError()), set this to true to run anyway.
By default a service uses the existing transaction or begins a new one if no tx is in place. Set this flag to ignore the transaction, not checking for one or starting one if no transaction is in place.
If true expect multiple sets of parameters passed in a single map, each set with a suffix of an underscore and the row of the number, ie something like "userId_8" for the userId parameter in the 8th row.
Name of the service to run. The combined service name, like: "${path}.${verb}${noun}". To explicitly separate the verb and noun put a hash (#) between them, like: "${path}.${verb}#${noun}" (this is useful for calling the implicit entity CrUD services where verb is create, update, or delete and noun is the name of the entity).
Single name, value pairs to put in the context (in parameters) passed to the service.
Map of name, value pairs that make up the context (in parameters) passed to the service.
If true suspend/resume the current transaction (if a transaction is active) and begin a new transaction for the scope of this service call.
Override the transaction-timeout attribute in the service definition, only used if a transaction is begun in this service call.
Use the write-through TransactionCache. WARNING: test thoroughly with this. While various services will run much faster there can be issues with no changes going to the database until commit (for view-entity queries depending on data, etc). Some known limitations: - find list and iterate don't cache results (but do filter and add to results aside from limitations below) - EntityListIterator.getPartialList() and iterating through results with next/previous does not add created values - find with DB limit will return wrong number of values if deleted values were in the results - find count doesn't add for created values, subtract for deleted values, and for updates if old matched and new doesn't subtract and vice-versa - view-entities won't work, they don't incorporate results from TX Cache - if a value is created or updated, then a record with FK is created, then the value is updated again commit writes may fail with FK violation (see update() method for other notes) - queries that do for-update may be unreliable as with the TX cache in place we only do a query to lock the value but don't merge the results