Click or drag to resize
VirtualRadar.Interface.Settings Namespace
The namespace for all of the interfaces and objects that deal with reading and writing configuration information.
Classes
  ClassDescription
Public classAccess
A class that holds access lists to Internet resources.
Public classAudioSettings
Holds the configuration of the speech-to-audio features that the website can access.
Public classBaseStationSettings
An object that describes the source of data we should connect to.
Public classConfiguration
An object that carries all of the configuration settings for the application.
Public classConfigurationListenerEventArgs
Carries information in events from IConfigurationListener.
Public classConflictingUpdateException
Thrown when an update conflicts with a previous update.
Public classDataSource
A collection of strings describing the UniqueId values for the receiver formats that ship with VRS.
Public classFlightRouteSettings
Holds the configuration pertaining to the handling of flight routes.
Public classGoogleMapSettings
The web site configuration options (originally these were just Google Map settings but they expanded over time - unfortunately I can't change the class name without breaking backwards compatibility).
Public classHash
Describes a hashed password in the configuration.
Public classInstallerSettings
The object for configuration settings that are created or overwritten by the installer.
Public classInternetClientSettings
Settings that control how browsers on the Internet interact with the server.
Public classMergedFeed
The configuration settings for a merged feed.
Public classMergedFeedReceiver
Describes a receiver in a merged feed.
Public classMonoSettings
Carries settings that are only used when VRS is loaded under Mono.
Public classCode examplePluginManifest
A class that represents the content of a plugin manifest file.
Public classCode examplePluginSettings
The class that holds the settings for the plugins. These are loaded and saved via IPluginSettingsStorage.
Public classRawDecodingSettings
The data-transfer object that carries the configuration of the raw message decoder.
Public classRebroadcastFormat
A collection of strings describing the UniqueId values for the rebroadcast server formats that ship with VRS.
Public classRebroadcastSettings
The settings for the rebroadcast server.
Public classReceiver
A settings object that carries information about a receiever.
Public classReceiverLocation
A class describing the location of a receiver.
Public classSavedPolarPlot
Carries the details for an individual receiver's polar plot.
Public classVersionCheckSettings
The configuration settings controlling the checking for new versions of the server.
Public classWebServerSettings
A class that holds the configuration of the web server.
Interfaces
  InterfaceDescription
Public interfaceIConfigurationListener
The interface for a class that can listen to a Configuration object and raise a single event when one of its properties (or the properties of a child object) are changed.
Public interfaceCode exampleIConfigurationStorage
The interface for objects that can load and save Configuration objects.
Public interfaceIConfigurationStorageProvider
The interface for the objects that abstract away the environment for tests on IConfigurationStorage.
Public interfaceIInstallerSettingsStorage
The interface for the object that can load installer settings.
Public interfaceIInstallerSettingsStorageProvider
The interface for objects that abstract away the environment for IInstallerSettingsStorage.
Public interfaceIPluginManifestStorage
The interface for objects that can read the content of a plugin's manifest file.
Public interfaceIPluginManifestStorageProvider
The interface for objects that can abstract away the environment for IPluginManifestStorage implementations.
Public interfaceIPluginSettingsStorage
The interface for objects that load and save PluginSettings objects.
Public interfaceIPluginSettingsStorageProvider
The interface for objects that abstract away the environment for IPluginSettingsStorage implementations.
Public interfaceISavedPolarPlotStorage
Manages the loading and saving of polar plots.
Public interfaceISharedConfiguration
Exposes the current configuration.
Public interfaceISiteSettingsParser
The interface for objects that can parse the site's exported settings.
Public interfaceIUser
The interface that describes a user.
Public interfaceIUserManager
The interface for the object that manages lists of users.
Enumerations
  EnumerationDescription
Public enumerationConfigurationListenerGroup
An enumeration of the different groups that can appear in a ConfigurationListenerEventArgs.
Public enumerationConnectionType
An enumeration of the different types of connection supported by VRS.
Public enumerationDefaultAccess
An enumeration of the default access allowed to an Internet resource.
Public enumerationProxyType
An enumeration of the type of proxies that the server is sitting behind.
Public enumerationReceiverUsage
An enumeration of the different ways that a receiver can be used by the system.
Remarks

The application's configuration information is stored in Configuration, which is read and written by the singleton object IConfigurationStorage. This object raises an event when a new configuration is saved which the application can hook to automatically pick up changes to the configuration. To avoid repeatedly loading the configuration you can also use ISharedConfiguration, which caches the most recent configuration.

The program's installer writes a configuration file that contains settings that cannot be changed without stopping the program and re-running the installer. The settings are in InstallerSettings and are loaded by IInstallerSettingsStorage. Unlike IConfigurationStorage this interface is not a singleton, with it being read-only there is no need to notify the application when the values change and therefore no need to have a single object whose events can be hooked.

Finally we have PluginSettings, which is loaded and saved by IPluginSettingsStorage. This is likely to be of the most interest to plugin developers.