Browse Source

Merge pull request #11773 from abpframework/EngincanV/issue-11771

Docs: Hide Unnecessary Fields on Projects Endpoints
pull/11788/head
Yunus Emre Kalkan 5 years ago
committed by GitHub
parent
commit
07b8b65832
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 26
      modules/docs/src/Volo.Docs.Application/Volo/Docs/Projects/ProjectAppService.cs

26
modules/docs/src/Volo.Docs.Application/Volo/Docs/Projects/ProjectAppService.cs

@ -35,16 +35,22 @@ namespace Volo.Docs.Projects
{ {
var projects = await _projectRepository.GetListAsync(); var projects = await _projectRepository.GetListAsync();
return new ListResultDto<ProjectDto>( var projectDtos = new List<ProjectDto>(
ObjectMapper.Map<List<Project>, List<ProjectDto>>(projects) ObjectMapper.Map<List<Project>, List<ProjectDto>>(projects)
); );
return new ListResultDto<ProjectDto>(
projectDtos.Select(p => HidePrivateProperties(p)).ToList()
);
} }
public async Task<ProjectDto> GetAsync(string shortName) public async Task<ProjectDto> GetAsync(string shortName)
{ {
var project = await _projectRepository.GetByShortNameAsync(shortName); var project = await _projectRepository.GetByShortNameAsync(shortName);
return ObjectMapper.Map<Project, ProjectDto>(project); var projectDto = ObjectMapper.Map<Project, ProjectDto>(project);
return HidePrivateProperties(projectDto);
} }
public async Task<ListResultDto<VersionInfoDto>> GetVersionsAsync(string shortName) public async Task<ListResultDto<VersionInfoDto>> GetVersionsAsync(string shortName)
@ -140,5 +146,21 @@ namespace Volo.Docs.Projects
? (GithubVersionProviderSource) (long) project.ExtraProperties["GithubVersionProviderSource"] ? (GithubVersionProviderSource) (long) project.ExtraProperties["GithubVersionProviderSource"]
: GithubVersionProviderSource.Releases; : GithubVersionProviderSource.Releases;
} }
private ProjectDto HidePrivateProperties(ProjectDto project)
{
if (project.ExtraProperties.ContainsKey("GitHubAccessToken"))
{
project.ExtraProperties["GitHubAccessToken"] = null;
}
if (project.ExtraProperties.ContainsKey("GitHubUserAgent"))
{
project.ExtraProperties["GitHubUserAgent"] = null;
}
return project;
}
} }
} }

Loading…
Cancel
Save