code: public Reference get(Reference reference)
      {
          final Criteria crit = sessionService.getSession().createCriteria(Reference.class);
  
  		if (StringUtil.isEmpty(reference.getSections()))
  		{
  			crit.add(Restrictions.isNull("sections"));
  		}
  		else
  		{
  			crit.add(Restrictions.eq("sections", reference.getSections()));			
  		}
  		
  		crit.createAlias("requirement", "req");
          crit.add(Restrictions.eq("req.name", reference.getRequirement().getName()));
          crit.createAlias("req.repository", "reqRepo");
          crit.add(Restrictions.eq("reqRepo.uid", reference.getRequirement().getRepository().getUid()));
          crit.createAlias("specification", "spec");
          crit.add(Restrictions.eq("spec.name", reference.getSpecification().getName()));
          crit.createAlias("spec.repository", "specRepo");
          crit.add(Restrictions.eq("specRepo.uid", reference.getSpecification().getRepository().getUid()));
          crit.createAlias("systemUnderTest", "sut");
          crit.add(Restrictions.eq("sut.name", reference.getSystemUnderTest().getName()));
          crit.createAlias("sut.project", "sp");
          crit.add(Restrictions.eq("sp.name", reference.getSystemUnderTest().getProject().getName()));
  
          Reference result = (Reference)crit.uniqueResult();
  		HibernateLazyInitializer.init(result);
  		return result;
  	}
docs: {@inheritDoc}