Search in sources :

Example 1 with ProcessFieldResponseModel

use of com.synopsys.integration.azure.boards.common.service.process.ProcessFieldResponseModel in project hub-alert by blackducksoftware.

the class AzureCustomFieldManager method installCustomFields.

public void installCustomFields(String projectName, String workItemTypeName) throws AlertException {
    List<Future<ProjectWorkItemFieldModel>> projectFieldFindOrCreateHolders = new ArrayList<>(7);
    for (AzureCustomFieldDescriptor fieldDesc : AZURE_CUSTOM_FIELDS) {
        Future<ProjectWorkItemFieldModel> fieldFindOrCreateHolder = executorService.submit(() -> findOrCreateAlertCustomProjectField(projectName, fieldDesc.getFieldName(), fieldDesc.getFieldReferenceName(), fieldDesc.getFieldDescription()));
        projectFieldFindOrCreateHolders.add(fieldFindOrCreateHolder);
    }
    TeamProjectReferenceResponseModel project = getProject(projectName);
    String processId = getProjectPropertyValue(project, ProjectPropertyResponseModel.COMMON_PROPERTIES_PROCESS_ID);
    String workItemTypeRefName = getWorkItemTypeRefName(processId, workItemTypeName);
    List<Future<ProcessFieldResponseModel>> processFieldAdditionHolders = new ArrayList<>(7);
    for (Future<ProjectWorkItemFieldModel> projectFieldFuture : projectFieldFindOrCreateHolders) {
        ProjectWorkItemFieldModel projectField = extractFutureResult(projectFieldFuture);
        Future<ProcessFieldResponseModel> processFieldAdditionHolder = executorService.submit(() -> addAlertCustomFieldToProcess(processId, workItemTypeRefName, projectField));
        processFieldAdditionHolders.add(processFieldAdditionHolder);
    }
    for (Future<ProcessFieldResponseModel> processFieldAdditionHolder : processFieldAdditionHolders) {
        extractFutureResult(processFieldAdditionHolder);
    }
}
Also used : ProcessFieldResponseModel(com.synopsys.integration.azure.boards.common.service.process.ProcessFieldResponseModel) ProjectWorkItemFieldModel(com.synopsys.integration.azure.boards.common.service.project.ProjectWorkItemFieldModel) ArrayList(java.util.ArrayList) Future(java.util.concurrent.Future) TeamProjectReferenceResponseModel(com.synopsys.integration.azure.boards.common.service.project.TeamProjectReferenceResponseModel)

Aggregations

ProcessFieldResponseModel (com.synopsys.integration.azure.boards.common.service.process.ProcessFieldResponseModel)1 ProjectWorkItemFieldModel (com.synopsys.integration.azure.boards.common.service.project.ProjectWorkItemFieldModel)1 TeamProjectReferenceResponseModel (com.synopsys.integration.azure.boards.common.service.project.TeamProjectReferenceResponseModel)1 ArrayList (java.util.ArrayList)1 Future (java.util.concurrent.Future)1