code: @Override
      public <T> T getValue(String propertyName, Class<T> returnType) {
          return getContainer().getValue(propertyName, returnType);
      }
docs: Returns the value for the given property cast to the passed returnType.
  If the type of the property and the given return type are not compatible an exception will be thrown.
  If the passed propertyName is not a defined property, an exception is thrown.