Interface CatalogFactory

    • Method Detail

      • createCatalog

        @Deprecated
        default Catalog createCatalog​(String name,
                                      Map<String,​String> properties)
        Deprecated.
        Use {@link this#createCatalog(Context)} instead and implement Factory instead of TableFactory.
        Creates and configures a Catalog using the given properties.
        Parameters:
        properties - normalized properties describing an external catalog.
        Returns:
        the configured catalog.
      • createCatalog

        default Catalog createCatalog​(CatalogFactory.Context context)
        Creates and configures a Catalog using the given context.

        An implementation should perform validation and the discovery of further (nested) factories in this method.

      • factoryIdentifier

        default String factoryIdentifier()
        Description copied from interface: Factory
        Returns a unique identifier among same factory interfaces.

        For consistency, an identifier should be declared as one lower case word (e.g. kafka). If multiple factories exist for different versions, a version should be appended using "-" (e.g. elasticsearch-7).

        Specified by:
        factoryIdentifier in interface Factory
      • requiredContext

        @Deprecated
        default Map<String,​String> requiredContext()
        Deprecated.
        Implement the Factory based stack instead.
        Description copied from interface: TableFactory
        Specifies the context that this factory has been implemented for. The framework guarantees to only match for this factory if the specified set of properties and values are met.

        Typical properties might be: - connector.type - format.type

        Specified property versions allow the framework to provide backwards compatible properties in case of string format changes: - connector.property-version - format.property-version

        An empty context means that the factory matches for all requests.

        Specified by:
        requiredContext in interface TableFactory
      • supportedProperties

        @Deprecated
        default List<String> supportedProperties()
        Deprecated.
        Implement the Factory based stack instead.
        Description copied from interface: TableFactory
        List of property keys that this factory can handle. This method will be used for validation. If a property is passed that this factory cannot handle, an exception will be thrown. The list must not contain the keys that are specified by the context.

        Example properties might be: - schema.#.type - schema.#.name - connector.topic - format.line-delimiter - format.ignore-parse-errors - format.fields.#.type - format.fields.#.name

        Note: Use "#" to denote an array of values where "#" represents one or more digits. Property versions like "format.property-version" must not be part of the supported properties.

        In some cases it might be useful to declare wildcards "*". Wildcards can only be declared at the end of a property key.

        For example, if an arbitrary format should be supported: - format.*

        Note: Wildcards should be used with caution as they might swallow unsupported properties and thus might lead to undesired behavior.

        Specified by:
        supportedProperties in interface TableFactory