public void markAsSeen(IUINotification notification) { if (notification == null) throw new CodingRuntimeException("Notification passed into markAsSeen is null."); DomainFactory factory = getDomainFactory(); NotificationVo notificationVo = NotificationVoAssembler.create( (Notifications) factory.getDomainObject(Notifications.class, notification.getINotificationId())); notificationVo.setSeen(Boolean.TRUE); notificationVo.setSeenAt(new DateTime()); notificationVo.validate(); try { factory.save(NotificationVoAssembler.extractNotifications(factory, notificationVo)); } catch (StaleObjectException e) { throw new RuntimeException(e); } }