public class ServerAPIImpl extends Object implements ServerAPI
| Modifier and Type | Class and Description |
|---|---|
protected static class |
ServerAPIImpl.SessionType |
| Modifier and Type | Field and Description |
|---|---|
protected APIAccessResolver |
accessResolver |
| Constructor and Description |
|---|
ServerAPIImpl() |
ServerAPIImpl(boolean cleanSession) |
ServerAPIImpl(boolean cleanSession,
APIAccessResolver accessResolver)
For Test Mock usage
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
checkIsValidModeFor(boolean tenantRunning,
AvailableWhenTenantIsPaused annotation,
long tenantId,
Object apiImpl,
Method method,
String apiInterfaceName) |
protected void |
checkMethodAccessibility(Object apiImpl,
String apiInterfaceName,
Method method,
Session session,
boolean isAlreadyInTransaction) |
protected void |
checkTenantIsInAValidModeFor(Object apiImpl,
Method method,
String apiInterfaceName,
long tenantId,
Session session,
boolean isAlreadyInTransaction) |
protected Class<?>[] |
getParameterTypes(List<String> classNameParameters) |
protected ServerAPIImpl.SessionType |
getSessionType(Session session) |
protected Object |
invokeAPI(Method method,
Object apiImpl,
Object... parametersValues) |
protected Object |
invokeAPIInTransaction(Object[] parametersValues,
Object apiImpl,
Method method,
Session session,
String apiInterfaceName) |
protected Object |
invokeAPIOutsideTransaction(Object[] parametersValues,
Object apiImpl,
Method method,
String apiInterfaceName,
Session session) |
Object |
invokeMethod(Map<String,Serializable> options,
String apiInterfaceName,
String methodName,
List<String> classNameParameters,
Object[] parametersValues) |
protected boolean |
isMethodAvailableOnPausedTenant(boolean tenantRunning,
AvailableWhenTenantIsPaused annotation) |
protected boolean |
isMethodAvailableOnRunningTenant(boolean tenantRunning,
AvailableWhenTenantIsPaused annotation) |
protected boolean |
isNodeInAValidStateFor(Method method) |
protected boolean |
isTenantAvailable(long tenantId,
Session session,
boolean isAlreadyInTransaction) |
protected void |
logNodeNotStartedMessage(String apiInterfaceName,
Method method) |
protected void |
logTechnicalErrorMessage(String message) |
protected void |
methodCannotBeCalledOnPausedTenant(Object apiImpl,
String apiInterfaceName,
Method method,
long tenantId) |
protected void |
methodCannotBeCalledOnRunningTenant(Object apiImpl,
String apiInterfaceName,
Method method,
long tenantId) |
protected org.bonitasoft.engine.transaction.UserTransactionService |
selectUserTransactionService(Session session,
ServerAPIImpl.SessionType sessionType) |
protected BonitaRuntimeException |
wrapThrowable(Throwable cause) |
protected final APIAccessResolver accessResolver
public ServerAPIImpl()
public ServerAPIImpl(boolean cleanSession)
public ServerAPIImpl(boolean cleanSession,
APIAccessResolver accessResolver)
public Object invokeMethod(Map<String,Serializable> options, String apiInterfaceName, String methodName, List<String> classNameParameters, Object[] parametersValues) throws ServerWrappedException
invokeMethod in interface ServerAPIServerWrappedExceptionprotected BonitaRuntimeException wrapThrowable(Throwable cause)
protected ServerAPIImpl.SessionType getSessionType(Session session)
protected Object invokeAPIOutsideTransaction(Object[] parametersValues, Object apiImpl, Method method, String apiInterfaceName, Session session) throws Throwable
Throwableprotected void checkMethodAccessibility(Object apiImpl, String apiInterfaceName, Method method, Session session, boolean isAlreadyInTransaction)
protected void checkTenantIsInAValidModeFor(Object apiImpl, Method method, String apiInterfaceName, long tenantId, Session session, boolean isAlreadyInTransaction)
protected void checkIsValidModeFor(boolean tenantRunning,
AvailableWhenTenantIsPaused annotation,
long tenantId,
Object apiImpl,
Method method,
String apiInterfaceName)
protected void methodCannotBeCalledOnRunningTenant(Object apiImpl, String apiInterfaceName, Method method, long tenantId)
protected void methodCannotBeCalledOnPausedTenant(Object apiImpl, String apiInterfaceName, Method method, long tenantId)
protected boolean isMethodAvailableOnPausedTenant(boolean tenantRunning,
AvailableWhenTenantIsPaused annotation)
protected boolean isMethodAvailableOnRunningTenant(boolean tenantRunning,
AvailableWhenTenantIsPaused annotation)
protected boolean isTenantAvailable(long tenantId,
Session session,
boolean isAlreadyInTransaction)
tenantId - the ID of the tenant to checksession - the session to userisAlreadyInTransaction - if the request is made in a transactionprotected void logNodeNotStartedMessage(String apiInterfaceName, Method method)
protected void logTechnicalErrorMessage(String message)
protected boolean isNodeInAValidStateFor(Method method)
protected Object invokeAPIInTransaction(Object[] parametersValues, Object apiImpl, Method method, Session session, String apiInterfaceName) throws Throwable
Throwableprotected org.bonitasoft.engine.transaction.UserTransactionService selectUserTransactionService(Session session, ServerAPIImpl.SessionType sessionType) throws BonitaHomeNotSetException, InstantiationException, IllegalAccessException, ClassNotFoundException, IOException, BonitaHomeConfigurationException
protected Object invokeAPI(Method method, Object apiImpl, Object... parametersValues) throws Throwable
Throwableprotected Class<?>[] getParameterTypes(List<String> classNameParameters) throws ClassNotFoundException
ClassNotFoundExceptionCopyright © 2016 Bonitasoft S.A.. All rights reserved.