Class StructuresSection<T extends IConfigSectionResult>

java.lang.Object
nl.pim16aap2.animatedarchitecture.core.config.ConfigSection<T>
nl.pim16aap2.animatedarchitecture.core.config.StructuresSection<T>
Type Parameters:
T - the type of result this section produces.
Direct Known Subclasses:
StructuresSectionSpigot

public abstract class StructuresSection<T extends IConfigSectionResult> extends ConfigSection<T>
Represents a section in the configuration with per-structure type settings.
  • Field Details

  • Constructor Details

    • StructuresSection

      public StructuresSection()
  • Method Details

    • getSectionComment

      protected String getSectionComment()
      Returns the comment for this section.

      This comment is used to describe the purpose and settings of the section in the configuration file.

      Subclasses can override this method to customize the comment for their specific section.

      Returns:
      The comment for this section.
    • buildInitialLimitsNode

      public org.spongepowered.configurate.CommentedConfigurationNode buildInitialLimitsNode() throws org.spongepowered.configurate.serialize.SerializationException
      Description copied from class: ConfigSection
      Builds the initial limits node for this configuration section.

      This method is responsible for creating the initial configuration node for this section, including any default values and comments.

      Specified by:
      buildInitialLimitsNode in class ConfigSection<T extends IConfigSectionResult>
      Returns:
      the initial limits node for this section
      Throws:
      org.spongepowered.configurate.serialize.SerializationException - if an error occurs during serialization
    • createSubSection

      protected abstract IStructureSubSection createSubSection(StructureType structureType)
      Creates a subsection for the given structure type.
      Parameters:
      structureType - The structure type to create a subsection for.
      Returns:
      An instance of IStructureSubSection for the given structure type.
    • getRegisteredStructureTypes

      protected abstract Collection<StructureType> getRegisteredStructureTypes()
      Gets the registered structure types.
      Returns:
      A collection of registered structure types.
    • populateDynamicData

      public final void populateDynamicData(org.spongepowered.configurate.CommentedConfigurationNode root)
      Populates the structures section with the registered structure types.
      Overrides:
      populateDynamicData in class ConfigSection<T extends IConfigSectionResult>
      Parameters:
      root - The root configuration node to populate.
    • getSectionTitle

      public String getSectionTitle()
      Description copied from class: ConfigSection
      Returns the title of the configuration section.
      Specified by:
      getSectionTitle in class ConfigSection<T extends IConfigSectionResult>
      Returns:
      the title of the section