package pl.edu.icm.saos.api.dump.judgment.mapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import pl.edu.icm.saos.api.dump.judgment.item.representation.JudgmentItem; import pl.edu.icm.saos.api.services.dates.DateMapping; import pl.edu.icm.saos.api.single.judgment.mapping.JudgmentMapper; import pl.edu.icm.saos.persistence.model.Judgment; /** * Provides functionality for mapping {@link pl.edu.icm.saos.persistence.model.Judgment Judgment} fields * into {@link pl.edu.icm.saos.api.dump.judgment.item.representation.JudgmentItem JudgmentItem}. * @author pavtel */ @Service public class DumpJudgmentItemMapper { @Autowired private JudgmentMapper judgmentMapper; @Autowired private DateMapping dateMapping; //------------------------ LOGIC -------------------------- /** * Fills item's fields using judgment. * @param judgmentItem representation. * @param judgment to process. */ public void fillJudgmentFieldsToRepresentation(JudgmentItem judgmentItem, Judgment judgment){ judgmentItem.setId(judgment.getId()); judgmentItem.setCourtCases(judgmentMapper.toCourtCases(judgment.getCourtCases())); judgmentItem.setCourtReporters(judgmentMapper.toSimpleList(judgment.getCourtReporters())); judgmentItem.setJudges(judgmentMapper.toJudges(judgment.getJudges())); judgmentItem.setJudgmentDate(dateMapping.toISO8601Format(judgment.getJudgmentDate())); judgmentItem.setJudgmentType(judgment.getJudgmentType()); judgmentItem.setLegalBases(judgmentMapper.toSimpleList(judgment.getLegalBases())); judgmentItem.setSummary(judgment.getSummary()); judgmentItem.setTextContent(judgment.getRawTextContent()); judgmentItem.setSource(judgmentMapper.toSource(judgment.getSourceInfo())); judgmentItem.setDecision(judgment.getDecision()); judgmentItem.setReferencedRegulations(judgmentMapper.toReferencedRegulations(judgment.getReferencedRegulations())); judgmentItem.setCourtType(judgment.getCourtType()); judgmentItem.setKeywords(judgmentMapper.toListFromKeywords(judgment.getKeywords())); judgmentItem.setReferencedCourtCases(judgmentMapper.toReferencedCourtCases(judgment.getReferencedCourtCases())); judgmentItem.setReceiptDate(dateMapping.toISO8601Format(judgment.getReceiptDate())); judgmentItem.setMeansOfAppeal((judgment.getMeansOfAppeal() == null) ? null : judgment.getMeansOfAppeal().getName()); judgmentItem.setJudgmentResult((judgment.getJudgmentResult() == null) ? null : judgment.getJudgmentResult().getText()); judgmentItem.setLowerCourtJudgments(judgmentMapper.toSimpleList(judgment.getLowerCourtJudgments())); } //------------------------ SETTERS -------------------------- public void setJudgmentMapper(JudgmentMapper judgmentMapper) { this.judgmentMapper = judgmentMapper; } public void setDateMapping(DateMapping dateMapping) { this.dateMapping = dateMapping; } }