code: @Override
      public Iterable<T> findAll() {
          return inTransaction(new Callable<Iterable<T>>() {
              @Override
              public Iterable<T> call() throws Exception {
                  CriteriaQuery<T> cq = entityManager.getCriteriaBuilder().createQuery(entity);
                  Root<T> pet = cq.from(entity);
                  cq.select(pet);
                  return entityManager.createQuery(cq).getResultList();
              }
          });
      }
docs: Returns all instances of the entity.
  
  @return the instances, empty if none.