namespace CvSearch.Data.Entities;
///
/// Persisted job-board provider configuration. Stored in cvSearch.JobProviders.
/// Providers are loaded from here at session-creation time and snapshotted into
/// JobSearchSessionEntity.ProviderConfigJson so runtime config changes do not
/// affect already-queued sessions.
///
public sealed class JobProviderEntity
{
public int Id { get; set; }
/// Display name (e.g. "ejobs.ro").
public string Name { get; set; } = string.Empty;
/// When false the provider is skipped at session-creation and the job-search link is hidden.
public bool Enabled { get; set; }
/// URL template with {keywords} placeholder (URL-encoded keywords are substituted at runtime).
public string SearchUrlTemplate { get; set; } = string.Empty;
/// Substring that must appear in an anchor href to pass the stage-1 link filter.
public string JobLinkContains { get; set; } = string.Empty;
/// JSON array of baseline keywords merged with CV keywords before building the search URL.
public string InitialKeywordsJson { get; set; } = "[]";
/// Maximum number of job URLs to collect from this provider per session.
public int MaxResults { get; set; } = 20;
/// Controls display ordering in future admin UIs.
public int DisplayOrder { get; set; }
}