Class MetadataProperties


  • public final class MetadataProperties
    extends Object
    Metadata property bag.
    • Constructor Detail

      • MetadataProperties

        public MetadataProperties()
    • Method Detail

      • contentId

        public String contentId()
        Get the contentId property: Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name.
        Returns:
        the contentId value.
      • withContentId

        public MetadataProperties withContentId​(String contentId)
        Set the contentId property: Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name.
        Parameters:
        contentId - the contentId value to set.
        Returns:
        the MetadataProperties object itself.
      • parentId

        public String parentId()
        Get the parentId property: Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group).
        Returns:
        the parentId value.
      • withParentId

        public MetadataProperties withParentId​(String parentId)
        Set the parentId property: Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group).
        Parameters:
        parentId - the parentId value to set.
        Returns:
        the MetadataProperties object itself.
      • version

        public String version()
        Get the version property: Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks.
        Returns:
        the version value.
      • withVersion

        public MetadataProperties withVersion​(String version)
        Set the version property: Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks.
        Parameters:
        version - the version value to set.
        Returns:
        the MetadataProperties object itself.
      • kind

        public Kind kind()
        Get the kind property: The kind of content the metadata is for.
        Returns:
        the kind value.
      • withKind

        public MetadataProperties withKind​(Kind kind)
        Set the kind property: The kind of content the metadata is for.
        Parameters:
        kind - the kind value to set.
        Returns:
        the MetadataProperties object itself.
      • source

        public MetadataSource source()
        Get the source property: Source of the content. This is where/how it was created.
        Returns:
        the source value.
      • withSource

        public MetadataProperties withSource​(MetadataSource source)
        Set the source property: Source of the content. This is where/how it was created.
        Parameters:
        source - the source value to set.
        Returns:
        the MetadataProperties object itself.
      • author

        public MetadataAuthor author()
        Get the author property: The creator of the content item.
        Returns:
        the author value.
      • withAuthor

        public MetadataProperties withAuthor​(MetadataAuthor author)
        Set the author property: The creator of the content item.
        Parameters:
        author - the author value to set.
        Returns:
        the MetadataProperties object itself.
      • support

        public MetadataSupport support()
        Get the support property: Support information for the metadata - type, name, contact information.
        Returns:
        the support value.
      • withSupport

        public MetadataProperties withSupport​(MetadataSupport support)
        Set the support property: Support information for the metadata - type, name, contact information.
        Parameters:
        support - the support value to set.
        Returns:
        the MetadataProperties object itself.
      • dependencies

        public MetadataDependencies dependencies()
        Get the dependencies property: Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats.
        Returns:
        the dependencies value.
      • withDependencies

        public MetadataProperties withDependencies​(MetadataDependencies dependencies)
        Set the dependencies property: Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats.
        Parameters:
        dependencies - the dependencies value to set.
        Returns:
        the MetadataProperties object itself.
      • categories

        public MetadataCategories categories()
        Get the categories property: Categories for the solution content item.
        Returns:
        the categories value.
      • withCategories

        public MetadataProperties withCategories​(MetadataCategories categories)
        Set the categories property: Categories for the solution content item.
        Parameters:
        categories - the categories value to set.
        Returns:
        the MetadataProperties object itself.
      • providers

        public List<String> providers()
        Get the providers property: Providers for the solution content item.
        Returns:
        the providers value.
      • withProviders

        public MetadataProperties withProviders​(List<String> providers)
        Set the providers property: Providers for the solution content item.
        Parameters:
        providers - the providers value to set.
        Returns:
        the MetadataProperties object itself.
      • firstPublishDate

        public LocalDate firstPublishDate()
        Get the firstPublishDate property: first publish date solution content item.
        Returns:
        the firstPublishDate value.
      • withFirstPublishDate

        public MetadataProperties withFirstPublishDate​(LocalDate firstPublishDate)
        Set the firstPublishDate property: first publish date solution content item.
        Parameters:
        firstPublishDate - the firstPublishDate value to set.
        Returns:
        the MetadataProperties object itself.
      • lastPublishDate

        public LocalDate lastPublishDate()
        Get the lastPublishDate property: last publish date for the solution content item.
        Returns:
        the lastPublishDate value.
      • withLastPublishDate

        public MetadataProperties withLastPublishDate​(LocalDate lastPublishDate)
        Set the lastPublishDate property: last publish date for the solution content item.
        Parameters:
        lastPublishDate - the lastPublishDate value to set.
        Returns:
        the MetadataProperties object itself.
      • customVersion

        public String customVersion()
        Get the customVersion property: The custom version of the content. A optional free text.
        Returns:
        the customVersion value.
      • withCustomVersion

        public MetadataProperties withCustomVersion​(String customVersion)
        Set the customVersion property: The custom version of the content. A optional free text.
        Parameters:
        customVersion - the customVersion value to set.
        Returns:
        the MetadataProperties object itself.
      • contentSchemaVersion

        public String contentSchemaVersion()
        Get the contentSchemaVersion property: Schema version of the content. Can be used to distinguish between different flow based on the schema version.
        Returns:
        the contentSchemaVersion value.
      • withContentSchemaVersion

        public MetadataProperties withContentSchemaVersion​(String contentSchemaVersion)
        Set the contentSchemaVersion property: Schema version of the content. Can be used to distinguish between different flow based on the schema version.
        Parameters:
        contentSchemaVersion - the contentSchemaVersion value to set.
        Returns:
        the MetadataProperties object itself.
      • icon

        public String icon()
        Get the icon property: the icon identifier. this id can later be fetched from the solution template.
        Returns:
        the icon value.
      • withIcon

        public MetadataProperties withIcon​(String icon)
        Set the icon property: the icon identifier. this id can later be fetched from the solution template.
        Parameters:
        icon - the icon value to set.
        Returns:
        the MetadataProperties object itself.
      • threatAnalysisTactics

        public List<String> threatAnalysisTactics()
        Get the threatAnalysisTactics property: the tactics the resource covers.
        Returns:
        the threatAnalysisTactics value.
      • withThreatAnalysisTactics

        public MetadataProperties withThreatAnalysisTactics​(List<String> threatAnalysisTactics)
        Set the threatAnalysisTactics property: the tactics the resource covers.
        Parameters:
        threatAnalysisTactics - the threatAnalysisTactics value to set.
        Returns:
        the MetadataProperties object itself.
      • threatAnalysisTechniques

        public List<String> threatAnalysisTechniques()
        Get the threatAnalysisTechniques property: the techniques the resource covers, these have to be aligned with the tactics being used.
        Returns:
        the threatAnalysisTechniques value.
      • withThreatAnalysisTechniques

        public MetadataProperties withThreatAnalysisTechniques​(List<String> threatAnalysisTechniques)
        Set the threatAnalysisTechniques property: the techniques the resource covers, these have to be aligned with the tactics being used.
        Parameters:
        threatAnalysisTechniques - the threatAnalysisTechniques value to set.
        Returns:
        the MetadataProperties object itself.
      • previewImages

        public List<String> previewImages()
        Get the previewImages property: preview image file names. These will be taken from the solution artifacts.
        Returns:
        the previewImages value.
      • withPreviewImages

        public MetadataProperties withPreviewImages​(List<String> previewImages)
        Set the previewImages property: preview image file names. These will be taken from the solution artifacts.
        Parameters:
        previewImages - the previewImages value to set.
        Returns:
        the MetadataProperties object itself.
      • previewImagesDark

        public List<String> previewImagesDark()
        Get the previewImagesDark property: preview image file names. These will be taken from the solution artifacts. used for dark theme support.
        Returns:
        the previewImagesDark value.
      • withPreviewImagesDark

        public MetadataProperties withPreviewImagesDark​(List<String> previewImagesDark)
        Set the previewImagesDark property: preview image file names. These will be taken from the solution artifacts. used for dark theme support.
        Parameters:
        previewImagesDark - the previewImagesDark value to set.
        Returns:
        the MetadataProperties object itself.
      • validate

        public void validate()
        Validates the instance.
        Throws:
        IllegalArgumentException - thrown if the instance is not valid.