code: @Override
  	public T findOne(I id, QuerySpec querySpec) {
  		RegistryEntry entry = resourceRegistry.findEntry(resourceClass);
  		String idName = entry.getResourceInformation().getIdField().getUnderlyingName();
  
  		QuerySpec idQuerySpec = querySpec.duplicate();
  		idQuerySpec.addFilter(new FilterSpec(Arrays.asList(idName), FilterOperator.EQ, id));
  		Iterable<T> iterable = findAll(idQuerySpec);
  		Iterator<T> iterator = iterable.iterator();
  		if (iterator.hasNext()) {
  			T resource = iterator.next();
  			PreconditionUtil.assertFalse("expected unique result", iterator.hasNext());
  			return resource;
  		} else {
  			throw new ResourceNotFoundException("resource not found");
  		}
  	}
docs: Forwards to {@link #findAll(QuerySpec)}
  
  @param id
  of the resource
  @param querySpec
  for field and relation inclusion
  @return resource