Class QBackendMetaData

java.lang.Object
com.kingsrook.qqq.backend.core.model.metadata.QBackendMetaData
All Implemented Interfaces:
MetaDataProducerOutput, QMetaDataObject, TopLevelMetaDataInterface, Serializable
Direct Known Subclasses:
AbstractFilesystemBackendMetaData, APIBackendMetaData, MongoDBBackendMetaData, RDBMSBackendMetaData

public class QBackendMetaData extends Object implements TopLevelMetaDataInterface
Meta-data to provide details of a backend (e.g., RDBMS instance, S3 buckets, NoSQL table, etc) within a qqq instance
See Also:
  • Constructor Details

    • QBackendMetaData

      public QBackendMetaData()
      Default Constructor.
  • Method Details

    • requiresPrimaryKeyOnTables

      public boolean requiresPrimaryKeyOnTables()
    • getName

      public String getName()
      Specified by:
      getName in interface TopLevelMetaDataInterface
    • setName

      public void setName(String name)
    • withName

      public QBackendMetaData withName(String name)
      Fluent setter, returning generically, to help sub-class fluent flows
    • getBackendType

      public String getBackendType()
      Getter for backendType
    • setBackendType

      public void setBackendType(String backendType)
      Setter for backendType
    • setBackendType

      public void setBackendType(Class<? extends QBackendModuleInterface> backendModuleClass)
      Setter for backendType
    • withBackendType

      public QBackendMetaData withBackendType(Class<? extends QBackendModuleInterface> backendModuleClass)
    • enrich

      public void enrich()
      Called by the QInstanceEnricher - to do backend-type-specific enrichments. Original use case is: reading secrets into fields (e.g., passwords).
    • getEnabledCapabilities

      public Set<Capability> getEnabledCapabilities()
      Getter for enabledCapabilities
    • setEnabledCapabilities

      public void setEnabledCapabilities(Set<Capability> enabledCapabilities)
      Setter for enabledCapabilities
    • withEnabledCapabilities

      public QBackendMetaData withEnabledCapabilities(Set<Capability> enabledCapabilities)
      Fluent setter for enabledCapabilities
    • withCapabilities

      public QBackendMetaData withCapabilities(Set<Capability> enabledCapabilities)
      Alternative fluent setter for enabledCapabilities
    • withCapability

      public QBackendMetaData withCapability(Capability capability)
      Alternative fluent setter for a single enabledCapabilities
    • withCapabilities

      public QBackendMetaData withCapabilities(Capability... enabledCapabilities)
      Fluent setter for enabledCapabilities
    • getDisabledCapabilities

      public Set<Capability> getDisabledCapabilities()
      Getter for disabledCapabilities
    • setDisabledCapabilities

      public void setDisabledCapabilities(Set<Capability> disabledCapabilities)
      Setter for disabledCapabilities
    • withDisabledCapabilities

      public QBackendMetaData withDisabledCapabilities(Set<Capability> disabledCapabilities)
      Fluent setter for disabledCapabilities
    • withoutCapabilities

      public QBackendMetaData withoutCapabilities(Capability... disabledCapabilities)
      Fluent setter for disabledCapabilities
    • withoutCapabilities

      public QBackendMetaData withoutCapabilities(Set<Capability> disabledCapabilities)
      Alternative fluent setter for disabledCapabilities
    • withoutCapability

      public QBackendMetaData withoutCapability(Capability capability)
      Alternative fluent setter for a single disabledCapabilities
    • performValidation

      public void performValidation(QInstanceValidator qInstanceValidator)
    • getUsesVariants

      public Boolean getUsesVariants()
      Getter for usesVariants
    • setUsesVariants

      public void setUsesVariants(Boolean usesVariants)
      Setter for usesVariants
    • withUsesVariants

      public QBackendMetaData withUsesVariants(Boolean usesVariants)
      Fluent setter for usesVariants
    • addSelfToInstance

      public void addSelfToInstance(QInstance qInstance)
      Description copied from interface: MetaDataProducerOutput
      call the appropriate methods on a QInstance to add ourselves to it.
      Specified by:
      addSelfToInstance in interface MetaDataProducerOutput
      Specified by:
      addSelfToInstance in interface TopLevelMetaDataInterface
    • getBackendVariantsConfig

      public BackendVariantsConfig getBackendVariantsConfig()
      Getter for backendVariantsConfig
    • setBackendVariantsConfig

      public void setBackendVariantsConfig(BackendVariantsConfig backendVariantsConfig)
      Setter for backendVariantsConfig
    • withBackendVariantsConfig

      public QBackendMetaData withBackendVariantsConfig(BackendVariantsConfig backendVariantsConfig)
      Fluent setter for backendVariantsConfig