* @param strict true: throws exception if not found, false: returns null if not found
   * @return the RepositorEntry or null if strict=false
   * @throws AssertException if the softkey could not be found (strict=true)
   */
  public RepositoryEntry lookupRepositoryEntry(OLATResourceable resourceable, boolean strict) {
    OLATResource ores = OLATResourceManager.getInstance().findResourceable(resourceable);
    if (ores == null) {
      if (!strict) return null;
      throw new AssertException("Unable to fetch OLATResource for resourceable: " + resourceable.getResourceableTypeName() + ", " + resourceable.getResourceableId());
    }
    
    String query = "select v from org.olat.repository.RepositoryEntry v"+
      " inner join fetch v.olatResource as ores"+
      " where ores.key = :oreskey";
    DBQuery dbQuery = DBFactory.getInstance().createQuery(query);
    dbQuery.setLong("oreskey", ores.getKey().longValue());
    dbQuery.setCacheable(true);
    
    List result = dbQuery.list();
    int size = result.size();
    if (strict) {