Source code for hipscat.catalog.index.index_catalog_info

"""Catalog Info for a HiPSCat Index table"""

from dataclasses import dataclass, field
from typing import List

from hipscat.catalog.catalog_type import CatalogType
from hipscat.catalog.dataset.base_catalog_info import BaseCatalogInfo


@dataclass
[docs] class IndexCatalogInfo(BaseCatalogInfo): """Catalog Info for a HiPSCat Index table"""
[docs] primary_catalog: str = None
"""Reference to object or source catalog"""
[docs] indexing_column: str = None
"""Column that we provide an index over"""
[docs] extra_columns: List[str] = field(default_factory=list)
"""Any additional payload columns included in index"""
[docs] required_fields = BaseCatalogInfo.required_fields + [ "primary_catalog", "indexing_column", ]
[docs] DEFAULT_TYPE = CatalogType.INDEX
[docs] REQUIRED_TYPE = CatalogType.INDEX