/** * Convert {@link TraceData} value object into {@link TraceSequence} object with the given * depositor and {@link Entry}. * * @param traceData TraceData object to convert. * @param depositor Depositor email. * @param entry Entry to associate. * @return TraceSequence object. */ public static TraceSequence traceDataToTraceSequence( TraceData traceData, String depositor, Entry entry) { TraceSequence resultTraceSequence = new TraceSequence(); if (traceData == null) { return resultTraceSequence; } resultTraceSequence.setFilename(traceData.getFilename()); resultTraceSequence.setSequence(traceData.getSequence()); resultTraceSequence.setEntry(entry); resultTraceSequence.setDepositor(depositor); TraceSequenceAlignment traceSequenceAlignment = new TraceSequenceAlignment(); resultTraceSequence.setTraceSequenceAlignment(traceSequenceAlignment); if (traceData.getScore() >= 0) { traceSequenceAlignment.setScore(traceData.getScore()); traceSequenceAlignment.setStrand(traceData.getStrand()); traceSequenceAlignment.setQueryStart(traceData.getQueryStart()); traceSequenceAlignment.setQueryEnd(traceData.getQueryEnd()); traceSequenceAlignment.setSubjectStart(traceData.getSubjectStart()); traceSequenceAlignment.setSubjectEnd(traceData.getSubjectEnd()); traceSequenceAlignment.setQueryAlignment(traceData.getQueryAlignment()); traceSequenceAlignment.setSubjectAlignment(traceData.getSubjectAlignment()); } return resultTraceSequence; }