/* * Copyright (c) 2012 Data Harmonisation Panel * * All rights reserved. This program and the accompanying materials are made * available under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation, either version 3 of the License, * or (at your option) any later version. * * You should have received a copy of the GNU Lesser General Public License * along with this distribution. If not, see <http://www.gnu.org/licenses/>. * * Contributors: * 1Spatial PLC <http://www.1spatial.com> * HUMBOLDT EU Integrated Project #030962 * Data Harmonisation Panel <http://www.dhpanel.eu> */ package com.onespatial.jrc.tns.oml_to_rif.schema; import eu.esdihumboldt.hale.schemaprovider.model.AttributeDefinition; /** * A class that represents an XML attribute within a GML document. * * @author Simon Payne (Simon.Payne@1spatial.com) / 1Spatial Group Ltd. * @author Richard Sunderland (Richard.Sunderland@1spatial.com) / 1Spatial Group Ltd. * @author Simon Templer / Fraunhofer IGD */ public class GmlAttribute implements Comparable<GmlAttribute> { private final AttributeDefinition definition; /** * Create a GML attribute * * @param definition the attribute definition */ public GmlAttribute(AttributeDefinition definition) { super(); this.definition = definition; } /** * @return the definition */ public AttributeDefinition getDefinition() { return definition; } /** * @return int the min occurs value */ public int getMinOccurs() { return (int) definition.getMinOccurs(); } /** * @return int the max occurs value */ public int getMaxOccurs() { return (int) definition.getMaxOccurs(); } /** * @see Comparable#compareTo(Object) which this overrides. * @param other * {@link GmlAttribute} the one to compare with * @return int zero for equality, positive or negative to indicate * difference */ @Override public int compareTo(GmlAttribute other) { return definition.getName().compareTo(other.definition.getName()); } }