private String getWsdl(final String projectId){ final ReadSoapProjectOutput projectOutput = this.serviceProcessor.process(ReadSoapProjectInput.builder() .projectId(projectId) .build()); final SoapProject soapProject = projectOutput.getProject(); return soapProject.getResources().stream() .filter(soapResource -> SoapResourceType.WSDL.equals(soapResource.getType())) .findFirst() .map(soapResource -> { final LoadSoapResourceOutput loadOutput = this.serviceProcessor.process(LoadSoapResourceInput.builder() .projectId(projectId) .resourceId(soapResource.getId()) .build()); return loadOutput.getResource(); }) .orElseThrow(() -> new IllegalArgumentException("Unable to find a WSDL file for the following project: " + projectId)); }
for(SoapResource resource : project.getResources()){ if(this.resourceRepository.exists(resource.getId())){ throw new IllegalArgumentException("A resource with the following key already exists: " + resource.getId());
resource.setType(soapResourceV1.getType()); resource.setProjectId(project.getId()); project.getResources().add(resource);