class GetAsyncOperationActor {

    public void getOperation(final GetAsyncOperationMessage message) throws GetAsyncOperationActorException {

        try {
            String token = message.getToken();
            IObject asyncOperation = collection.getAsyncOperation(token);
            if (asyncOperation == null) {
                throw new GetAsyncOperationActorException("Asynchronous operation by token " + token + " is null");
            }
            message.setAsyncOperation(asyncOperation);
        } catch (ChangeValueException | GetAsyncOperationException | ReadValueException e) {
            throw new GetAsyncOperationActorException("Can't get async operation by token.", e);
        }
    }

    public  GetAsyncOperationActor(final IObject params);

}