001/* Copyright (C) 2014 konik.io 002 * 003 * This file is part of the Konik library. 004 * 005 * The Konik library is free software: you can redistribute it and/or modify 006 * it under the terms of the GNU Affero General Public License as 007 * published by the Free Software Foundation, either version 3 of the 008 * License, or (at your option) any later version. 009 * 010 * The Konik library is distributed in the hope that it will be useful, 011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 013 * GNU Affero General Public License for more details. 014 * 015 * You should have received a copy of the GNU Affero General Public License 016 * along with the Konik library. If not, see <http://www.gnu.org/licenses/>. 017 */ 018package io.konik.zugferd.entity; 019 020import io.konik.zugferd.unqualified.ZfDate; 021 022import javax.validation.Valid; 023import javax.xml.bind.annotation.XmlAccessType; 024import javax.xml.bind.annotation.XmlAccessorType; 025import javax.xml.bind.annotation.XmlElement; 026import javax.xml.bind.annotation.XmlType; 027 028/** 029 * = The period of time 030 * 031 */ 032@XmlAccessorType(XmlAccessType.FIELD) 033@XmlType(name = "SpecifiedPeriodType", propOrder = { "start", "end" }) 034public class Period { 035 036 @Valid 037 @XmlElement(name = "StartDateTime") 038 private ZfDate start; 039 040 @Valid 041 @XmlElement(name = "EndDateTime") 042 private ZfDate end; 043 044 045 /** 046 * Gets the start date time. 047 * 048 * @return the start date time 049 */ 050 public ZfDate getStart() { 051 return start; 052 } 053 054 /** 055 * Sets the start date time. 056 * 057 * @param start the new start date time 058 * @return the period 059 */ 060 public Period setStart(ZfDate start) { 061 this.start = start; 062 return this; 063 } 064 065 /** 066 * Gets the end date time. 067 * 068 * @return the end date time 069 */ 070 public ZfDate getEnd() { 071 return end; 072 } 073 074 /** 075 * Sets the end date time. 076 * 077 * @param end the new end date time 078 * @return the period 079 */ 080 public Period setEnd(ZfDate end) { 081 this.end = end; 082 return this; 083 } 084 085}