class PushNotificationSubscriptionRequestServiceImpl implements PushNotificationSubscriptionRequestService {

    @Transactional
    @Nonnull
    @Override
    public PushNotificationSubscriptionRequest updatePushNotificationSubscriptionRequestState(@Nonnull final Long requestId, @Nonnull final PushNotificationSubscriptionRequestState state) {
        assertPushNotificationSubscriptionRequestId(requestId);
        Assert.notNull(state, "Push notification request state should not be null");
        LOGGER.debug("Updating push notification request state for request with id - {}, state - {}", requestId, state);
        PushNotificationSubscriptionRequest request = pushNotificationSubscriptionRequestRepository.findById(requestId)
                .orElseThrow(() -> new PushNotificationSubscriptionRequestNotFoundForIdException(requestId));
        // Update state and persist
        request.setState(state);
        request.setUpdated(LocalDateTime.now());
        request = pushNotificationSubscriptionRequestRepository.save(request);
        LOGGER.debug("Successfully updated push notification request state for request with id - {}, request - {}", request.getId(), request);
        return request;
    }

    public  PushNotificationSubscriptionRequestServiceImpl();

}