/** * Gets the Vaadin service from which this event originates. * * @return the Vaadin service instance */ public VaadinService getService() { return getSource(); }
private void sessionInit(SessionInitEvent sessionInitEvent) throws ServiceException { VaadinSession session = sessionInitEvent.getSession(); lookup(ErrorHandler.class).ifPresent(session::setErrorHandler); beanManager.fireEvent(sessionInitEvent); }
private void onVaadinSessionStarted(VaadinRequest request, VaadinSession session) { SessionInitEvent event = new SessionInitEvent(this, session, request); for (SessionInitListener listener : sessionInitListeners) { try { listener.sessionInit(event); } catch (Exception e) { /* * for now, use the session error handler; in the future, could * have an API for using some other handler for session init and * destroy listeners */ session.getErrorHandler().error(new ErrorEvent(e)); } } }
private void sessionInit(SessionInitEvent sessionInitEvent) throws ServiceException { VaadinSession session = sessionInitEvent.getSession(); lookup(ErrorHandler.class).ifPresent(session::setErrorHandler); beanManager.fireEvent(sessionInitEvent); }
@Override public void serviceInit(ServiceInitEvent event) { // Session event.getSource().addSessionInitListener(e -> { // DeviceInfo registry is available if (e.getSession().getAttribute(DeviceInfoRegistry.class) == null) { e.getSession().setAttribute(DeviceInfoRegistry.class, new DefaultDeviceInfoRegistry()); } }); // UI init event.getSource().addUIInitListener(e -> { if (e.getUI().getSession() != null) { // configure DeviceInfo final DeviceInfoRegistry registry = e.getUI().getSession().getAttribute(DeviceInfoRegistry.class); if (registry != null && !registry.hasDeviceInfo(e.getUI())) { final VaadinRequest request = VaadinRequest.getCurrent(); if (request != null) { registry.setDeviceInfo(e.getUI(), DeviceInfo.create(e.getUI(), request)); // log LOGGER.debug(() -> "A DeviceInfo was configured for UI with id [" + e.getUI().getUIId() + "]"); } } } }); }