Table of Contents

Class VpnProfileBaseInfo

Namespace
VpnHood.AppLib.Api.VpnProfiles
Assembly
VpnHood.AppLib.Api.dll

Represents the current VPN profile as the state carries it: what the main screen needs.

public class VpnProfileBaseInfo
Inheritance
VpnProfileBaseInfo
Inherited Members

Properties

AccessCodeRefusal

Gets the access server's refusal of the profile's premium code, until a connect succeeds or the code changes or is removed, or null.

public required AccessCodeRefusal? AccessCodeRefusal { get; init; }

Property Value

AccessCodeRefusal

CanGoPremium

Gets a value indicating whether the server's policy lets the person go premium, by a premium code or a purchase.

public required bool CanGoPremium { get; init; }

Property Value

bool

CanImportAccessCode

Gets a value indicating whether a premium code may be typed in on the VPN profile: the server's policy and this build both allow it.

public required bool CanImportAccessCode { get; init; }

Property Value

bool

CanTryPremium

Gets a value indicating whether the server's policy offers a premium trial.

public required bool CanTryPremium { get; init; }

Property Value

bool

CanViewAccessCode

Gets a value indicating whether the VPN profile's premium code may be shown, as the server's policy allows.

public required bool CanViewAccessCode { get; init; }

Property Value

bool

CustomData

Gets the text a UI keeps with the VPN profile, or null.

public required string? CustomData { get; init; }

Property Value

string

CustomServerEndpoints

Gets the server's addresses the person gave, used instead of the access key's where enabled, or null.

[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
[JsonConverter(typeof(ArrayConverter<IPEndPoint, IPEndPointConverter>))]
public IPEndPoint[]? CustomServerEndpoints { get; init; }

Property Value

IPEndPoint[]

HasAccessCode

Gets a value indicating whether the VPN profile has a premium code.

public required bool HasAccessCode { get; init; }

Property Value

bool

IsCustomServerEndpointsEnabled

Gets a value indicating whether the VPN profile connects to CustomServerEndpoints.

public required bool IsCustomServerEndpointsEnabled { get; init; }

Property Value

bool

IsPremium

Gets a value indicating whether the VPN profile is premium.

public required bool IsPremium { get; init; }

Property Value

bool

IsPremiumLocationSelected

Gets a value indicating whether the person chose a premium location.

public required bool IsPremiumLocationSelected { get; init; }

Property Value

bool

SelectedLocationInfo

Gets the server location a connect goes to: the one the person chose, else the automatic one, else the first; or null where the VPN profile has none.

public required ServerLocationItem? SelectedLocationInfo { get; init; }

Property Value

ServerLocationItem

SupportId

Gets the access key's support ID, which the server's operator knows it by, or null.

public required string? SupportId { get; init; }

Property Value

string

VpnProfileId

Gets the VPN profile's ID.

public required Guid VpnProfileId { get; init; }

Property Value

Guid

VpnProfileName

Gets the VPN profile's name, as the person named it or the access key does.

public required string VpnProfileName { get; init; }

Property Value

string