Class StoreAttributes

java.lang.Object
org.apache.avro.specific.SpecificRecordBase
com.linkedin.venice.meta.systemstore.schemas.StoreAttributes
All Implemented Interfaces:
Externalizable, Serializable, Comparable<org.apache.avro.specific.SpecificRecord>, org.apache.avro.generic.GenericContainer, org.apache.avro.generic.GenericRecord, org.apache.avro.generic.IndexedRecord, org.apache.avro.specific.SpecificRecord

public class StoreAttributes extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord
This type of metadata contains various store properties/configs and describes the clusters that store is materialized in.
See Also:
  • Field Details

    • SCHEMA$

      public static final org.apache.avro.Schema SCHEMA$
    • configs

      public StoreProperties configs
    • sourceCluster

      public CharSequence sourceCluster
      The source Venice cluster of the store. Usually it's the first Venice cluster that the store was created/materialized in.
    • otherClusters

      public List<CharSequence> otherClusters
      Other Venice clusters that the store is materializing in either because of store migration or offset load from the source cluster.
  • Constructor Details

    • StoreAttributes

      public StoreAttributes()
      Default constructor. Note that this does not initialize fields to their default values from the schema. If that is desired then one should use newBuilder().
    • StoreAttributes

      public StoreAttributes(StoreProperties configs, CharSequence sourceCluster, List<CharSequence> otherClusters)
      All-args constructor.
      Parameters:
      configs - The new value for configs
      sourceCluster - The source Venice cluster of the store. Usually it's the first Venice cluster that the store was created/materialized in.
      otherClusters - Other Venice clusters that the store is materializing in either because of store migration or offset load from the source cluster.
  • Method Details

    • getClassSchema

      public static org.apache.avro.Schema getClassSchema()
    • getSpecificData

      public org.apache.avro.specific.SpecificData getSpecificData()
      Overrides:
      getSpecificData in class org.apache.avro.specific.SpecificRecordBase
    • getSchema

      public org.apache.avro.Schema getSchema()
      Specified by:
      getSchema in interface org.apache.avro.generic.GenericContainer
      Specified by:
      getSchema in class org.apache.avro.specific.SpecificRecordBase
    • get

      public Object get(int field$)
      Specified by:
      get in interface org.apache.avro.generic.IndexedRecord
      Specified by:
      get in class org.apache.avro.specific.SpecificRecordBase
    • put

      public void put(int field$, Object value$)
      Specified by:
      put in interface org.apache.avro.generic.IndexedRecord
      Specified by:
      put in class org.apache.avro.specific.SpecificRecordBase
    • getConfigs

      public StoreProperties getConfigs()
      Gets the value of the 'configs' field.
      Returns:
      The value of the 'configs' field.
    • setConfigs

      public void setConfigs(StoreProperties value)
      Sets the value of the 'configs' field.
      Parameters:
      value - the value to set.
    • getSourceCluster

      public CharSequence getSourceCluster()
      Gets the value of the 'sourceCluster' field.
      Returns:
      The source Venice cluster of the store. Usually it's the first Venice cluster that the store was created/materialized in.
    • setSourceCluster

      public void setSourceCluster(CharSequence value)
      Sets the value of the 'sourceCluster' field. The source Venice cluster of the store. Usually it's the first Venice cluster that the store was created/materialized in.
      Parameters:
      value - the value to set.
    • getOtherClusters

      public List<CharSequence> getOtherClusters()
      Gets the value of the 'otherClusters' field.
      Returns:
      Other Venice clusters that the store is materializing in either because of store migration or offset load from the source cluster.
    • setOtherClusters

      public void setOtherClusters(List<CharSequence> value)
      Sets the value of the 'otherClusters' field. Other Venice clusters that the store is materializing in either because of store migration or offset load from the source cluster.
      Parameters:
      value - the value to set.
    • writeExternal

      public void writeExternal(ObjectOutput out) throws IOException
      Specified by:
      writeExternal in interface Externalizable
      Overrides:
      writeExternal in class org.apache.avro.specific.SpecificRecordBase
      Throws:
      IOException
    • readExternal

      public void readExternal(ObjectInput in) throws IOException
      Specified by:
      readExternal in interface Externalizable
      Overrides:
      readExternal in class org.apache.avro.specific.SpecificRecordBase
      Throws:
      IOException