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.validator.annotation.NotBlank;
021
022import javax.xml.bind.annotation.XmlAccessType;
023import javax.xml.bind.annotation.XmlAccessorType;
024import javax.xml.bind.annotation.XmlElement;
025import javax.xml.bind.annotation.XmlType;
026import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
027import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
028
029/**
030 * The parameter type used in document context.
031 * 
032 */
033@XmlAccessorType(XmlAccessType.FIELD)
034@XmlType(name = "DocumentContextParameterType", propOrder = { "id" })
035public class Parameter {
036
037   @NotBlank
038   @XmlElement(name = "ID")
039   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
040   private final String id;
041
042   /**
043    * Instantiates a new parameter.
044    */
045   Parameter() {
046      this.id = null;
047   }
048
049   /**
050    * Instantiates a new parameter.
051    *
052    * @param parameterValue the text parameter
053    */
054   public Parameter(String parameterValue) {
055      this.id = parameterValue;
056   }
057
058   /**
059    * Gets the value.
060    *
061    * @return the value
062    */
063   public String getId() {
064      return id;
065   }
066}