Class SearchIndexKnowledgeSource

java.lang.Object
com.azure.search.documents.indexes.models.KnowledgeSource
com.azure.search.documents.indexes.models.SearchIndexKnowledgeSource
All Implemented Interfaces:
com.azure.json.JsonSerializable<KnowledgeSource>

public final class SearchIndexKnowledgeSource extends KnowledgeSource
Knowledge Source targeting a search index.
  • Constructor Details

    • SearchIndexKnowledgeSource

      public SearchIndexKnowledgeSource(String name, SearchIndexKnowledgeSourceParameters searchIndexParameters)
      Creates an instance of SearchIndexKnowledgeSource class.
      Parameters:
      name - the name value to set.
      searchIndexParameters - the searchIndexParameters value to set.
  • Method Details

    • getKind

      public KnowledgeSourceKind getKind()
      Get the kind property: The type of the knowledge source.
      Overrides:
      getKind in class KnowledgeSource
      Returns:
      the kind value.
    • getSearchIndexParameters

      public SearchIndexKnowledgeSourceParameters getSearchIndexParameters()
      Get the searchIndexParameters property: The parameters for the knowledge source.
      Returns:
      the searchIndexParameters value.
    • setDescription

      public SearchIndexKnowledgeSource setDescription(String description)
      Set the description property: Optional user-defined description.
      Overrides:
      setDescription in class KnowledgeSource
      Parameters:
      description - the description value to set.
      Returns:
      the KnowledgeSource object itself.
    • setETag

      public SearchIndexKnowledgeSource setETag(String eTag)
      Set the eTag property: The ETag of the knowledge base.
      Overrides:
      setETag in class KnowledgeSource
      Parameters:
      eTag - the eTag value to set.
      Returns:
      the KnowledgeSource object itself.
    • setEncryptionKey

      public SearchIndexKnowledgeSource setEncryptionKey(SearchResourceEncryptionKey encryptionKey)
      Set the encryptionKey property: A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge base definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge base definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge base definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.
      Overrides:
      setEncryptionKey in class KnowledgeSource
      Parameters:
      encryptionKey - the encryptionKey value to set.
      Returns:
      the KnowledgeSource object itself.
    • toJson

      public com.azure.json.JsonWriter toJson(com.azure.json.JsonWriter jsonWriter) throws IOException
      Specified by:
      toJson in interface com.azure.json.JsonSerializable<KnowledgeSource>
      Overrides:
      toJson in class KnowledgeSource
      Throws:
      IOException
    • fromJson

      public static SearchIndexKnowledgeSource fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of SearchIndexKnowledgeSource from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of SearchIndexKnowledgeSource if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
      Throws:
      IllegalStateException - If the deserialized JSON object was missing any required properties.
      IOException - If an error occurs while reading the SearchIndexKnowledgeSource.