public RepositoryShadowResource getRepositoryShadowRestModel(
      Request request, ShadowRepository shadow) {
    RepositoryShadowResource resource = new RepositoryShadowResource();

    resource.setId(shadow.getId());

    resource.setName(shadow.getName());

    resource.setContentResourceURI(repositoryURLBuilder.getExposedRepositoryContentUrl(shadow));

    resource.setProvider(NexusCompat.getRepositoryProviderHint(shadow));

    resource.setRepoType(RepositoryBaseResourceConverter.REPO_TYPE_VIRTUAL);

    resource.setFormat(shadow.getRepositoryContentClass().getId());

    resource.setShadowOf(shadow.getMasterRepository().getId());

    resource.setSyncAtStartup(shadow.isSynchronizeAtStartup());

    resource.setExposed(shadow.isExposed());

    return resource;
  }