ReaderEventRestPojo.java 1.89 KB
package fi.codecrew.moya.rest.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.xml.bind.annotation.XmlElement;

import fi.codecrew.moya.enums.CardState;
import fi.codecrew.moya.model.ReaderEvent;

public class ReaderEventRestPojo {
	private ReaderEvent event;
	private EventUserRestPojo eventUser;
	private PrintedCardRestPojo printedCard;

	public ReaderEventRestPojo() {
	}

	public ReaderEventRestPojo(ReaderEvent re) {
		this.event = re;
		if (re != null && re.getPrintedCard() != null) {
			if (re.getPrintedCard().getUser() != null) {
				eventUser = new EventUserRestPojo(re.getPrintedCard().getUser());
			}
		}
	}

	@XmlElement(name = "eventuser")
	public EventUserRestPojo getEventuser() {
		return eventUser;
	}

	@XmlElement(name = "readerEventId")
	public Integer getEventId() {
		return event.getId();
	}

	@XmlElement(name = "readerEventTime")
	public Date getEventTime() {
		return event.getUpdatetime();
	}

	@XmlElement(name = "readerId")
	public Integer getReaderId() {
		return event.getReader().getId();
	}

	@XmlElement(name = "printedCardId")
	public Integer getPrintedCardId()
	{
		Integer ret = null;
		if (event != null && event.getPrintedCard() != null)
		{
			ret = event.getPrintedCard().getId();
		}
		return ret;
	}

	@XmlElement(name = "printedCardState")
	public CardState getPrintedCardState()
	{
		CardState ret = null;
		if (event != null && event.getPrintedCard() != null) {
			ret = event.getPrintedCard().getCardState();
		}
		return ret;
	}

	public static List<ReaderEventRestPojo> parse(List<ReaderEvent> readers) {

		List<ReaderEventRestPojo> ret = new ArrayList<>();
		for (ReaderEvent re : readers)
		{
			ret.add(new ReaderEventRestPojo(re));
		}
		return ret;
	}

	public PrintedCardRestPojo getPrintedCard() {
		return printedCard;
	}

	public void setPrintedCard(PrintedCardRestPojo printedCard) {
		this.printedCard = printedCard;
	}
}