use of uk.ac.bbsrc.tgac.miso.core.data.type.DilutionFactor in project miso-lims by miso-lims.
the class Dtos method to.
public static Library to(@Nonnull LibraryDto from) {
Library to = null;
if (from instanceof DetailedLibraryDto) {
to = toDetailedLibrary((DetailedLibraryDto) from);
} else {
to = new LibraryImpl();
}
if (from.getId() != null)
to.setId(from.getId());
to.setAlias(from.getAlias());
to.setName(from.getName());
to.setDescription(from.getDescription());
to.setIdentificationBarcode(from.getIdentificationBarcode());
setBigDecimal(to::setConcentration, from.getConcentration());
to.setConcentrationUnits(from.getConcentrationUnits());
to.setLowQuality(from.getLowQuality());
if (from.getPaired() != null) {
to.setPaired(from.getPaired());
}
to.setPlatformType(PlatformType.get(from.getPlatformType()));
if (from.getParentSampleId() != null) {
to.setSample(new SampleImpl());
to.getSample().setId(from.getParentSampleId());
}
setObject(to::setLibrarySelectionType, LibrarySelectionType::new, from.getLibrarySelectionTypeId());
if (from.getLibraryStrategyTypeId() != null) {
LibraryStrategyType strat = new LibraryStrategyType();
strat.setId(from.getLibraryStrategyTypeId());
to.setLibraryStrategyType(strat);
}
if (from.getLibraryTypeId() != null) {
LibraryType type = new LibraryType();
type.setId(from.getLibraryTypeId());
if (from.getLibraryTypeAlias() != null)
type.setDescription(from.getLibraryTypeAlias());
to.setLibraryType(type);
}
setObject(to::setDetailedQcStatus, DetailedQcStatusImpl::new, from.getDetailedQcStatusId());
setString(to::setDetailedQcStatusNote, from.getDetailedQcStatusNote());
if (from.getIndex1Id() != null) {
Index tb1 = new Index();
tb1.setId(from.getIndex1Id());
to.setIndex1(tb1);
if (from.getIndex2Id() != null) {
Index tb2 = new Index();
tb2.setId(from.getIndex2Id());
to.setIndex2(tb2);
}
}
setBigDecimal(to::setInitialVolume, from.getInitialVolume());
setBigDecimal(to::setVolume, from.getVolume());
to.setVolumeUnits(from.getVolumeUnits());
setBigDecimal(to::setVolumeUsed, from.getVolumeUsed());
setBigDecimal(to::setNgUsed, from.getNgUsed());
to.setDnaSize(from.getDnaSize());
if (from.getKitDescriptorId() != null) {
KitDescriptor kitDescriptor = new KitDescriptor();
kitDescriptor.setId(from.getKitDescriptorId());
to.setKitDescriptor(kitDescriptor);
}
setString(to::setKitLot, from.getKitLot());
to.setLocationBarcode(from.getLocationBarcode());
to.setCreationDate(parseDate(from.getCreationDate()));
to.setBoxPosition((LibraryBoxPosition) makeBoxablePosition(from, (LibraryImpl) to));
to.setDiscarded(from.isDiscarded());
setObject(to::setSpikeIn, LibrarySpikeIn::new, from.getSpikeInId());
setBigDecimal(to::setSpikeInVolume, from.getSpikeInVolume());
setObject(to::setSpikeInDilutionFactor, from.getSpikeInDilutionFactor(), DilutionFactor::get);
setBoolean(to::setUmis, from.getUmis(), false);
setObject(to::setWorkstation, Workstation::new, from.getWorkstationId());
setObject(to::setThermalCycler, InstrumentImpl::new, from.getThermalCyclerId());
setObject(to::setSop, Sop::new, from.getSopId());
to.setCreationReceiptInfo(toReceiptTransfer(from, to));
return to;
}
Aggregations