Interface CustomContentProviderRegistry

All Known Implementing Classes:
DefaultCustomContentProviderRegistry

public interface CustomContentProviderRegistry
Central registry for custom content providers. Manages plugin registration and provider discovery for custom content types.
Since:
9.2.11
  • Method Details

    • registerProvider

      void registerProvider(CustomContentProvider provider)
      Register a custom content provider
    • unregisterProvider

      void unregisterProvider(CustomContentProvider provider)
      Unregister a custom content provider
    • getProviderForContentPluginKey

      CustomContentProvider getProviderForContentPluginKey(String contentPluginKey)
      Get provider for a specific plugin key type
      Parameters:
      contentPluginKey - The content type to look up, refers to the content.pluginkey column
      Returns:
      The provider that handles this content type, or null if none found
    • getPluginKeysForScanType

      Set<String> getPluginKeysForScanType(String scanType)
      Get all content types that map to a given content type name
      Parameters:
      scanType - The user-friendly type name (e.g., "calendar")
      Returns:
      Set of plugin key types that map to this type name
    • isScannableContent

      boolean isScannableContent(String scanType)
      Check if a scan type represents scannable content
      Parameters:
      scanType - The scan type to check (e.g., "calendar", "question")
      Returns:
      true if scan type should be included in scans
    • getAllScanTypes

      Set<String> getAllScanTypes()
      Get all available custom content type names that are scannable
      Returns:
      Set of user-friendly type names that can be used in scan operations
    • isRegisteredContentPluginKey

      boolean isRegisteredContentPluginKey(String contentPluginKey)
      Check if a content type is registered in the system
      Parameters:
      contentPluginKey - The content type to check, refers to the content.pluginkey column
      Returns:
      true if the content type is registered, false otherwise
    • getContentTypeToSubscriptionEventTypeMap

      Map<ContentType,ContentSubscriptionEventType> getContentTypeToSubscriptionEventTypeMap()
      Get mapping of ContentType to SubscriptionEvent type for Incremental sync. ContentType is generated from the value of scanType. for example: key: ContentType.valueOf("calendar"), value: SubscriptionEventType.CALENDAR_EVENT.
      Returns:
      Map of ContentType to SubscriptionEventType