java.lang.Object
org.javastro.ivoa.entities.resource.dataservice.ForeignKey
All Implemented Interfaces:
org.jvnet.jaxb.lang.MergeFrom, org.jvnet.jaxb.lang.ToString

@Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public class ForeignKey extends Object implements org.jvnet.jaxb.lang.MergeFrom, org.jvnet.jaxb.lang.ToString
When foreign keys are declared in this way, clients can expect that joins constrained with the foreign keys are preformed efficiently (e.g., using an index).

Java class for ForeignKey complex type

.

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


 <complexType name="ForeignKey">
   <complexContent>
     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
       <sequence>
         <element name="targetTable" type="{http://www.w3.org/2001/XMLSchema}token"/>
         <element name="fkColumn" type="{http://www.ivoa.net/xml/VODataService/v1.1}FKColumn" maxOccurs="unbounded"/>
         <element name="description" type="{http://www.w3.org/2001/XMLSchema}token" minOccurs="0"/>
         <element name="utype" type="{http://www.w3.org/2001/XMLSchema}token" minOccurs="0"/>
       </sequence>
     </restriction>
   </complexContent>
 </complexType>
 
  • Field Details

    • targetTable

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") protected String targetTable
      The fully qualified name (including catalogue and schema, as applicable) of the table that can be joined with the table containing this foreign key.
    • fkColumns

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") protected List<FKColumn> fkColumns
      A pair of column names, one from this table and one from the target table that should be used to join the tables in a query.
    • description

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") protected String description
      A free-text description of what this key points to and what the relationship means.
    • utype

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") protected String utype
      The form of the utype string depends on the data model; common forms are sequences of dotted identifiers (e.g., in SSA) or URIs (e.g., in RegTAP).
  • Constructor Details

    • ForeignKey

      public ForeignKey()
      Default no-arg constructor
    • ForeignKey

      public ForeignKey(String targetTable, List<FKColumn> fkColumns, String description, String utype)
      Fully-initialising value constructor
  • Method Details

    • getTargetTable

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public String getTargetTable()
      The fully qualified name (including catalogue and schema, as applicable) of the table that can be joined with the table containing this foreign key.
      Returns:
      possible object is String
    • setTargetTable

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public void setTargetTable(String value)
      Sets the value of the targetTable property.
      Parameters:
      value - allowed object is String
      See Also:
    • getFkColumns

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public List<FKColumn> getFkColumns()
      A pair of column names, one from this table and one from the target table that should be used to join the tables in a query. Gets the value of the fkColumns property.

      This accessor method returns a reference to the live list, not a snapshot. Therefore any modification you make to the returned list will be present inside the JAXB object. This is why there is not a set method for the fkColumns property.

      For example, to add a new item, do as follows:

       getFkColumns().add(newItem);
       

      Objects of the following type(s) are allowed in the list FKColumn

      Returns:
      The value of the fkColumns property.
    • getDescription

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public String getDescription()
      A free-text description of what this key points to and what the relationship means.
      Returns:
      possible object is String
    • setDescription

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public void setDescription(String value)
      Sets the value of the description property.
      Parameters:
      value - allowed object is String
      See Also:
    • getUtype

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public String getUtype()
      The form of the utype string depends on the data model; common forms are sequences of dotted identifiers (e.g., in SSA) or URIs (e.g., in RegTAP).
      Returns:
      possible object is String
    • setUtype

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public void setUtype(String value)
      Sets the value of the utype property.
      Parameters:
      value - allowed object is String
      See Also:
    • equals

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public boolean equals(Object object)
      Overrides:
      equals in class Object
    • hashCode

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public String toString()
      Overrides:
      toString in class Object
    • append

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public StringBuilder append(org.jvnet.jaxb.locator.ObjectLocator locator, StringBuilder buffer, org.jvnet.jaxb.lang.ToStringStrategy strategy)
      Specified by:
      append in interface org.jvnet.jaxb.lang.ToString
    • appendFields

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public StringBuilder appendFields(org.jvnet.jaxb.locator.ObjectLocator locator, StringBuilder buffer, org.jvnet.jaxb.lang.ToStringStrategy strategy)
      Specified by:
      appendFields in interface org.jvnet.jaxb.lang.ToString
    • withTargetTable

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public ForeignKey withTargetTable(String value)
    • withFkColumns

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public ForeignKey withFkColumns(FKColumn... values)
    • withFkColumns

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public ForeignKey withFkColumns(Collection<FKColumn> values)
    • withDescription

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public ForeignKey withDescription(String value)
    • withUtype

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public ForeignKey withUtype(String value)
    • mergeFrom

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public void mergeFrom(Object left, Object right)
      Specified by:
      mergeFrom in interface org.jvnet.jaxb.lang.MergeFrom
    • mergeFrom

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public void mergeFrom(org.jvnet.jaxb.locator.ObjectLocator leftLocator, org.jvnet.jaxb.locator.ObjectLocator rightLocator, Object left, Object right, org.jvnet.jaxb.lang.MergeStrategy strategy)
      Specified by:
      mergeFrom in interface org.jvnet.jaxb.lang.MergeFrom
    • createNewInstance

      @Generated(value="com.sun.tools.xjc.Driver", comments="JAXB RI v4.0.4", date="2024-08-01T13:15:43+01:00") public Object createNewInstance()
      Specified by:
      createNewInstance in interface org.jvnet.jaxb.lang.MergeFrom