/**
   * Method description
   *
   * @param manager
   * @return
   * @throws IOException
   * @throws RepositoryException
   */
  @Override
  public List<String> importRepositories(RepositoryManager manager)
      throws IOException, RepositoryException {
    List<String> imported = new ArrayList<String>();

    if (logger.isTraceEnabled()) {
      logger.trace("search for repositories to import");
    }

    List<String> repositoryNames =
        RepositoryUtil.getRepositoryNames(getRepositoryHandler(), getDirectoryNames());

    for (String repositoryName : repositoryNames) {
      if (logger.isTraceEnabled()) {
        logger.trace("check repository {} for import", repositoryName);
      }

      Repository repository = manager.get(getTypeName(), repositoryName);

      if (repository == null) {
        importRepository(manager, repositoryName);
        imported.add(repositoryName);
      } else if (logger.isDebugEnabled()) {
        logger.debug("repository {} is allready managed", repositoryName);
      }
    }

    return imported;
  }
  private ExpansionRepository() {
    File file = new File("db");
    if (!file.exists()) {
      file.mkdirs();
    }
    try {
      ConnectionSource connectionSource = new JdbcConnectionSource(JDBC_URL);
      boolean obsolete =
          RepositoryUtil.isDatabaseObsolete(
              connectionSource, VERSION_ENTITY_NAME, EXPANSION_DB_VERSION);

      if (obsolete) {
        TableUtils.dropTable(connectionSource, ExpansionInfo.class, true);
      }

      TableUtils.createTableIfNotExists(connectionSource, ExpansionInfo.class);
      expansionDao = DaoManager.createDao(connectionSource, ExpansionInfo.class);
    } catch (SQLException ex) {
    }
  }
 public void onNewRepoInfo(@Observes final NewRepositoryInfo event) {
   repoList.appendChild(RepositoryUtil.newRepo(placeManager, event.getRepositoryInfo(), true));
 }
  public String authorName() {

    return RepositoryUtil.hasRepositoryAccess() ? RepositoryUtil.authorNameFor(resource) : null;
  }