code: @SuppressWarnings("unchecked")
      @Override
      public <T> T get(final WaveItem<T> waveItem) {
          return (T) (this.waveItemsMap.containsKey(waveItem)
                  ? this.waveItemsMap.get(waveItem).value()
                  : waveItem.name() != null ? waveBeanGet(waveItem) : null);
      }
docs: {@inheritDoc}