All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.javastro.ivoa.entities.resource.Rights Maven / Gradle / Ivy


package org.javastro.ivoa.entities.resource;

import java.util.HashMap;
import java.util.Map;
import javax.xml.namespace.QName;
import com.kscs.util.jaxb.Buildable;
import com.kscs.util.jaxb.Copyable;
import com.kscs.util.jaxb.PartialCopyable;
import com.kscs.util.jaxb.PropertyTree;
import com.kscs.util.jaxb.PropertyTreeUse;
import com.kscs.util.jaxb.PropertyVisitor;
import com.kscs.util.jaxb.SingleProperty;
import com.kscs.util.jaxb.SinglePropertyInfo;
import com.kscs.util.jaxb.SinglePropertyInfo;
import jakarta.annotation.Generated;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlAttribute;
import jakarta.xml.bind.annotation.XmlSchemaType;
import jakarta.xml.bind.annotation.XmlType;
import jakarta.xml.bind.annotation.XmlValue;
import jakarta.xml.bind.annotation.adapters.CollapsedStringAdapter;
import jakarta.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.jvnet.jaxb.lang.JAXBMergeStrategy;
import org.jvnet.jaxb.lang.JAXBToStringStrategy;
import org.jvnet.jaxb.lang.MergeFrom;
import org.jvnet.jaxb.lang.MergeStrategy;
import org.jvnet.jaxb.lang.ToString;
import org.jvnet.jaxb.lang.ToStringStrategy;
import org.jvnet.jaxb.locator.ObjectLocator;
import org.jvnet.jaxb.locator.util.LocatorUtils;


/**
 * A statement of usage conditions.  This will typically
 *             include a license,
 *             which should be given as a full string (e.g., Creative Commons
 *             Attribution 3.0 International).  Further free-text information,
 *             e.g., on how to attribute or on embargo periods is allowed.
 * 
 * 

Java class for Rights complex type

. * *

The following schema fragment specifies the expected content contained within this class.

* *
{@code
 * 
 *   
 *     
 *       
 *     
 *   
 * 
 * }
* * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "Rights", propOrder = { "value" }) @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public class Rights implements Cloneable, Copyable, PartialCopyable, MergeFrom, ToString { @XmlValue @XmlJavaTypeAdapter(CollapsedStringAdapter.class) @XmlSchemaType(name = "token") @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") protected String value; /** * Where formal licenses are available, this URI can * reference the full license text. The IVOA may define * standard URIs for a set of recommended * licenses, in which case these should be used here. * */ @XmlAttribute(name = "rightsURI") @XmlSchemaType(name = "anyURI") @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") protected String rightsURI; @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") protected transient Rights.Modifier __cachedModifier__; /** * Default no-arg constructor * */ public Rights() { super(); } /** * Fully-initialising value constructor * */ public Rights(final String value, final String rightsURI) { this.value = value; this.rightsURI = rightsURI; } /** * Gets the value of the value property. * * @return * possible object is * {@link String } * */ @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public String getValue() { return value; } /** * Sets the value of the value property. * * @param value * allowed object is * {@link String } * */ @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public void setValue(String value) { this.value = value; } /** * Where formal licenses are available, this URI can * reference the full license text. The IVOA may define * standard URIs for a set of recommended * licenses, in which case these should be used here. * * @return * possible object is * {@link String } * */ @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public String getRightsURI() { return rightsURI; } /** * Sets the value of the rightsURI property. * * @param value * allowed object is * {@link String } * * @see #getRightsURI() */ @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public void setRightsURI(String value) { this.rightsURI = value; } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public boolean equals(Object object) { if ((object == null)||(this.getClass()!= object.getClass())) { return false; } if (this == object) { return true; } final Rights that = ((Rights) object); { String leftValue; leftValue = this.getValue(); String rightValue; rightValue = that.getValue(); if (this.value!= null) { if (that.value!= null) { if (!leftValue.equals(rightValue)) { return false; } } else { return false; } } else { if (that.value!= null) { return false; } } } { String leftRightsURI; leftRightsURI = this.getRightsURI(); String rightRightsURI; rightRightsURI = that.getRightsURI(); if (this.rightsURI!= null) { if (that.rightsURI!= null) { if (!leftRightsURI.equals(rightRightsURI)) { return false; } } else { return false; } } else { if (that.rightsURI!= null) { return false; } } } return true; } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public int hashCode() { int currentHashCode = 1; { currentHashCode = (currentHashCode* 31); String theValue; theValue = this.getValue(); if (this.value!= null) { currentHashCode += theValue.hashCode(); } } { currentHashCode = (currentHashCode* 31); String theRightsURI; theRightsURI = this.getRightsURI(); if (this.rightsURI!= null) { currentHashCode += theRightsURI.hashCode(); } } return currentHashCode; } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public String toString() { final ToStringStrategy strategy = JAXBToStringStrategy.getInstance(); final StringBuilder buffer = new StringBuilder(); append(null, buffer, strategy); return buffer.toString(); } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) { strategy.appendStart(locator, this, buffer); appendFields(locator, buffer, strategy); strategy.appendEnd(locator, this, buffer); return buffer; } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) { { String theValue; theValue = this.getValue(); strategy.appendField(locator, this, "value", buffer, theValue, (this.value!= null)); } { String theRightsURI; theRightsURI = this.getRightsURI(); strategy.appendField(locator, this, "rightsURI", buffer, theRightsURI, (this.rightsURI!= null)); } return buffer; } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public void mergeFrom(Object left, Object right) { final MergeStrategy strategy = JAXBMergeStrategy.getInstance(); mergeFrom(null, null, left, right, strategy); } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public void mergeFrom(ObjectLocator leftLocator, ObjectLocator rightLocator, Object left, Object right, MergeStrategy strategy) { if (right instanceof Rights) { final Rights target = this; final Rights leftObject = ((Rights) left); final Rights rightObject = ((Rights) right); { Boolean valueShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, (leftObject.value!= null), (rightObject.value!= null)); if (valueShouldBeMergedAndSet == Boolean.TRUE) { String lhsValue; lhsValue = leftObject.getValue(); String rhsValue; rhsValue = rightObject.getValue(); String mergedValue = ((String) strategy.merge(LocatorUtils.property(leftLocator, "value", lhsValue), LocatorUtils.property(rightLocator, "value", rhsValue), lhsValue, rhsValue, (leftObject.value!= null), (rightObject.value!= null))); target.setValue(mergedValue); } else { if (valueShouldBeMergedAndSet == Boolean.FALSE) { target.value = null; } } } { Boolean rightsURIShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, (leftObject.rightsURI!= null), (rightObject.rightsURI!= null)); if (rightsURIShouldBeMergedAndSet == Boolean.TRUE) { String lhsRightsURI; lhsRightsURI = leftObject.getRightsURI(); String rhsRightsURI; rhsRightsURI = rightObject.getRightsURI(); String mergedRightsURI = ((String) strategy.merge(LocatorUtils.property(leftLocator, "rightsURI", lhsRightsURI), LocatorUtils.property(rightLocator, "rightsURI", rhsRightsURI), lhsRightsURI, rhsRightsURI, (leftObject.rightsURI!= null), (rightObject.rightsURI!= null))); target.setRightsURI(mergedRightsURI); } else { if (rightsURIShouldBeMergedAndSet == Boolean.FALSE) { target.rightsURI = null; } } } } } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Object createNewInstance() { return new Rights(); } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights clone() { final Rights _newObject; try { _newObject = ((Rights) super.clone()); } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } return _newObject; } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights createCopy() { final Rights _newObject; try { _newObject = ((Rights) super.clone()); } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } _newObject.value = this.value; _newObject.rightsURI = this.rightsURI; return _newObject; } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights createCopy(final PropertyTree _propertyTree, final PropertyTreeUse _propertyTreeUse) { final Rights _newObject; try { _newObject = ((Rights) super.clone()); } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } final PropertyTree valuePropertyTree = ((_propertyTree == null)?null:_propertyTree.get("value")); if (((_propertyTreeUse == PropertyTreeUse.INCLUDE)?(valuePropertyTree!= null):((valuePropertyTree == null)||(!valuePropertyTree.isLeaf())))) { _newObject.value = this.value; } final PropertyTree rightsURIPropertyTree = ((_propertyTree == null)?null:_propertyTree.get("rightsURI")); if (((_propertyTreeUse == PropertyTreeUse.INCLUDE)?(rightsURIPropertyTree!= null):((rightsURIPropertyTree == null)||(!rightsURIPropertyTree.isLeaf())))) { _newObject.rightsURI = this.rightsURI; } return _newObject; } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights copyExcept(final PropertyTree _propertyTree) { return createCopy(_propertyTree, PropertyTreeUse.EXCLUDE); } @Override @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights copyOnly(final PropertyTree _propertyTree) { return createCopy(_propertyTree, PropertyTreeUse.INCLUDE); } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights.Modifier modifier() { if (null == this.__cachedModifier__) { this.__cachedModifier__ = new Rights.Modifier(); } return ((Rights.Modifier) this.__cachedModifier__); } /** * Copies all state of this object to a builder. This method is used by the copyOf * method and should not be called directly by client code. * * @param _other * A builder instance to which the state of this object will be copied. */ @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public<_B >void copyTo(final Rights.Builder<_B> _other) { _other.value = this.value; _other.rightsURI = this.rightsURI; } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public<_B >Rights.Builder<_B> newCopyBuilder(final _B _parentBuilder) { return new Rights.Builder<_B>(_parentBuilder, this, true); } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights.Builder newCopyBuilder() { return newCopyBuilder(null); } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public static Rights.Builder builder() { return new Rights.Builder<>(null, null, false); } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public static<_B >Rights.Builder<_B> copyOf(final Rights _other) { final Rights.Builder<_B> _newBuilder = new Rights.Builder<>(null, null, false); _other.copyTo(_newBuilder); return _newBuilder; } /** * Copies all state of this object to a builder. This method is used by the copyOf * method and should not be called directly by client code. * * @param _other * A builder instance to which the state of this object will be copied. */ @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public<_B >void copyTo(final Rights.Builder<_B> _other, final PropertyTree _propertyTree, final PropertyTreeUse _propertyTreeUse) { final PropertyTree valuePropertyTree = ((_propertyTree == null)?null:_propertyTree.get("value")); if (((_propertyTreeUse == PropertyTreeUse.INCLUDE)?(valuePropertyTree!= null):((valuePropertyTree == null)||(!valuePropertyTree.isLeaf())))) { _other.value = this.value; } final PropertyTree rightsURIPropertyTree = ((_propertyTree == null)?null:_propertyTree.get("rightsURI")); if (((_propertyTreeUse == PropertyTreeUse.INCLUDE)?(rightsURIPropertyTree!= null):((rightsURIPropertyTree == null)||(!rightsURIPropertyTree.isLeaf())))) { _other.rightsURI = this.rightsURI; } } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public<_B >Rights.Builder<_B> newCopyBuilder(final _B _parentBuilder, final PropertyTree _propertyTree, final PropertyTreeUse _propertyTreeUse) { return new Rights.Builder<_B>(_parentBuilder, this, true, _propertyTree, _propertyTreeUse); } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights.Builder newCopyBuilder(final PropertyTree _propertyTree, final PropertyTreeUse _propertyTreeUse) { return newCopyBuilder(null, _propertyTree, _propertyTreeUse); } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public static<_B >Rights.Builder<_B> copyOf(final Rights _other, final PropertyTree _propertyTree, final PropertyTreeUse _propertyTreeUse) { final Rights.Builder<_B> _newBuilder = new Rights.Builder<>(null, null, false); _other.copyTo(_newBuilder, _propertyTree, _propertyTreeUse); return _newBuilder; } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public static Rights.Builder copyExcept(final Rights _other, final PropertyTree _propertyTree) { return copyOf(_other, _propertyTree, PropertyTreeUse.EXCLUDE); } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public static Rights.Builder copyOnly(final Rights _other, final PropertyTree _propertyTree) { return copyOf(_other, _propertyTree, PropertyTreeUse.INCLUDE); } @Generated(value = "com.sun.tools.xjc.Driver", comments = "JAXB RI v4.0.4", date = "2024-10-20T18:15:02+01:00") public Rights visit(final PropertyVisitor _visitor_) { _visitor_.visit(this); _visitor_.visit(new SingleProperty<>(Rights.PropInfo.VALUE, this)); _visitor_.visit(new SingleProperty<>(Rights.PropInfo.RIGHTS_URI, this)); return this; } public static class Builder<_B >implements Buildable { protected final _B _parentBuilder; protected final Rights _storedValue; private String value; private String rightsURI; public Builder(final _B _parentBuilder, final Rights _other, final boolean _copy) { this._parentBuilder = _parentBuilder; if (_other!= null) { if (_copy) { _storedValue = null; this.value = _other.value; this.rightsURI = _other.rightsURI; } else { _storedValue = _other; } } else { _storedValue = null; } } public Builder(final _B _parentBuilder, final Rights _other, final boolean _copy, final PropertyTree _propertyTree, final PropertyTreeUse _propertyTreeUse) { this._parentBuilder = _parentBuilder; if (_other!= null) { if (_copy) { _storedValue = null; final PropertyTree valuePropertyTree = ((_propertyTree == null)?null:_propertyTree.get("value")); if (((_propertyTreeUse == PropertyTreeUse.INCLUDE)?(valuePropertyTree!= null):((valuePropertyTree == null)||(!valuePropertyTree.isLeaf())))) { this.value = _other.value; } final PropertyTree rightsURIPropertyTree = ((_propertyTree == null)?null:_propertyTree.get("rightsURI")); if (((_propertyTreeUse == PropertyTreeUse.INCLUDE)?(rightsURIPropertyTree!= null):((rightsURIPropertyTree == null)||(!rightsURIPropertyTree.isLeaf())))) { this.rightsURI = _other.rightsURI; } } else { _storedValue = _other; } } else { _storedValue = null; } } public _B end() { return this._parentBuilder; } protected<_P extends Rights >_P init(final _P _product) { _product.value = this.value; _product.rightsURI = this.rightsURI; return _product; } /** * Sets the new value of "value" (any previous value will be replaced) * * @param value * New value of the "value" property. */ public Rights.Builder<_B> withValue(final String value) { this.value = value; return this; } /** * Sets the new value of "rightsURI" (any previous value will be replaced) * * @param rightsURI * New value of the "rightsURI" property. */ public Rights.Builder<_B> withRightsURI(final String rightsURI) { this.rightsURI = rightsURI; return this; } @Override public Rights build() { if (_storedValue == null) { return this.init(new Rights()); } else { return ((Rights) _storedValue); } } public Rights.Builder<_B> copyOf(final Rights _other) { _other.copyTo(this); return this; } public Rights.Builder<_B> copyOf(final Rights.Builder _other) { return copyOf(_other.build()); } } public class Modifier { public void setValue(final String value) { Rights.this.setValue(value); } public void setRightsURI(final String rightsURI) { Rights.this.setRightsURI(rightsURI); } } public static class PropInfo { public static final transient SinglePropertyInfo VALUE = new SinglePropertyInfo("value", Rights.class, String.class, false, null, new QName("http://www.w3.org/2001/XMLSchema", "token"), new QName("http://www.w3.org/2001/XMLSchema", "token"), false) { @Override public String get(final Rights _instance_) { return ((_instance_ == null)?null:_instance_.value); } @Override public void set(final Rights _instance_, final String _value_) { if (_instance_!= null) { _instance_.value = _value_; } } } ; public static final transient SinglePropertyInfo RIGHTS_URI = new SinglePropertyInfo("rightsURI", Rights.class, String.class, false, null, new QName("", "rightsURI"), new QName("http://www.w3.org/2001/XMLSchema", "anyURI"), true) { @Override public String get(final Rights _instance_) { return ((_instance_ == null)?null:_instance_.rightsURI); } @Override public void set(final Rights _instance_, final String _value_) { if (_instance_!= null) { _instance_.rightsURI = _value_; } } } ; } public static class Select extends Rights.Selector { Select() { super(null, null, null); } public static Rights.Select _root() { return new Rights.Select(); } } public static class Selector , TParent > extends com.kscs.util.jaxb.Selector { private com.kscs.util.jaxb.Selector> value = null; private com.kscs.util.jaxb.Selector> rightsURI = null; public Selector(final TRoot root, final TParent parent, final String propertyName) { super(root, parent, propertyName); } @Override public Map buildChildren() { final Map products = new HashMap<>(); products.putAll(super.buildChildren()); if (this.value!= null) { products.put("value", this.value.init()); } if (this.rightsURI!= null) { products.put("rightsURI", this.rightsURI.init()); } return products; } public com.kscs.util.jaxb.Selector> value() { return ((this.value == null)?this.value = new com.kscs.util.jaxb.Selector<>(this._root, this, "value"):this.value); } public com.kscs.util.jaxb.Selector> rightsURI() { return ((this.rightsURI == null)?this.rightsURI = new com.kscs.util.jaxb.Selector<>(this._root, this, "rightsURI"):this.rightsURI); } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy