MediaBrowser.Common
Policies for the API authorization.
Policy name for requiring first time setup or elevated privileges.
Policy name for requiring elevated privileges.
Policy name for allowing local access only.
Policy name for escaping schedule controls.
Policy name for requiring download permission.
Policy name for requiring first time setup or default permissions.
Policy name for requiring local access or elevated privileges.
Policy name for requiring (anonymous) LAN access.
Policy name for escaping schedule controls or requiring first time setup.
Policy name for accessing SyncPlay.
Policy name for creating a SyncPlay group.
Policy name for joining a SyncPlay group.
Policy name for accessing a SyncPlay group.
Policy name for accessing collection management.
Policy name for accessing LiveTV.
Policy name for managing LiveTV.
Policy name for accessing subtitles management.
Policy name for accessing lyric management.
Describes a single entry in the application configuration.
Gets or sets the unique identifier for the configuration.
Gets or sets the type used to store the data for this configuration entry.
for the ConfigurationUpdated event.
Initializes a new instance of the class.
The configuration key.
The new configuration.
Gets the key.
The key.
Gets the new configuration.
The new configuration.
Class containing extension methods for working with the encoding configuration.
Gets the encoding options.
The configuration manager.
The encoding options.
Retrieves the transcoding temp path from the encoding configuration, falling back to a default if no path
is specified in configuration. If the directory does not exist, it will be created.
The configuration manager.
The transcoding temp path.
If the directory does not exist, and the caller does not have the required permission to create it.
If there is a custom path transcoding path specified, but it is invalid.
If the directory does not exist, and it also could not be created.
Interface IApplicationPaths.
Gets the path to the program data folder.
The program data path.
Gets the path to the web UI resources folder.
This value is not relevant if the server is configured to not host any static web content.
Gets the path to the program system folder.
The program data path.
Gets the folder path to the data directory.
The data directory.
Gets the image cache path.
The image cache path.
Gets the path to the plugin directory.
The plugins path.
Gets the path to the plugin configurations directory.
The plugin configurations path.
Gets the path to the log directory.
The log directory path.
Gets the path to the application configuration root directory.
The configuration directory path.
Gets the path to the system configuration file.
The system configuration file path.
Gets the folder path to the cache directory.
The cache directory.
Gets the folder path to the temp directory within the cache folder.
The temp directory.
Gets the magic string used for virtual path manipulation.
The magic string used for virtual path manipulation.
Gets the path used for storing trickplay files.
The trickplay path.
Gets the path used for storing backup archives.
The backup path.
Checks and creates all known base paths.
Checks and creates the given path and adds it with a marker file if non existent.
The path to check.
The common marker file name.
Check for other settings paths recursively.
Provides an interface to retrieve a configuration store. Classes with this interface are scanned for at
application start to dynamically register configuration for various modules/plugins.
Get the configuration store for this module.
The configuration store.
Occurs when [configuration updating].
Occurs when [configuration updated].
Occurs when [named configuration updated].
Gets the application paths.
The application paths.
Gets the configuration.
The configuration.
Saves the configuration.
Replaces the configuration.
The new configuration.
Manually pre-loads a factory so that it is available pre system initialisation.
Class to register.
Gets the configuration.
The key.
System.Object.
Gets the array of configuration stores.
Array of ConfigurationStore.
Gets the type of the configuration.
The key.
Type.
Saves the configuration.
The key.
The configuration.
Adds the parts.
The factories.
A configuration store that can be validated.
Validation method to be invoked before saving the configuration.
The old configuration.
The new configuration.
Class EventHelper.
Fires the event.
The handler.
The sender.
The instance containing the event data.
The logger.
Queues the event.
Argument type for the handler.
The handler.
The sender.
The args.
The logger.
Class BaseExtensions.
Pattern:
<(.|\n)*?>
Explanation:
○ Match '<'.
○ Loop lazily any number of times.
○ 1st capture group.
○ Match with 2 alternative expressions.
○ Match any character other than '\n'.
○ Match '\n'.
○ Match '>'.
Strips the HTML.
The HTML string.
.
Gets the Md5.
The string.
.
Static class containing extension methods for .
Checks the origin of the HTTP context.
The incoming HTTP context.
true if the request is coming from the same machine as is running the server, false otherwise.
Extracts the remote IP address of the caller of the HTTP context.
The HTTP context.
The remote caller IP address.
Class MethodNotAllowedException.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Extension methods for .
Asynchronously wait for the process to exit.
The process to wait for.
The duration to wait before cancelling waiting for the task.
A task that will complete when the process has exited, cancellation has been requested, or an error occurs.
The timeout ended.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Class ResourceNotFoundException.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Represents errors that occur during interaction with FFmpeg.
Initializes a new instance of the class.
Initializes a new instance of the class with a specified error message.
The message that describes the error.
Initializes a new instance of the class with a specified error message and a
reference to the inner exception that is the cause of this exception.
The error message that explains the reason for the exception.
The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if
no inner exception is specified.
Delegate used with GetExports{T}.
Type to create.
New instance of type type.
An interface to be implemented by the applications hosting a kernel.
Occurs when [has pending restart changed].
Gets the name.
The name.
Gets the device identifier.
The device identifier.
Gets a value indicating whether this instance has pending changes requiring a restart.
true if this instance has a pending restart; otherwise, false.
Gets or sets a value indicating whether the application should restart.
Gets the application version.
The application version.
Gets or sets the service provider.
Gets the application version.
The application version.
Gets the application user agent.
The application user agent.
Gets the email address for use within a comment section of a user agent field.
Presently used to provide contact information to MusicBrainz service.
Gets all plugin assemblies which implement a custom rest api.
An containing the plugin assemblies.
Notifies the pending restart.
Gets the exports.
The type.
If set to true [manage lifetime].
.
Gets the exports.
The type.
Delegate function that gets called to create the object.
If set to true [manage lifetime].
.
Gets the export types.
The type.
IEnumerable{Type}.
Resolves this instance.
The Type.
``0.
Initializes this instance.
Instance of the interface.
Interface for the NetworkManager class.
Event triggered on network changes.
Gets a value indicating whether IPv4 is enabled.
Gets a value indicating whether IPv6 is enabled.
Calculates the list of interfaces to use for Kestrel.
A IReadOnlyList{IPData} object containing all the interfaces to bind.
If all the interfaces are specified, and none are excluded, it returns zero items
to represent any address.
When false, return or for all interfaces.
Returns a list containing the loopback interfaces.
IReadOnlyList{IPData}.
Retrieves the bind address to use in system URLs. (Server Discovery, PlayTo, LiveTV, SystemInfo)
If no bind addresses are specified, an internal interface address is selected.
The priority of selection is as follows:-
The value contained in the startup parameter --published-server-url.
If the user specified custom subnet overrides, the correct subnet for the source address.
If the user specified bind interfaces to use:-
The bind interface that contains the source subnet.
The first bind interface specified that suits best first the source's endpoint. eg. external or internal.
If the source is from a public subnet address range and the user hasn't specified any bind addresses:-
The first public interface that isn't a loopback and contains the source subnet.
The first public interface that isn't a loopback.
The first internal interface that isn't a loopback.
If the source is from a private subnet address range and the user hasn't specified any bind addresses:-
The first private interface that contains the source subnet.
The first private interface that isn't a loopback.
If no interfaces meet any of these criteria, then a loopback address is returned.
Interfaces that have been specifically excluded from binding are not used in any of the calculations.
Source of the request.
Optional port returned, if it's part of an override.
IP address to use, or loopback address if all else fails.
Retrieves the bind address to use in system URLs. (Server Discovery, PlayTo, LiveTV, SystemInfo)
If no bind addresses are specified, an internal interface address is selected.
IP address of the request.
Optional port returned, if it's part of an override.
Optional boolean denoting if published server overrides should be ignored. Defaults to false.
IP address to use, or loopback address if all else fails.
Retrieves the bind address to use in system URLs. (Server Discovery, PlayTo, LiveTV, SystemInfo)
If no bind addresses are specified, an internal interface address is selected.
(See .
Source of the request.
Optional port returned, if it's part of an override.
IP address to use, or loopback address if all else fails.
Returns true if the address is part of the user defined LAN.
IP to check.
True if endpoint is within the LAN range.
Returns true if the address is part of the user defined LAN.
IP to check.
True if endpoint is within the LAN range.
Attempts to convert the interface name to an IP address.
eg. "eth1", or "enp3s5".
Interface name.
Resulting object's IP addresses, if successful.
Success of the operation.
Returns all internal (LAN) bind interface addresses.
An list of internal (LAN) interfaces addresses.
Checks if has access to the server.
IP address of the client.
The result of evaluating the access policy, Allow if it should be allowed.
Registered http client names.
Gets the value for the default named http client which implements happy eyeballs.
Gets the value for the MusicBrainz named http client.
Gets the value for the DLNA named http client.
Non happy eyeballs implementation.
Defines the .
The default value for .
The default value for and .
Gets or sets a value used to specify the URL prefix that your Jellyfin instance can be accessed at.
Gets or sets a value indicating whether to use HTTPS.
In order for HTTPS to be used, in addition to setting this to true, valid values must also be
provided for and .
Gets or sets a value indicating whether the server should force connections over HTTPS.
Gets or sets the filesystem path of an X.509 certificate to use for SSL.
Gets or sets the password required to access the X.509 certificate data in the file specified by .
Gets or sets the internal HTTP server port.
The HTTP server port.
Gets or sets the internal HTTPS server port.
The HTTPS server port.
Gets or sets the public HTTP port.
The public HTTP port.
Gets or sets the public HTTPS port.
The public HTTPS port.
Gets or sets a value indicating whether Autodiscovery is enabled.
Gets or sets a value indicating whether to enable automatic port forwarding.
Gets or sets a value indicating whether IPv6 is enabled.
Gets or sets a value indicating whether IPv6 is enabled.
Gets or sets a value indicating whether access from outside of the LAN is permitted.
Gets or sets the subnets that are deemed to make up the LAN.
Gets or sets the interface addresses which Jellyfin will bind to. If empty, all interfaces will be used.
Gets or sets the known proxies.
Gets or sets a value indicating whether address names that match should be ignored for the purposes of binding.
Gets or sets a value indicating the interface name prefixes that should be ignored. The list can be comma separated and values are case-insensitive. .
Gets or sets a value indicating whether the published server uri is based on information in HTTP requests.
Gets or sets the PublishedServerUriBySubnet
Gets or sets PublishedServerUri to advertise for specific subnets.
Gets or sets the filter for remote IP connectivity. Used in conjunction with .
Gets or sets a value indicating whether contains a blacklist or a whitelist. Default is a whitelist.
Defines the .
Retrieves the network configuration.
The .
The .
Defines the .
The GetConfigurations.
The .
A configuration that stores network related settings.
The name of the configuration in the storage.
Initializes a new instance of the class.
Networking constants.
IPv4 mask bytes.
IPv6 mask bytes.
Minimum IPv4 prefix size.
Minimum IPv6 prefix size.
Whole IPv4 address space.
Whole IPv6 address space.
IPv4 Loopback as defined in RFC 5735.
IPv4 private class A as defined in RFC 1918.
IPv4 private class B as defined in RFC 1918.
IPv4 private class C as defined in RFC 1918.
IPv4 Link-Local as defined in RFC 3927.
IPv6 loopback as defined in RFC 4291.
IPv6 site local as defined in RFC 4291.
IPv6 unique local as defined in RFC 4193.
Defines the .
Pattern:
(?im)^(?!:\/\/)(?=.{1,255}$)((.{1,63}\.){0,127}(?![0-9]*$)[a-z0-9-]+\.?)(:(\d){1,5}){0,1}$
Options:
RegexOptions.IgnoreCase
Explanation:
○ Match if at the beginning of a line.
○ Zero-width negative lookahead.
○ Match the string "://".
○ Zero-width positive lookahead.
○ Match a character other than '\n' greedily at least 1 and at most 255 times.
○ Match if at the end of a line.
○ 1st capture group.
○ Loop greedily at most 127 times.
○ 2nd capture group.
○ Match a character other than '\n' greedily at least 1 and at most 63 times.
○ Match '.'.
○ Zero-width negative lookahead.
○ Match a character in the set [0-9] atomically any number of times.
○ Match if at the end of a line.
○ Match a character in the set [\-0-9A-Za-z\u0130\u212A] greedily at least once.
○ Match '.' greedily, optionally.
○ Optional (greedy).
○ 3rd capture group.
○ Match ':'.
○ Loop greedily at least 1 and at most 5 times.
○ 4th capture group.
○ Match a Unicode digit.
○ Match if at the end of a line.
Returns true if the IPAddress contains an IP6 Local link address.
IPAddress object to check.
True if it is a local link address.
See https://stackoverflow.com/questions/6459928/explain-the-instance-properties-of-system-net-ipaddress
it appears that the IPAddress.IsIPv6LinkLocal is out of date.
Convert a subnet mask in CIDR notation to a dotted decimal string value. IPv4 only.
Subnet mask in CIDR notation.
IPv4 or IPv6 family.
String value of the subnet mask in dotted decimal notation.
Convert a subnet mask in CIDR notation to a dotted decimal string value. IPv4 only.
Subnet mask in CIDR notation.
IPv4 or IPv6 family.
String value of the subnet mask in dotted decimal notation.
Convert a subnet mask to a CIDR. IPv4 only.
https://stackoverflow.com/questions/36954345/get-cidr-from-netmask.
Subnet mask.
Byte CIDR representing the mask.
Converts an IPAddress into a string.
IPv6 addresses are returned in [ ], with their scope removed.
Address to convert.
URI safe conversion of the address.
Try parsing an array of strings into objects, respecting exclusions.
Elements without a subnet mask will be represented as with a single IP.
Input string array to be parsed.
Collection of .
Boolean signaling if negated or not negated values should be parsed.
True if parsing was successful.
Try parsing a string into an , respecting exclusions.
Inputs without a subnet mask will be represented as with a single IP.
Input string to be parsed.
An .
Boolean signaling if negated or not negated values should be parsed.
True if parsing was successful.
Attempts to parse a host span.
Host name to parse.
Object representing the span, if it has successfully been parsed.
true if IPv4 is enabled.
true if IPv6 is enabled.
true if the parsing is successful, false if not.
Gets the broadcast address for a .
The .
The broadcast address.
Check if a subnet contains an address. This method also handles IPv4 mapped to IPv6 addresses.
The .
The .
Whether the supplied IP is in the supplied network.
Result of .
The connection should be allowed.
The connection should be rejected since it is not from a local IP and remote access is disabled.
The connection should be rejected since it is from a blocklisted IP.
The connection should be rejected since it is from a remote IP that is not in the allowlist.
Provides a common base class for all plugins.
Gets the name of the plugin.
The name.
Gets the description.
The description.
Gets the unique id.
The unique id.
Gets the plugin version.
The version.
Gets the path to the assembly file.
The assembly file path.
Gets the full path to the data folder, where the plugin can store any miscellaneous files needed.
The data folder path.
Gets a value indicating whether the plugin can be uninstalled.
Gets the plugin info.
PluginInfo.
Called just before the plugin is uninstalled from the server.
Provides a common base class for all plugins.
The type of the T configuration type.
The configuration sync lock.
The configuration save lock.
The configuration.
Initializes a new instance of the class.
The application paths.
The XML serializer.
Gets the application paths.
The application paths.
Gets the XML serializer.
The XML serializer.
Gets the type of configuration this plugin uses.
The type of the configuration.
Gets or sets the event handler that is triggered when this configuration changes.
Gets the name the assembly file.
The name of the assembly file.
Gets or sets the plugin configuration.
The configuration.
Gets the name of the configuration file. Subclasses should override.
The name of the configuration file.
Gets the full path to the configuration file.
The configuration file path.
Gets the plugin configuration.
The configuration.
Saves the current configuration to the file system.
Configuration to save.
Saves the current configuration to the file system.
Defines the .
Gets the type of configuration this plugin uses.
Gets the plugin's configuration.
Completely overwrites the current configuration with a new copy.
The configuration.
Defines the .
Gets the name of the plugin.
Gets the Description.
Gets the unique id.
Gets the plugin version.
Gets the path to the assembly file.
Gets a value indicating whether the plugin can be uninstalled.
Gets the full path to the data folder, where the plugin can store any miscellaneous files needed.
Gets the .
PluginInfo.
Called when just before the plugin is uninstalled from the server.
Defines the .
Gets the Plugins.
Creates the plugins.
Returns all the assemblies.
An IEnumerable{Assembly}.
Registers the plugin's services with the DI.
Note: DI is not yet instantiated yet.
A instance.
Saves the manifest back to disk.
The to save.
The path where to save the manifest.
True if successful.
Generates a manifest from repository data.
The used to generate a manifest.
Version to be installed.
The path where to save the manifest.
Initial status of the plugin.
True if successful.
Imports plugin details from a folder.
Folder of the plugin.
Disable the plugin.
The of the plug to disable.
Disable the plugin.
The of the plug to disable.
Enables the plugin, disabling all other versions.
The of the plug to disable.
Attempts to find the plugin with and id of .
Id of plugin.
The version of the plugin to locate.
A if located, or null if not.
Removes the plugin.
The plugin.
Outcome of the operation.
Local plugin class.
Initializes a new instance of the class.
The plugin path.
True if Jellyfin supports this version of the plugin.
The manifest record for this plugin, or null if one does not exist.
Gets the plugin id.
Gets the plugin name.
Gets the plugin version.
Gets the plugin path.
Gets or sets the list of dll files for this plugin.
Gets or sets the instance of this plugin.
Gets a value indicating whether Jellyfin supports this version of the plugin, and it's enabled.
Gets a value indicating whether the plugin has a manifest.
Compare two .
The first item.
The second item.
Comparison result.
Returns the plugin information.
A instance containing the information.
Defines a Plugin manifest file.
Initializes a new instance of the class.
Gets or sets the category of the plugin.
Gets or sets the changelog information.
Gets or sets the description of the plugin.
Gets or sets the Global Unique Identifier for the plugin.
Gets or sets the Name of the plugin.
Gets or sets an overview of the plugin.
Gets or sets the owner of the plugin.
Gets or sets the compatibility version for the plugin.
Gets or sets the timestamp of the plugin.
Gets or sets the Version number of the plugin.
Gets or sets a value indicating the operational status of this plugin.
Gets or sets a value indicating whether this plugin should automatically update.
Gets or sets the ImagePath
Gets or sets a value indicating whether this plugin has an image.
Image must be located in the local plugin folder.
Gets or sets the collection of assemblies that should be loaded.
Paths are considered relative to the plugin folder.
Parsers for provider ids.
Parses an IMDb id from a string.
The text to parse.
The parsed IMDb id.
True if parsing was successful, false otherwise.
Parses an TMDb id from a movie url.
The text with the url to parse.
The parsed TMDb id.
True if parsing was successful, false otherwise.
Parses an TMDb id from a series url.
The text with the url to parse.
The parsed TMDb id.
True if parsing was successful, false otherwise.
Parses an TVDb id from a url.
The text with the url to parse.
The parsed TVDb id.
True if parsing was successful, false otherwise.
Marks a BaseItem as needing custom serialisation from the Data field of the db.
Defines the .
Gets the completed installations.
Parses a plugin manifest at the supplied URL.
Name of the repository.
The URL to query.
Filter out incompatible plugins.
The cancellation token.
Task{IReadOnlyList{PackageInfo}}.
Gets all available packages that are supported by this version.
The cancellation token.
Task{IReadOnlyList{PackageInfo}}.
Returns all plugins matching the requirements.
The available packages.
The name of the plugin.
The id of the plugin.
The version of the plugin.
All plugins matching the requirements.
Returns all compatible versions ordered from newest to oldest.
The available packages.
The name.
The id of the plugin.
The minimum required version of the plugin.
The specific version of the plugin to install.
All compatible versions ordered from newest to oldest.
Returns the available compatible plugin updates.
The cancellation token.
The available plugin updates.
Installs the package.
The package.
The cancellation token.
.
Uninstalls a plugin.
The plugin.
Cancels the installation.
The id of the package that is being installed.
Returns true if the install was cancelled.
Defines the .
Gets or sets the .
Gets or sets the .
Custom -derived type for the StripHtmlRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Custom -derived type for the FqdnGeneratedRegex method.
Cached, thread-safe singleton instance.
Initializes the instance.
Provides a factory for creating instances to be used by methods on .
Creates an instance of a used by methods on .
Provides the runner that contains the custom logic implementing the specified regular expression.
Scan the starting from base.runtextstart for the next match.
The text being scanned by the regular expression.
Search starting from base.runtextpos for the next location a match could possibly start.
The text being scanned by the regular expression.
true if a possible match was found; false if no more matches are possible.
Determine whether at base.runtextpos is a match for the regular expression.
The text being scanned by the regular expression.
true if the regular expression matches at the current position; otherwise, false.
Helper methods used by generated -derived implementations.
Default timeout value set in , or if none was set.
Whether is non-infinite.
Pops 2 values from the backtracking stack.
Pushes 1 value onto the backtracking stack.
Pushes 2 values onto the backtracking stack.
Pushes 3 values onto the backtracking stack.
Supports searching for characters in or not in "-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzİK".