code: @SuppressWarnings("unchecked")
      public <T extends ItemInfoImpl> T getInfo(final Object item) {
          final Class<?> itemType = getType(item);
          return (T) detailsHolder.get(itemType);
      }
docs: Note: registration is always tracked by class, so when instance provided actual info will be returned
  for object class.
  
  @param item item to get info
  @param <T>  expected container type
  @return item registration info container or null if item not registered