code: public T getComponent(final String propertyValue) {
          final ComponentList<T> components = getComponents(propertyValue);
          if (!components.isEmpty()) {
              return components.get(0);
          }
          return null;
      }
docs: Returns the first component containing a property with the specified
  value.
  @param propertyValue the value of the property identified in the returned
  component
  @return a component or null if no component is found containing a property
  with the specified value