private ExtRepositoryFileVersionAdapter _toExtRepositoryFileVersionAdapter(
      ExtRepositoryFileEntryAdapter extRepositoryFileEntryAdapter,
      ExtRepositoryFileVersion extRepositoryFileVersion)
      throws PortalException {

    ExtRepositoryAdapterCache extRepositoryAdapterCache = ExtRepositoryAdapterCache.getInstance();

    String extRepositoryModelKey = extRepositoryFileVersion.getExtRepositoryModelKey();

    ExtRepositoryFileVersionAdapter extRepositoryVersionAdapter =
        extRepositoryAdapterCache.get(extRepositoryModelKey);

    if (extRepositoryVersionAdapter == null) {
      RepositoryEntry repositoryEntry = getRepositoryEntry(extRepositoryModelKey);

      extRepositoryVersionAdapter =
          new ExtRepositoryFileVersionAdapter(
              this,
              repositoryEntry.getRepositoryEntryId(),
              repositoryEntry.getUuid(),
              extRepositoryFileEntryAdapter,
              extRepositoryFileVersion);

      extRepositoryAdapterCache.put(extRepositoryVersionAdapter);
    }

    return extRepositoryVersionAdapter;
  }