Example #1
0
  /** {@inheritDoc} */
  @Override
  public void onValueChange(final ValueChangeEvent<String> event) {
    try {

      final PageRequest pageRequest = PageRequest.fromString(event.getValue(), pages);

      // A popup page cannot be accessed directly by URL modification (such as <a> elements).
      if (isPopupView(pageRequest.getPage())) {
        if (Log.isInfoEnabled()) {
          Log.info("Popup page '" + pageRequest + "' cannot be accessed directly by URL.");
        }
        eventBus.navigate(null);
      } else {
        eventBus.fireEvent(new PageRequestEvent(pageRequest, true));
      }

    } catch (final PageParsingException e) {
      eventBus.navigate(null);
    }
  }