package com.easyagents.federation.sql.adapter;

import com.easyagents.federation.sql.source.FederationDataSourceHandle;
import com.easyagents.federation.sql.source.FederationSchemaDefinition;
import com.easyagents.federation.sql.source.FederationSourceDefinition;
import org.apache.calcite.schema.SchemaPlus;
import org.apache.calcite.sql.SqlDialect;

/**
 * Adapter 创建 Calcite Schema 时所需的节点本地上下文。
 *
 * @param parentSchema Calcite 父 Schema
 * @param sourceDefinition 数据源定义
 * @param schemaDefinition 当前 Schema 定义
 * @param handle DataSource 句柄
 * @param dialect 已探测方言
 */
public record AdapterSchemaContext(
    SchemaPlus parentSchema,
    FederationSourceDefinition sourceDefinition,
    FederationSchemaDefinition schemaDefinition,
    FederationDataSourceHandle handle,
    SqlDialect dialect
) {
}
