private static Map<String, Sample> toArraySamples(List<ArraySampleDto> dtos) { Map<String, Sample> samples = new HashMap<>(); if (dtos != null) { for (ArraySampleDto dto : dtos) { Sample sample = new SampleImpl(); sample.setId(dto.getId()); sample.setAlias(dto.getAlias()); sample.setName(dto.getName()); sample.setIdentificationBarcode(dto.getIdentificationBarcode()); samples.put(dto.getCoordinates(), sample); } } return samples; }
private SampleIdentity createParentIdentity(DetailedSample sample, SampleIdentity identity) throws IOException, MisoNamingException, SQLException { log.debug("Creating a new Identity to use as a parent."); List<SampleClass> identityClasses = sampleClassService.listByCategory(SampleIdentity.CATEGORY_NAME); if (identityClasses.size() != 1) { throw new IllegalStateException("Found more or less than one SampleClass of category " + SampleIdentity.CATEGORY_NAME + ". Cannot choose which to use as root sample class."); } SampleClass rootSampleClass = identityClasses.get(0); confirmExternalNameUniqueForProjectIfRequired(identity.getExternalName(), sample); Sample identitySample = new IdentityBuilder().project(sample.getProject()) .sampleType(sample.getSampleType()).scientificName(sample.getScientificName()).name(generateTemporaryName()) .rootSampleClass(rootSampleClass).volume(0D).externalName(identity.getExternalName()) .donorSex(identity.getDonorSex()).consentLevel(identity.getConsentLevel()).build(); identitySample.setAlias(namingScheme.generateSampleAlias(identitySample)); identitySample.setChangeDetails(authorizationManager.getCurrentUser()); identitySample.inheritPermissions(sample.getProject()); return (SampleIdentity) save(identitySample, true); }
created.setAlias(generatedAlias); if (isDetailedSample(created)) {
sample.setAlias(generateTemporaryName());
to.setScientificName(from.getScientificName()); to.setTaxonIdentifier(from.getTaxonIdentifier()); to.setAlias(from.getAlias()); to.setDescription(from.getDescription()); to.setVolume(isStringEmptyOrNull(from.getVolume()) ? null : Double.valueOf(from.getVolume()));
target.setAlias(source.getAlias()); target.setDescription(source.getDescription()); target.setDiscarded(source.isDiscarded());