Table of Contents

Class AppConfigs

Namespace
VpnHood.AppLib.App.Utils
Assembly
VpnHood.AppLib.App.dll

Provides what a product's private settings file can say (AppConfigsLoader); a product derives from it for keys of its own. The options of the same names (AppOptions) say what each means.

public class AppConfigs
Inheritance
AppConfigs
Inherited Members

Properties

AllowEndPointStrategy

Gets or sets a value indicating whether the person may choose the endpoint strategy (AllowEndPointStrategy). The default is true.

public bool AllowEndPointStrategy { get; set; }

Property Value

bool

AllowEndPointTracker

Gets or sets a value indicating whether the trackers may get the servers' endpoints (AllowEndPointTracker).

public bool AllowEndPointTracker { get; set; }

Property Value

bool

CustomData

Gets or sets JSON for a UI of the product's own (CustomData), or null.

public JsonElement? CustomData { get; set; }

Property Value

JsonElement?

DefaultAccessKey

Gets or sets the access key the product is built with, or null.

public string? DefaultAccessKey { get; set; }

Property Value

string

Ga4MeasurementId

Gets or sets the Google Analytics 4 measurement ID the head's tracker reports to, or null.

public string? Ga4MeasurementId { get; set; }

Property Value

string

Gets or sets the pages the build links to (Links).

public AppLinks Links { get; set; }

Property Value

AppLinks

RemoteSettingsUrl

Gets or sets the address of the settings the app reads from the web, or null (RemoteSettingsUrl).

public Uri? RemoteSettingsUrl { get; set; }

Property Value

Uri

ShowPoweredBy

Gets or sets a value indicating whether the menu shows the engine's credit (ShowPoweredBy). The default is true.

public bool ShowPoweredBy { get; set; }

Property Value

bool

UiTheme

Gets or sets the look's name (UiTheme). The default is blue.

public string UiTheme { get; set; }

Property Value

string

UpdateInfoBaseUrl

Gets or sets the address of the folder of the heads' update feeds (GetUpdateInfoUrl(string, string)), or null for none.

public Uri? UpdateInfoBaseUrl { get; set; }

Property Value

Uri

WebHostPort

Gets or sets the web host's port, or null for the default (WebHostPort).

public int? WebHostPort { get; set; }

Property Value

int?

Methods

GetUpdateInfoUrl(string, string)

Returns a head's update feed in UpdateInfoBaseUrl, named as the publisher names it, such as VpnHoodClient-win-x64.json.

public Uri? GetUpdateInfoUrl(string packageTitle, string distribution)

Parameters

packageTitle string

The app's name without spaces (PackageTitle).

distribution string

The head's distribution, such as win-x64.

Returns

Uri

The feed's address, packageTitle-distribution.json in UpdateInfoBaseUrl, or null when UpdateInfoBaseUrl is.

Exceptions

InvalidOperationException

UpdateInfoBaseUrl is not an absolute URI.