sPFFramework/src/main/java/it/polimi/spf/framework/local/SPFServiceManagerImpl.java
@Override
	public InvocationResponse executeLocalService(String accessToken, InvocationRequest request, SPFError error) throws RemoteException {
		Utils.logCall(TAG, "executeLocalService", accessToken, request, error);

		try {
			mSecurityMonitor.validateAccess(accessToken, Permission.EXECUTE_LOCAL_SERVICES);
		} catch (TokenNotValidException e) {
			error.setCode(SPFError.TOKEN_NOT_VALID_ERROR_CODE);
			return null;
		} catch (PermissionDeniedException e) {
			error.setError(SPFError.PERMISSION_DENIED_ERROR_CODE, "Missing capability: " + Permission.EXECUTE_LOCAL_SERVICES);
			return null;
		}

		try {
			return SPF.get().getServiceRegistry().dispatchInvocation(request);
		} catch (Throwable t) {
			error.setError(SPFError.REMOTE_EXC_ERROR_CODE, t.getClass().getSimpleName());
			return null;
		}
	}
@Override
	public InvocationResponse executeLocalService(String accessToken, InvocationRequest request, SPFError error) throws RemoteException {
		Utils.logCall(TAG, "executeLocalService", accessToken, request, error);

		try {
			mSecurityMonitor.validateAccess(accessToken, Permission.EXECUTE_LOCAL_SERVICES);
		} catch (TokenNotValidException e) {
			error.setCode(SPFError.TOKEN_NOT_VALID_ERROR_CODE);
			return null;
		} catch (PermissionDeniedException e) {
			error.setError(SPFError.PERMISSION_DENIED_ERROR_CODE, "Missing capability: " + Permission.EXECUTE_LOCAL_SERVICES);
			return null;
		}

		try {
			return SPF.get().getServiceRegistry().dispatchInvocation(request);
		} catch (Throwable t) {
			error.setError(SPFError.REMOTE_EXC_ERROR_CODE, t.getClass().getSimpleName());
			return null;
		}
	}
/*
(non-Javadoc)

@see
it.polimi.spf.framework.local.LocalServiceManager#executeLocalService
(java.lang.String, it.polimi.spf.framework.local.InvocationRequest)