Merge with Kayone.
This commit is contained in:
commit
1f0e71c68e
Binary file not shown.
|
@ -1065,11 +1065,11 @@
|
|||
into an expression tree.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Conditions.ConditionParser.#ctor(System.String,NLog.Config.ConfigurationItemFactory)">
|
||||
<member name="M:NLog.Conditions.ConditionParser.#ctor(NLog.Internal.SimpleStringReader,NLog.Config.ConfigurationItemFactory)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.Conditions.ConditionParser"/> class.
|
||||
</summary>
|
||||
<param name="expressionText">The expression text.</param>
|
||||
<param name="stringReader">The string reader.</param>
|
||||
<param name="configurationItemFactory">Instance of <see cref="T:NLog.Config.ConfigurationItemFactory"/> used to resolve references to condition methods and layout renderers.</param>
|
||||
</member>
|
||||
<member name="M:NLog.Conditions.ConditionParser.ParseExpression(System.String)">
|
||||
|
@ -1089,6 +1089,17 @@
|
|||
<param name="configurationItemFactories">Instance of <see cref="T:NLog.Config.ConfigurationItemFactory"/> used to resolve references to condition methods and layout renderers.</param>
|
||||
<returns>The root of the expression syntax tree which can be used to get the value of the condition in a specified context.</returns>
|
||||
</member>
|
||||
<member name="M:NLog.Conditions.ConditionParser.ParseExpression(NLog.Internal.SimpleStringReader,NLog.Config.ConfigurationItemFactory)">
|
||||
<summary>
|
||||
Parses the specified condition string and turns it into
|
||||
<see cref="T:NLog.Conditions.ConditionExpression"/> tree.
|
||||
</summary>
|
||||
<param name="stringReader">The string reader.</param>
|
||||
<param name="configurationItemFactories">Instance of <see cref="T:NLog.Config.ConfigurationItemFactory"/> used to resolve references to condition methods and layout renderers.</param>
|
||||
<returns>
|
||||
The root of the expression syntax tree which can be used to get the value of the condition in a specified context.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="T:NLog.Conditions.ConditionRelationalExpression">
|
||||
<summary>
|
||||
Condition relational (<b>==</b>, <b>!=</b>, <b><</b>, <b><=</b>,
|
||||
|
@ -1185,11 +1196,11 @@
|
|||
Hand-written tokenizer for conditions.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Conditions.ConditionTokenizer.#ctor(System.String)">
|
||||
<member name="M:NLog.Conditions.ConditionTokenizer.#ctor(NLog.Internal.SimpleStringReader)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.Conditions.ConditionTokenizer"/> class.
|
||||
</summary>
|
||||
<param name="expressionText">The expression text.</param>
|
||||
<param name="stringReader">The string reader.</param>
|
||||
</member>
|
||||
<member name="M:NLog.Conditions.ConditionTokenizer.Expect(NLog.Conditions.ConditionTokenType)">
|
||||
<summary>
|
||||
|
@ -1378,6 +1389,17 @@
|
|||
<param name="type">The type to register.</param>
|
||||
<param name="itemNamePrefix">The item name prefix.</param>
|
||||
</member>
|
||||
<member name="M:NLog.Config.ConfigurationItemFactory.BuildDefaultFactory">
|
||||
<summary>
|
||||
Builds the default configuration item factory.
|
||||
</summary>
|
||||
<returns>Default factory.</returns>
|
||||
</member>
|
||||
<member name="M:NLog.Config.ConfigurationItemFactory.RegisterExtendedItems">
|
||||
<summary>
|
||||
Registers items in NLog.Extended.dll using late-bound types, so that we don't need a reference to NLog.Extended.dll.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:NLog.Config.ConfigurationItemFactory.Default">
|
||||
<summary>
|
||||
Gets or sets default singleton instance of <see cref="T:NLog.Config.ConfigurationItemFactory"/>.
|
||||
|
@ -1473,14 +1495,6 @@
|
|||
<param name="result">The result.</param>
|
||||
<returns>True if instance was created successfully, false otherwise.</returns>
|
||||
</member>
|
||||
<member name="P:NLog.Config.INamedItemFactory`2.AllRegisteredItems">
|
||||
<summary>
|
||||
Gets a collection of all registered items in the factory.
|
||||
</summary>
|
||||
<returns>Sequence of key/value pairs where each key represents the name
|
||||
of the item and value is the <typeparamref name="TDefinitionType"/> of
|
||||
the item.</returns>
|
||||
</member>
|
||||
<member name="T:NLog.Config.IFactory">
|
||||
<summary>
|
||||
Provides means to populate factories of named items (such as targets, layouts, layout renderers, etc.).
|
||||
|
@ -1500,6 +1514,13 @@
|
|||
<param name="type">The type to register.</param>
|
||||
<param name="itemNamePrefix">The item name prefix.</param>
|
||||
</member>
|
||||
<member name="M:NLog.Config.Factory`2.RegisterNamedType(System.String,System.String)">
|
||||
<summary>
|
||||
Registers the item based on a type name.
|
||||
</summary>
|
||||
<param name="itemName">Name of the item.</param>
|
||||
<param name="typeName">Name of the type.</param>
|
||||
</member>
|
||||
<member name="M:NLog.Config.Factory`2.Clear">
|
||||
<summary>
|
||||
Clears the contents of the factory.
|
||||
|
@ -1535,14 +1556,6 @@
|
|||
<param name="name">The name of the item.</param>
|
||||
<returns>Created item.</returns>
|
||||
</member>
|
||||
<member name="P:NLog.Config.Factory`2.AllRegisteredItems">
|
||||
<summary>
|
||||
Gets a collection of all registered items in the factory.
|
||||
</summary>
|
||||
<returns>Sequence of key/value pairs where each key represents the name
|
||||
of the item and value is the <see cref="T:System.Type"/> of
|
||||
the item.</returns>
|
||||
</member>
|
||||
<member name="T:NLog.Config.IInstallable">
|
||||
<summary>
|
||||
Implemented by objects which support installation and uninstallation.
|
||||
|
@ -2069,45 +2082,6 @@
|
|||
layout targets and filters.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.Config.RuntimeOS">
|
||||
<summary>
|
||||
Supported operating systems.
|
||||
</summary>
|
||||
<remarks>
|
||||
If you add anything here, make sure to add the appropriate detection
|
||||
code to <see cref="T:NLog.Internal.PlatformDetector"/>
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="F:NLog.Config.RuntimeOS.Any">
|
||||
<summary>
|
||||
Any operating system.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Config.RuntimeOS.Unix">
|
||||
<summary>
|
||||
Unix/Linux operating systems.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Config.RuntimeOS.WindowsCE">
|
||||
<summary>
|
||||
Windows CE.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Config.RuntimeOS.Windows">
|
||||
<summary>
|
||||
Desktop versions of Windows (95,98,ME).
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Config.RuntimeOS.WindowsNT">
|
||||
<summary>
|
||||
Windows NT, 2000, 2003 and future versions based on NT technology.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Config.RuntimeOS.Unknown">
|
||||
<summary>
|
||||
Unknown operating system.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.Config.SimpleConfigurator">
|
||||
<summary>
|
||||
Provides simple programmatic configuration API used for trivial logging cases.
|
||||
|
@ -3322,6 +3296,18 @@
|
|||
A value of <c>true</c> if the specified level is enabled; otherwise, <c>false</c>.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.MessageBoxHelper">
|
||||
<summary>
|
||||
Message Box helper.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MessageBoxHelper.Show(System.String,System.String)">
|
||||
<summary>
|
||||
Shows the specified message using platform-specific message box.
|
||||
</summary>
|
||||
<param name="message">The message.</param>
|
||||
<param name="caption">The caption.</param>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.MultiFileWatcher">
|
||||
<summary>
|
||||
Watches multiple files at the same time and raises an event whenever
|
||||
|
@ -3354,75 +3340,9 @@
|
|||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.Dispose">
|
||||
<member name="T:NLog.Internal.NetworkSenders.HttpNetworkSender">
|
||||
<summary>
|
||||
Sends a QUIT message to the SMTP server, gracefully ends the TCP connection, and releases all resources used by the current instance of the <see cref="T:System.Net.Mail.SmtpClient"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#get_Host">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#set_Host(System.String)">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#get_Port">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#set_Port(System.Int32)">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#get_Credentials">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#set_Credentials(System.Net.ICredentialsByHost)">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#get_EnableSsl">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#set_EnableSsl(System.Boolean)">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.MySmtpClient.NLog#Internal#ISmtpClient#Send(System.Net.Mail.MailMessage)">
|
||||
<summary>
|
||||
Supports mocking of SMTP Client code.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.NetworkSenders.INetworkSenderFactory">
|
||||
<summary>
|
||||
Creates instances of <see cref="T:NLog.Internal.NetworkSenders.NetworkSender"/> objects for given URLs.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.NetworkSenders.INetworkSenderFactory.Create(System.String)">
|
||||
<summary>
|
||||
Creates a new instance of the network sender based on a network URL.
|
||||
</summary>
|
||||
<param name="url">
|
||||
URL that determines the network sender to be created.
|
||||
</param>
|
||||
<returns>
|
||||
A newly created network sender.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.NetworkSenders.ISocket">
|
||||
<summary>
|
||||
Interface for mocking socket calls.
|
||||
Network sender which uses HTTP or HTTPS POST.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.NetworkSenders.NetworkSender">
|
||||
|
@ -3518,6 +3438,43 @@
|
|||
Gets the last send time.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.NetworkSenders.HttpNetworkSender.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.Internal.NetworkSenders.HttpNetworkSender"/> class.
|
||||
</summary>
|
||||
<param name="url">The network URL.</param>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.NetworkSenders.HttpNetworkSender.DoSend(System.Byte[],System.Int32,System.Int32,NLog.Common.AsyncContinuation)">
|
||||
<summary>
|
||||
Actually sends the given text over the specified protocol.
|
||||
</summary>
|
||||
<param name="bytes">The bytes to be sent.</param>
|
||||
<param name="offset">Offset in buffer.</param>
|
||||
<param name="length">Number of bytes to send.</param>
|
||||
<param name="asyncContinuation">The async continuation to be invoked after the buffer has been sent.</param>
|
||||
<remarks>To be overridden in inheriting classes.</remarks>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.NetworkSenders.INetworkSenderFactory">
|
||||
<summary>
|
||||
Creates instances of <see cref="T:NLog.Internal.NetworkSenders.NetworkSender"/> objects for given URLs.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.NetworkSenders.INetworkSenderFactory.Create(System.String)">
|
||||
<summary>
|
||||
Creates a new instance of the network sender based on a network URL.
|
||||
</summary>
|
||||
<param name="url">
|
||||
URL that determines the network sender to be created.
|
||||
</param>
|
||||
<returns>
|
||||
A newly created network sender.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.NetworkSenders.ISocket">
|
||||
<summary>
|
||||
Interface for mocking socket calls.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.NetworkSenders.NetworkSenderFactory">
|
||||
<summary>
|
||||
Default implementation of <see cref="T:NLog.Internal.NetworkSenders.INetworkSenderFactory"/>.
|
||||
|
@ -3809,6 +3766,69 @@
|
|||
Reflection helpers for accessing properties.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.ReflectionHelpers">
|
||||
<summary>
|
||||
Reflection helpers.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.ReflectionHelpers.SafeGetTypes(System.Reflection.Assembly)">
|
||||
<summary>
|
||||
Gets all usable exported types from the given assembly.
|
||||
</summary>
|
||||
<param name="assembly">Assembly to scan.</param>
|
||||
<returns>Usable types from the given assembly.</returns>
|
||||
<remarks>Types which cannot be loaded are skipped.</remarks>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.RuntimeOS">
|
||||
<summary>
|
||||
Supported operating systems.
|
||||
</summary>
|
||||
<remarks>
|
||||
If you add anything here, make sure to add the appropriate detection
|
||||
code to <see cref="T:NLog.Internal.PlatformDetector"/>
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="F:NLog.Internal.RuntimeOS.Any">
|
||||
<summary>
|
||||
Any operating system.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Internal.RuntimeOS.Unix">
|
||||
<summary>
|
||||
Unix/Linux operating systems.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Internal.RuntimeOS.WindowsCE">
|
||||
<summary>
|
||||
Windows CE.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Internal.RuntimeOS.Windows">
|
||||
<summary>
|
||||
Desktop versions of Windows (95,98,ME).
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Internal.RuntimeOS.WindowsNT">
|
||||
<summary>
|
||||
Windows NT, 2000, 2003 and future versions based on NT technology.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.Internal.RuntimeOS.Unknown">
|
||||
<summary>
|
||||
Unknown operating system.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.SimpleStringReader">
|
||||
<summary>
|
||||
Simple character tokenizer.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Internal.SimpleStringReader.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.Internal.SimpleStringReader"/> class.
|
||||
</summary>
|
||||
<param name="text">The text to be tokenized.</param>
|
||||
</member>
|
||||
<member name="T:NLog.Internal.SingleCallContinuation">
|
||||
<summary>
|
||||
Implements a single-call guard around given continuation function.
|
||||
|
@ -4276,6 +4296,12 @@
|
|||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.DateLayoutRenderer.UniversalTime">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether to output UTC time instead of local time.
|
||||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.EnvironmentLayoutRenderer">
|
||||
<summary>
|
||||
The environment variable.
|
||||
|
@ -4338,12 +4364,33 @@
|
|||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.ExceptionLayoutRenderer.InnerFormat">
|
||||
<summary>
|
||||
Gets or sets the format of the output of inner exceptions. Must be a comma-separated list of exception
|
||||
properties: Message, Type, ShortType, ToString, Method, StackTrace.
|
||||
This parameter value is case-insensitive.
|
||||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.ExceptionLayoutRenderer.Separator">
|
||||
<summary>
|
||||
Gets or sets the separator used to concatenate parts specified in the Format.
|
||||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.ExceptionLayoutRenderer.MaxInnerExceptionLevel">
|
||||
<summary>
|
||||
Gets or sets the maximum number of inner exceptions to include in the output.
|
||||
By default inner exceptions are not enabled for compatibility with NLog 1.0.
|
||||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.ExceptionLayoutRenderer.InnerExceptionSeparator">
|
||||
<summary>
|
||||
Gets or sets the separator between inner exceptions.
|
||||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.FileContentsLayoutRenderer">
|
||||
<summary>
|
||||
Renders contents of the specified file.
|
||||
|
@ -4515,13 +4562,6 @@
|
|||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.IdentityLayoutRenderer.FSNormalize">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether to modify the output of this renderer so it can be used as a part of file path
|
||||
(illegal characters are replaced with '_').
|
||||
</summary>
|
||||
<docgen category='Advanced Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.InstallContextLayoutRenderer">
|
||||
<summary>
|
||||
Installation parameter (passed to InstallNLogConfig).
|
||||
|
@ -4656,6 +4696,12 @@
|
|||
</summary>
|
||||
<docgen category="Payload Options" order="10"/>
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.Log4JXmlEventLayoutRenderer.NdcItemSeparator">
|
||||
<summary>
|
||||
Gets or sets the NDC item separator.
|
||||
</summary>
|
||||
<docgen category='Payload Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.Log4JXmlEventLayoutRenderer.NLog#Internal#IUsesStackTrace#StackTraceUsage">
|
||||
<summary>
|
||||
Gets the level of stack trace information required by the implementing class.
|
||||
|
@ -4691,6 +4737,12 @@
|
|||
<param name="builder">The <see cref="T:System.Text.StringBuilder"/> to append the rendered data to.</param>
|
||||
<param name="logEvent">Logging event.</param>
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.LongDateLayoutRenderer.UniversalTime">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether to output UTC time instead of local time.
|
||||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.MachineNameLayoutRenderer">
|
||||
<summary>
|
||||
The machine name that the process is running on.
|
||||
|
@ -4731,6 +4783,11 @@
|
|||
The formatted log message.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.MessageLayoutRenderer.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.LayoutRenderers.MessageLayoutRenderer"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.MessageLayoutRenderer.Append(System.Text.StringBuilder,NLog.LogEventInfo)">
|
||||
<summary>
|
||||
Renders the log message including any positional parameters and appends it to the specified <see cref="T:System.Text.StringBuilder"/>.
|
||||
|
@ -4738,6 +4795,18 @@
|
|||
<param name="builder">The <see cref="T:System.Text.StringBuilder"/> to append the rendered data to.</param>
|
||||
<param name="logEvent">Logging event.</param>
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.MessageLayoutRenderer.WithException">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether to log exception along with message.
|
||||
</summary>
|
||||
<docgen category='Layout Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.MessageLayoutRenderer.ExceptionSeparator">
|
||||
<summary>
|
||||
Gets or sets the string that separates message from the exception.
|
||||
</summary>
|
||||
<docgen category='Layout Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.NdcLayoutRenderer">
|
||||
<summary>
|
||||
Nested Diagnostic Context item. Provided for compatibility with log4net.
|
||||
|
@ -5242,30 +5311,11 @@
|
|||
<param name="builder">The <see cref="T:System.Text.StringBuilder"/> to append the rendered data to.</param>
|
||||
<param name="logEvent">Logging event.</param>
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.SilverlightApplicationInfoOption">
|
||||
<member name="P:NLog.LayoutRenderers.ShortDateLayoutRenderer.UniversalTime">
|
||||
<summary>
|
||||
Specifies application information to display in ${sl-appinfo} renderer.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.LayoutRenderers.SilverlightApplicationInfoOption.XapUri">
|
||||
<summary>
|
||||
URI of the current application XAP file.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.LayoutRenderers.SilverlightApplicationInfoOption.IsOutOfBrowser">
|
||||
<summary>
|
||||
Whether application is running out-of-browser.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.LayoutRenderers.SilverlightApplicationInfoOption.InstallState">
|
||||
<summary>
|
||||
Installed state of an application.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:NLog.LayoutRenderers.SilverlightApplicationInfoOption.HasElevatedPermissions">
|
||||
<summary>
|
||||
Whether application is running with elevated permissions.
|
||||
Gets or sets a value indicating whether to output UTC time instead of local time.
|
||||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.SpecialFolderLayoutRenderer">
|
||||
<summary>
|
||||
|
@ -5431,6 +5481,24 @@
|
|||
<param name="builder">The <see cref="T:System.Text.StringBuilder"/> to append the rendered data to.</param>
|
||||
<param name="logEvent">Logging event.</param>
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.TimeLayoutRenderer">
|
||||
<summary>
|
||||
The time in a 24-hour, sortable format HH:mm:ss.mmm.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.TimeLayoutRenderer.Append(System.Text.StringBuilder,NLog.LogEventInfo)">
|
||||
<summary>
|
||||
Renders time in the 24-h format (HH:mm:ss.mmm) and appends it to the specified <see cref="T:System.Text.StringBuilder"/>.
|
||||
</summary>
|
||||
<param name="builder">The <see cref="T:System.Text.StringBuilder"/> to append the rendered data to.</param>
|
||||
<param name="logEvent">Logging event.</param>
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.TimeLayoutRenderer.UniversalTime">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether to output UTC time instead of local time.
|
||||
</summary>
|
||||
<docgen category='Rendering Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.WindowsIdentityLayoutRenderer">
|
||||
<summary>
|
||||
Thread Windows identity information (username).
|
||||
|
@ -5538,6 +5606,30 @@
|
|||
</summary>
|
||||
<docgen category="Caching Options" order="10"/>
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.Wrappers.FileSystemNormalizeLayoutRendererWrapper">
|
||||
<summary>
|
||||
Filters characters not allowed in the file names by replacing them with safe character.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.FileSystemNormalizeLayoutRendererWrapper.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.LayoutRenderers.Wrappers.FileSystemNormalizeLayoutRendererWrapper"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.FileSystemNormalizeLayoutRendererWrapper.Transform(System.String)">
|
||||
<summary>
|
||||
Post-processes the rendered message.
|
||||
</summary>
|
||||
<param name="text">The text to be post-processed.</param>
|
||||
<returns>Padded and trimmed string.</returns>
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.Wrappers.FileSystemNormalizeLayoutRendererWrapper.FSNormalize">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether to modify the output of this renderer so it can be used as a part of file path
|
||||
(illegal characters are replaced with '_').
|
||||
</summary>
|
||||
<docgen category='Advanced Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.Wrappers.LowercaseLayoutRendererWrapper">
|
||||
<summary>
|
||||
Converts the result of another layout output to lower case.
|
||||
|
@ -5568,6 +5660,27 @@
|
|||
</summary>
|
||||
<docgen category='Transformation Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.Wrappers.OnExceptionLayoutRendererWrapper">
|
||||
<summary>
|
||||
Only outputs the inner layout when exception has been defined for log message.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.OnExceptionLayoutRendererWrapper.Transform(System.String)">
|
||||
<summary>
|
||||
Transforms the output of another layout.
|
||||
</summary>
|
||||
<param name="text">Output to be transform.</param>
|
||||
<returns>Transformed text.</returns>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.OnExceptionLayoutRendererWrapper.RenderInner(NLog.LogEventInfo)">
|
||||
<summary>
|
||||
Renders the inner layout contents.
|
||||
</summary>
|
||||
<param name="logEvent">The log event.</param>
|
||||
<returns>
|
||||
Contents of inner layout.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.Wrappers.PaddingLayoutRendererWrapper">
|
||||
<summary>
|
||||
Applies padding to another layout output.
|
||||
|
@ -5768,6 +5881,83 @@
|
|||
<value>A value of <c>true</c> if space should be translated to '+'; otherwise, <c>false</c>.</value>
|
||||
<docgen category='Transformation Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.Wrappers.WhenEmptyLayoutRendererWrapper">
|
||||
<summary>
|
||||
Outputs alternative layout when the inner layout produces empty result.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.WhenEmptyLayoutRendererWrapper.Transform(System.String)">
|
||||
<summary>
|
||||
Transforms the output of another layout.
|
||||
</summary>
|
||||
<param name="text">Output to be transform.</param>
|
||||
<returns>Transformed text.</returns>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.WhenEmptyLayoutRendererWrapper.RenderInner(NLog.LogEventInfo)">
|
||||
<summary>
|
||||
Renders the inner layout contents.
|
||||
</summary>
|
||||
<param name="logEvent">The log event.</param>
|
||||
<returns>
|
||||
Contents of inner layout.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.Wrappers.WhenEmptyLayoutRendererWrapper.WhenEmpty">
|
||||
<summary>
|
||||
Gets or sets the layout to be rendered when original layout produced empty result.
|
||||
</summary>
|
||||
<docgen category="Transformation Options" order="10"/>
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.Wrappers.WhenLayoutRendererWrapper">
|
||||
<summary>
|
||||
Only outputs the inner layout when the specified condition has been met.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.WhenLayoutRendererWrapper.Transform(System.String)">
|
||||
<summary>
|
||||
Transforms the output of another layout.
|
||||
</summary>
|
||||
<param name="text">Output to be transform.</param>
|
||||
<returns>Transformed text.</returns>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.WhenLayoutRendererWrapper.RenderInner(NLog.LogEventInfo)">
|
||||
<summary>
|
||||
Renders the inner layout contents.
|
||||
</summary>
|
||||
<param name="logEvent">The log event.</param>
|
||||
<returns>
|
||||
Contents of inner layout.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.Wrappers.WhenLayoutRendererWrapper.When">
|
||||
<summary>
|
||||
Gets or sets the condition that must be met for the inner layout to be printed.
|
||||
</summary>
|
||||
<docgen category="Transformation Options" order="10"/>
|
||||
</member>
|
||||
<member name="T:NLog.LayoutRenderers.Wrappers.XmlEncodeLayoutRendererWrapper">
|
||||
<summary>
|
||||
Converts the result of another layout output to be XML-compliant.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.XmlEncodeLayoutRendererWrapper.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.LayoutRenderers.Wrappers.XmlEncodeLayoutRendererWrapper"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LayoutRenderers.Wrappers.XmlEncodeLayoutRendererWrapper.Transform(System.String)">
|
||||
<summary>
|
||||
Post-processes the rendered message.
|
||||
</summary>
|
||||
<param name="text">The text to be post-processed.</param>
|
||||
<returns>Padded and trimmed string.</returns>
|
||||
</member>
|
||||
<member name="P:NLog.LayoutRenderers.Wrappers.XmlEncodeLayoutRendererWrapper.XmlEncode">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether to apply XML encoding.
|
||||
</summary>
|
||||
<docgen category="Transformation Options" order="10"/>
|
||||
</member>
|
||||
<member name="T:NLog.Layouts.CsvColumn">
|
||||
<summary>
|
||||
A column in the CSV.
|
||||
|
@ -5937,18 +6127,6 @@
|
|||
Gets the logging configuration this target is part of.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Layouts.LayoutWithHeaderAndFooter.Precalculate(NLog.LogEventInfo)">
|
||||
<summary>
|
||||
Precalculates the layout for the specified log event and stores the result
|
||||
in per-log event cache.
|
||||
</summary>
|
||||
<param name="logEvent">The log event.</param>
|
||||
<remarks>
|
||||
Calling this method enables you to store the log event in a buffer
|
||||
and/or potentially evaluate it in another thread even though the
|
||||
layout may contain thread-dependent renderer.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:NLog.Layouts.LayoutWithHeaderAndFooter.GetFormattedMessage(NLog.LogEventInfo)">
|
||||
<summary>
|
||||
Renders the layout for the specified logging event by invoking layout renderers.
|
||||
|
@ -6083,17 +6261,6 @@
|
|||
Parses layout strings.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.Layouts.LayoutParser.Tokenizer">
|
||||
<summary>
|
||||
Simple character tokenizer.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Layouts.LayoutParser.Tokenizer.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.Layouts.LayoutParser.Tokenizer"/> class.
|
||||
</summary>
|
||||
<param name="text">The text to be tokenized.</param>
|
||||
</member>
|
||||
<member name="T:NLog.Layouts.Log4JXmlEventLayout">
|
||||
<summary>
|
||||
A specialized layout that renders Log4j-compatible XML events.
|
||||
|
@ -9481,11 +9648,6 @@
|
|||
</summary>
|
||||
<param name="result">The result.</param>
|
||||
</member>
|
||||
<member name="T:NLog.LogReceiverService.ILogReceiverClientChannel">
|
||||
<summary>
|
||||
Log Receiver Client Channel.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:NLog.LogReceiverService.ILogReceiverServer">
|
||||
<summary>
|
||||
Service contract for Log Receiver server.
|
||||
|
@ -9497,6 +9659,34 @@
|
|||
</summary>
|
||||
<param name="events">The events.</param>
|
||||
</member>
|
||||
<member name="T:NLog.LogReceiverService.LogReceiverForwardingService">
|
||||
<summary>
|
||||
Implementation of <see cref="T:NLog.LogReceiverService.ILogReceiverServer"/> which forwards received logs through <see cref="T:NLog.LogManager"/> or a given <see cref="T:NLog.LogFactory"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LogReceiverService.LogReceiverForwardingService.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.LogReceiverService.LogReceiverForwardingService"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.LogReceiverService.LogReceiverForwardingService.#ctor(NLog.LogFactory)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:NLog.LogReceiverService.LogReceiverForwardingService"/> class.
|
||||
</summary>
|
||||
<param name="logFactory">The log factory.</param>
|
||||
</member>
|
||||
<member name="M:NLog.LogReceiverService.LogReceiverForwardingService.ProcessLogMessages(NLog.LogReceiverService.NLogEvents)">
|
||||
<summary>
|
||||
Processes the log messages.
|
||||
</summary>
|
||||
<param name="events">The events to process.</param>
|
||||
</member>
|
||||
<member name="M:NLog.LogReceiverService.LogReceiverForwardingService.ProcessLogMessages(NLog.LogEventInfo[])">
|
||||
<summary>
|
||||
Processes the log messages.
|
||||
</summary>
|
||||
<param name="logEvents">The log events.</param>
|
||||
</member>
|
||||
<member name="T:NLog.LogReceiverService.LogReceiverServiceConfig">
|
||||
<summary>
|
||||
Internal configuration of Log Receiver Service contracts.
|
||||
|
@ -10518,6 +10708,12 @@
|
|||
</summary>
|
||||
<docgen category="Payload Options" order="10"/>
|
||||
</member>
|
||||
<member name="P:NLog.Targets.NLogViewerTarget.NdcItemSeparator">
|
||||
<summary>
|
||||
Gets or sets the NDC item separator.
|
||||
</summary>
|
||||
<docgen category='Payload Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.Targets.NLogViewerTarget.Parameters">
|
||||
<summary>
|
||||
Gets the collection of parameters. Each parameter contains a mapping
|
||||
|
@ -10534,6 +10730,7 @@
|
|||
<summary>
|
||||
Gets or sets the instance of <see cref="T:NLog.Layouts.Log4JXmlEventLayout"/> that is used to format log messages.
|
||||
</summary>
|
||||
<docgen category="Layout Options" order="10"/>
|
||||
</member>
|
||||
<member name="M:NLog.Targets.ChainsawTarget.#ctor">
|
||||
<summary>
|
||||
|
@ -11837,6 +12034,14 @@
|
|||
Initializes a new instance of the <see cref="T:NLog.Targets.LogReceiverWebServiceTarget"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Targets.LogReceiverWebServiceTarget.OnSend(NLog.LogReceiverService.NLogEvents,System.Collections.Generic.IEnumerable{NLog.Common.AsyncLogEventInfo})">
|
||||
<summary>
|
||||
Called when log events are being sent (test hook).
|
||||
</summary>
|
||||
<param name="events">The events.</param>
|
||||
<param name="asyncContinuations">The async continuations.</param>
|
||||
<returns>True if events should be sent, false to stop processing them.</returns>
|
||||
</member>
|
||||
<member name="M:NLog.Targets.LogReceiverWebServiceTarget.Write(NLog.Common.AsyncLogEventInfo)">
|
||||
<summary>
|
||||
Writes logging event to the log target. Must be overridden in inheriting
|
||||
|
@ -11886,6 +12091,12 @@
|
|||
<value>The parameters.</value>
|
||||
<docgen category='Payload Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.Targets.LogReceiverWebServiceTarget.IncludeEventProperties">
|
||||
<summary>
|
||||
Gets or sets a value indicating whether to include per-event properties in the payload sent to the server.
|
||||
</summary>
|
||||
<docgen category='Payload Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.Targets.MailTarget">
|
||||
<summary>
|
||||
Sends log messages by email using SMTP protocol.
|
||||
|
@ -12206,7 +12417,7 @@
|
|||
Initializes a new instance of the <see cref="T:NLog.Targets.MethodCallTargetBase"/> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Targets.MethodCallTargetBase.Write(NLog.LogEventInfo)">
|
||||
<member name="M:NLog.Targets.MethodCallTargetBase.Write(NLog.Common.AsyncLogEventInfo)">
|
||||
<summary>
|
||||
Prepares an array of parameters to be passed based on the logging event and calls DoInvoke().
|
||||
</summary>
|
||||
|
@ -12214,6 +12425,13 @@
|
|||
The logging event.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:NLog.Targets.MethodCallTargetBase.DoInvoke(System.Object[],NLog.Common.AsyncContinuation)">
|
||||
<summary>
|
||||
Calls the target method. Must be implemented in concrete classes.
|
||||
</summary>
|
||||
<param name="parameters">Method call parameters.</param>
|
||||
<param name="continuation">The continuation.</param>
|
||||
</member>
|
||||
<member name="M:NLog.Targets.MethodCallTargetBase.DoInvoke(System.Object[])">
|
||||
<summary>
|
||||
Calls the target method. Must be implemented in concrete classes.
|
||||
|
@ -12913,10 +13131,17 @@
|
|||
</summary>
|
||||
</member>
|
||||
<member name="M:NLog.Targets.WebServiceTarget.DoInvoke(System.Object[])">
|
||||
<summary>
|
||||
Calls the target method. Must be implemented in concrete classes.
|
||||
</summary>
|
||||
<param name="parameters">Method call parameters.</param>
|
||||
</member>
|
||||
<member name="M:NLog.Targets.WebServiceTarget.DoInvoke(System.Object[],NLog.Common.AsyncContinuation)">
|
||||
<summary>
|
||||
Invokes the web service method.
|
||||
</summary>
|
||||
<param name="parameters">Parameters to be passed.</param>
|
||||
<param name="continuation">The continuation.</param>
|
||||
</member>
|
||||
<member name="P:NLog.Targets.WebServiceTarget.Url">
|
||||
<summary>
|
||||
|
@ -12942,6 +13167,12 @@
|
|||
</summary>
|
||||
<docgen category='Web Service Options' order='10' />
|
||||
</member>
|
||||
<member name="P:NLog.Targets.WebServiceTarget.Encoding">
|
||||
<summary>
|
||||
Gets or sets the encoding.
|
||||
</summary>
|
||||
<docgen category='Web Service Options' order='10' />
|
||||
</member>
|
||||
<member name="T:NLog.Targets.Win32FileAttributes">
|
||||
<summary>
|
||||
Win32 file attributes.
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
using AutoMoq;
|
||||
using FluentAssertions;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using NzbDrone.Core.Providers.Core;
|
||||
|
@ -13,52 +14,81 @@ namespace NzbDrone.Core.Test
|
|||
public class ConfigProviderTest : TestBase
|
||||
{
|
||||
[Test]
|
||||
public void Overwrite_existing_value()
|
||||
public void Add_new_value_to_database()
|
||||
{
|
||||
const string key = "MY_KEY";
|
||||
const string value = "MY_VALUE";
|
||||
|
||||
//Arrange
|
||||
var config = new Config {Key = key, Value = value};
|
||||
|
||||
var mocker = new AutoMoqer();
|
||||
|
||||
mocker.GetMock<IRepository>()
|
||||
.Setup(r => r.Single<Config>(key))
|
||||
.Returns(config);
|
||||
var db = MockLib.GetEmptyDatabase();
|
||||
mocker.SetConstant(db);
|
||||
|
||||
//Act
|
||||
mocker.Resolve<ConfigProvider>().SetValue(key, value);
|
||||
|
||||
//Assert
|
||||
mocker.GetMock<IRepository>().Verify(c => c.Update(config));
|
||||
mocker.GetMock<IRepository>().Verify(c => c.Add(It.IsAny<Config>()), Times.Never());
|
||||
mocker.Resolve<ConfigProvider>().GetValue(key, "").Should().Be(value);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Add_new_value()
|
||||
public void Get_value_from_database()
|
||||
{
|
||||
const string key = "MY_KEY";
|
||||
const string value = "MY_VALUE";
|
||||
|
||||
//Arrange
|
||||
var mocker = new AutoMoqer();
|
||||
var db = MockLib.GetEmptyDatabase();
|
||||
mocker.SetConstant(db);
|
||||
|
||||
mocker.GetMock<IRepository>()
|
||||
.Setup(r => r.Single<Config>(It.IsAny<string>()))
|
||||
.Returns<Config>(null)
|
||||
.Verifiable();
|
||||
db.Insert(new Config { Key = key, Value = value });
|
||||
|
||||
//Act
|
||||
mocker.Resolve<ConfigProvider>().SetValue(key, value);
|
||||
var result = mocker.Resolve<ConfigProvider>().GetValue(key, "");
|
||||
|
||||
//Assert
|
||||
mocker.GetMock<IRepository>().Verify();
|
||||
mocker.GetMock<IRepository>().Verify(r => r.Update(It.IsAny<Config>()), Times.Never());
|
||||
mocker.GetMock<IRepository>().Verify(r => r.Add(It.Is<Config>(c => c.Key == key && c.Value == value)),
|
||||
Times.Once());
|
||||
result.Should().Be(value);
|
||||
}
|
||||
|
||||
|
||||
[Test]
|
||||
public void Get_value_should_return_default_when_no_value()
|
||||
{
|
||||
const string key = "MY_KEY";
|
||||
const string value = "MY_VALUE";
|
||||
|
||||
var mocker = new AutoMoqer();
|
||||
var db = MockLib.GetEmptyDatabase();
|
||||
mocker.SetConstant(db);
|
||||
|
||||
|
||||
//Act
|
||||
var result = mocker.Resolve<ConfigProvider>().GetValue(key, value);
|
||||
|
||||
//Assert
|
||||
result.Should().Be(value);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void New_value_should_update_old_value()
|
||||
{
|
||||
const string key = "MY_KEY";
|
||||
const string originalValue = "OLD_VALUE";
|
||||
const string newValue = "NEW_VALUE";
|
||||
|
||||
var mocker = new AutoMoqer();
|
||||
var db = MockLib.GetEmptyDatabase();
|
||||
mocker.SetConstant(db);
|
||||
|
||||
db.Insert(new Config { Key = key, Value = originalValue });
|
||||
|
||||
//Act
|
||||
mocker.Resolve<ConfigProvider>().SetValue(key, newValue);
|
||||
var result = mocker.Resolve<ConfigProvider>().GetValue(key, "");
|
||||
|
||||
//Assert
|
||||
result.Should().Be(newValue);
|
||||
db.Fetch<Config>().Should().HaveCount(1);
|
||||
}
|
||||
|
||||
Assert.Pass();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -126,8 +126,6 @@ namespace NzbDrone.Core.Test.Framework
|
|||
|
||||
private static void ForceMigration(IRepository repository)
|
||||
{
|
||||
repository.All<Series>().Count();
|
||||
repository.All<Episode>().Count();
|
||||
repository.All<EpisodeFile>().Count();
|
||||
repository.All<QualityProfile>().Count();
|
||||
repository.All<History>().Count();
|
||||
|
|
Binary file not shown.
|
@ -53,6 +53,10 @@ namespace NzbDrone.Core.Datastore.Migrations
|
|||
.WithNotNullableColumn("Size", DbType.Int64)
|
||||
.WithNotNullableColumn("DateAdded", DbType.DateTime)
|
||||
.WithNotNullableColumn("SeasonNumber", DbType.Int16);
|
||||
|
||||
db.CreateTable("Config")
|
||||
.WithNotNullableColumn("Key", DbType.String).Unique()
|
||||
.WithNotNullableColumn("Value", DbType.String);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -133,8 +133,9 @@
|
|||
<Reference Include="MigSharp">
|
||||
<HintPath>..\Libraries\MigSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MvcMiniProfiler">
|
||||
<HintPath>..\packages\MiniProfiler.1.2\lib\MvcMiniProfiler.dll</HintPath>
|
||||
<Reference Include="MvcMiniProfiler, Version=2.1.4183.14740, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\MiniProfiler.1.3\lib\MvcMiniProfiler.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Ninject, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Ninject.2.2.1.4\lib\net40-Full\Ninject.dll</HintPath>
|
||||
|
|
|
@ -5,6 +5,7 @@ using Ninject;
|
|||
using NLog;
|
||||
using NzbDrone.Core.Model;
|
||||
using NzbDrone.Core.Repository;
|
||||
using PetaPoco;
|
||||
using SubSonic.Repository;
|
||||
|
||||
namespace NzbDrone.Core.Providers.Core
|
||||
|
@ -12,17 +13,18 @@ namespace NzbDrone.Core.Providers.Core
|
|||
public class ConfigProvider
|
||||
{
|
||||
private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
|
||||
private readonly IRepository _repository;
|
||||
private readonly IDatabase _database;
|
||||
|
||||
|
||||
[Inject]
|
||||
public ConfigProvider(IRepository repository)
|
||||
public ConfigProvider(IDatabase database)
|
||||
{
|
||||
_repository = repository;
|
||||
_database = database;
|
||||
}
|
||||
|
||||
public IList<Config> All()
|
||||
{
|
||||
return _repository.All<Config>().ToList();
|
||||
return _database.Fetch<Config>();
|
||||
}
|
||||
|
||||
public ConfigProvider()
|
||||
|
@ -129,7 +131,7 @@ namespace NzbDrone.Core.Providers.Core
|
|||
|
||||
public virtual String SabHost
|
||||
{
|
||||
get { return GetValue("SabHost", "localhost", true); }
|
||||
get { return GetValue("SabHost", "localhost"); }
|
||||
|
||||
set { SetValue("SabHost", value); }
|
||||
}
|
||||
|
@ -164,7 +166,7 @@ namespace NzbDrone.Core.Providers.Core
|
|||
|
||||
public virtual String SabTvCategory
|
||||
{
|
||||
get { return GetValue("SabTvCategory", "TV", false); }
|
||||
get { return GetValue("SabTvCategory", "TV"); }
|
||||
|
||||
set { SetValue("SabTvCategory", value); }
|
||||
}
|
||||
|
@ -178,7 +180,7 @@ namespace NzbDrone.Core.Providers.Core
|
|||
|
||||
public virtual String SabDropDirectory
|
||||
{
|
||||
get { return GetValue("SabTvDropDirectory", "", false); }
|
||||
get { return GetValue("SabTvDropDirectory"); }
|
||||
|
||||
set { SetValue("SabTvDropDirectory", value); }
|
||||
}
|
||||
|
@ -230,7 +232,7 @@ namespace NzbDrone.Core.Providers.Core
|
|||
|
||||
public virtual string SeasonFolderFormat
|
||||
{
|
||||
get { return GetValue("Sorting_SeasonFolderFormat", "Season %s", false); }
|
||||
get { return GetValue("Sorting_SeasonFolderFormat", "Season %s"); }
|
||||
set { SetValue("Sorting_SeasonFolderFormat", value); }
|
||||
}
|
||||
|
||||
|
@ -261,31 +263,29 @@ namespace NzbDrone.Core.Providers.Core
|
|||
|
||||
private string GetValue(string key)
|
||||
{
|
||||
return GetValue(key, String.Empty, false);
|
||||
return GetValue(key, String.Empty);
|
||||
}
|
||||
|
||||
private bool GetValueBoolean(string key, bool defaultValue = false)
|
||||
{
|
||||
return Convert.ToBoolean(GetValue(key, defaultValue, false));
|
||||
return Convert.ToBoolean(GetValue(key, defaultValue));
|
||||
}
|
||||
|
||||
private int GetValueInt(string key, int defaultValue = 0)
|
||||
{
|
||||
return Convert.ToInt16(GetValue(key, defaultValue, false));
|
||||
return Convert.ToInt16(GetValue(key, defaultValue));
|
||||
}
|
||||
|
||||
public virtual string GetValue(string key, object defaultValue, bool makePermanent)
|
||||
public virtual string GetValue(string key, object defaultValue)
|
||||
{
|
||||
string value;
|
||||
|
||||
var dbValue = _repository.Single<Config>(key);
|
||||
var dbValue = _database.SingleOrDefault<Config>(key);
|
||||
|
||||
if (dbValue != null && !String.IsNullOrEmpty(dbValue.Value))
|
||||
return dbValue.Value;
|
||||
|
||||
Logger.Debug("Unable to find config key '{0}' defaultValue:'{1}'", key, defaultValue);
|
||||
if (makePermanent)
|
||||
SetValue(key, defaultValue.ToString());
|
||||
value = defaultValue.ToString();
|
||||
|
||||
return value;
|
||||
|
@ -310,20 +310,16 @@ namespace NzbDrone.Core.Providers.Core
|
|||
|
||||
Logger.Debug("Writing Setting to file. Key:'{0}' Value:'{1}'", key, value);
|
||||
|
||||
var dbValue = _repository.Single<Config>(key);
|
||||
var dbValue = _database.SingleOrDefault<Config>("WHERE KEY=@0", key);
|
||||
|
||||
if (dbValue == null)
|
||||
{
|
||||
_repository.Add(new Config
|
||||
{
|
||||
Key = key,
|
||||
Value = value
|
||||
});
|
||||
_database.Insert(new Config { Key = key, Value = value });
|
||||
}
|
||||
else
|
||||
{
|
||||
dbValue.Value = value;
|
||||
_repository.Update(dbValue);
|
||||
_database.Update(dbValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -23,9 +23,9 @@ namespace NzbDrone.Core.Providers.ExternalNotification
|
|||
{
|
||||
const string header = "NzbDrone [TV] - Grabbed";
|
||||
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcEnabled", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcEnabled", false)))
|
||||
{
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnGrab", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnGrab", false)))
|
||||
{
|
||||
_logger.Trace("Sending Notification to XBMC");
|
||||
_xbmcProvider.Notify(header, message);
|
||||
|
@ -41,21 +41,21 @@ namespace NzbDrone.Core.Providers.ExternalNotification
|
|||
{
|
||||
const string header = "NzbDrone [TV] - Downloaded";
|
||||
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcEnabled", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcEnabled", false)))
|
||||
{
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnDownload", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnDownload", false)))
|
||||
{
|
||||
_logger.Trace("Sending Notification to XBMC");
|
||||
_xbmcProvider.Notify(header, message);
|
||||
}
|
||||
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcUpdateOnDownload", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcUpdateOnDownload", false)))
|
||||
{
|
||||
_logger.Trace("Sending Update Request to XBMC");
|
||||
_xbmcProvider.Update(seriesId);
|
||||
}
|
||||
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcCleanOnDownload", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcCleanOnDownload", false)))
|
||||
{
|
||||
_logger.Trace("Sending Clean DB Request to XBMC");
|
||||
_xbmcProvider.Clean();
|
||||
|
@ -69,19 +69,19 @@ namespace NzbDrone.Core.Providers.ExternalNotification
|
|||
{
|
||||
const string header = "NzbDrone [TV] - Renamed";
|
||||
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnRename", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnRename", false)))
|
||||
{
|
||||
_logger.Trace("Sending Notification to XBMC");
|
||||
_xbmcProvider.Notify(header, message);
|
||||
}
|
||||
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcUpdateOnRename", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcUpdateOnRename", false)))
|
||||
{
|
||||
_logger.Trace("Sending Update Request to XBMC");
|
||||
_xbmcProvider.Update(seriesId);
|
||||
}
|
||||
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcCleanOnRename", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcCleanOnRename", false)))
|
||||
{
|
||||
_logger.Trace("Sending Clean DB Request to XBMC");
|
||||
_xbmcProvider.Clean();
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using MvcMiniProfiler;
|
||||
using Ninject;
|
||||
using NLog;
|
||||
using NzbDrone.Core.Helpers;
|
||||
|
@ -206,16 +205,13 @@ namespace NzbDrone.Core.Providers
|
|||
|
||||
public virtual Tuple<int, int> GetEpisodeFilesCount(int seriesId)
|
||||
{
|
||||
using (MiniProfiler.Current.Step("GetEpisodeFilesCount:" + seriesId))
|
||||
{
|
||||
var allEpisodes = _episodeProvider.GetEpisodeBySeries(seriesId);
|
||||
var allEpisodes = _episodeProvider.GetEpisodeBySeries(seriesId).ToList();
|
||||
|
||||
var episodeTotal = allEpisodes.Where(e => !e.Ignored && e.AirDate <= DateTime.Today && e.AirDate.Year > 1900).ToList();
|
||||
var avilableEpisodes = episodeTotal.Where(e => e.EpisodeFileId > 0).ToList();
|
||||
|
||||
return new Tuple<int, int>(avilableEpisodes.Count, episodeTotal.Count);
|
||||
}
|
||||
}
|
||||
|
||||
private List<string> GetMediaFileList(string path)
|
||||
{
|
||||
|
|
|
@ -3,14 +3,10 @@ using System.Collections.Generic;
|
|||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text.RegularExpressions;
|
||||
using Ninject;
|
||||
using NLog;
|
||||
using NzbDrone.Core.Helpers;
|
||||
using NzbDrone.Core.Providers.Core;
|
||||
using NzbDrone.Core.Repository;
|
||||
using NzbDrone.Core.Repository.Quality;
|
||||
using PetaPoco;
|
||||
using SubSonic.Repository;
|
||||
using TvdbLib.Data;
|
||||
|
||||
namespace NzbDrone.Core.Providers
|
||||
|
@ -18,22 +14,19 @@ namespace NzbDrone.Core.Providers
|
|||
public class SeriesProvider
|
||||
{
|
||||
private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
|
||||
private readonly IRepository _repository;
|
||||
private readonly ConfigProvider _configProvider;
|
||||
private readonly TvDbProvider _tvDbProvider;
|
||||
private readonly IDatabase _database;
|
||||
private readonly QualityProvider _qualityProvider;
|
||||
private readonly SceneNameMappingProvider _sceneNameMappingProvider;
|
||||
private static readonly Regex TimeRegex = new Regex(@"^(?<time>\d+:?\d*)\W*(?<meridiem>am|pm)?", RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||
|
||||
[Inject]
|
||||
public SeriesProvider(ConfigProvider configProviderProvider, IRepository repository,
|
||||
TvDbProvider tvDbProviderProvider, IDatabase database,
|
||||
QualityProvider qualityProvider, SceneNameMappingProvider sceneNameMappingProvider)
|
||||
public SeriesProvider(IDatabase database, ConfigProvider configProviderProvider, QualityProvider qualityProvider,
|
||||
TvDbProvider tvDbProviderProvider, SceneNameMappingProvider sceneNameMappingProvider)
|
||||
{
|
||||
_configProvider = configProviderProvider;
|
||||
_repository = repository;
|
||||
_tvDbProvider = tvDbProviderProvider;
|
||||
_database = database;
|
||||
_configProvider = configProviderProvider;
|
||||
_tvDbProvider = tvDbProviderProvider;
|
||||
_qualityProvider = qualityProvider;
|
||||
_sceneNameMappingProvider = sceneNameMappingProvider;
|
||||
}
|
||||
|
@ -104,7 +97,7 @@ namespace NzbDrone.Core.Providers
|
|||
repoSeries.Monitored = true; //New shows should be monitored
|
||||
repoSeries.QualityProfileId = qualityProfileId;
|
||||
if (qualityProfileId == 0)
|
||||
repoSeries.QualityProfileId = Convert.ToInt32(_configProvider.GetValue("DefaultQualityProfile", "1", true));
|
||||
repoSeries.QualityProfileId = Convert.ToInt32(_configProvider.GetValue("DefaultQualityProfile", "1"));
|
||||
|
||||
repoSeries.SeasonFolder = _configProvider.UseSeasonFolder;
|
||||
|
||||
|
@ -131,30 +124,29 @@ namespace NzbDrone.Core.Providers
|
|||
|
||||
public virtual void DeleteSeries(int seriesId)
|
||||
{
|
||||
Logger.Warn("Deleting Series [{0}]", seriesId);
|
||||
var series = _repository.Single<Series>(seriesId);
|
||||
var series = GetSeries(seriesId);
|
||||
Logger.Warn("Deleting Series [{0}]", series.Title);
|
||||
|
||||
//Delete Files, Episodes, Seasons then the Series
|
||||
//Can't use providers because episode provider needs series provider - Cyclic Dependency Injection, this will work
|
||||
using (var tran = _database.GetTransaction())
|
||||
{
|
||||
//Delete History, Files, Episodes, Seasons then the Series
|
||||
|
||||
//Delete History Items for any episodes that belong to this series
|
||||
Logger.Debug("Deleting History Items from DB for Series: {0}", series.SeriesId);
|
||||
var episodes = series.Episodes.Select(e => e.EpisodeId).ToList();
|
||||
episodes.ForEach(e => _repository.DeleteMany<History>(h => h.EpisodeId == e));
|
||||
Logger.Debug("Deleting History Items from DB for Series: {0}", series.Title);
|
||||
_database.Delete<History>("WHERE SeriesId=@0", seriesId);
|
||||
|
||||
//Delete all episode files from the DB for episodes in this series
|
||||
Logger.Debug("Deleting EpisodeFiles from DB for Series: {0}", series.SeriesId);
|
||||
_repository.DeleteMany(series.EpisodeFiles);
|
||||
Logger.Debug("Deleting EpisodeFiles from DB for Series: {0}", series.Title);
|
||||
_database.Delete<EpisodeFile>("WHERE SeriesId=@0", seriesId);
|
||||
|
||||
//Delete all episodes for this series from the DB
|
||||
Logger.Debug("Deleting Episodes from DB for Series: {0}", series.SeriesId);
|
||||
_repository.DeleteMany(series.Episodes);
|
||||
Logger.Debug("Deleting Episodes from DB for Series: {0}", series.Title);
|
||||
_database.Delete<Episode>("WHERE SeriesId=@0", seriesId);
|
||||
|
||||
//Delete the Series
|
||||
Logger.Debug("Deleting Series from DB {0}", series.Title);
|
||||
_repository.Delete<Series>(seriesId);
|
||||
_database.Delete<Series>("WHERE SeriesId=@0", seriesId);
|
||||
|
||||
Logger.Info("Successfully deleted Series [{0}]", seriesId);
|
||||
Logger.Info("Successfully deleted Series [{0}]", series.Title);
|
||||
|
||||
tran.Complete();
|
||||
}
|
||||
}
|
||||
|
||||
public virtual bool SeriesPathExists(string cleanPath)
|
||||
|
@ -168,13 +160,11 @@ namespace NzbDrone.Core.Providers
|
|||
/// <summary>
|
||||
/// Cleans up the AirsTime Component from TheTVDB since it can be garbage that comes in.
|
||||
/// </summary>
|
||||
/// <param name = "input">The TVDB AirsTime</param>
|
||||
/// <param name = "rawTime">The TVDB AirsTime</param>
|
||||
/// <returns>String that contains the AirTimes</returns>
|
||||
private string CleanAirsTime(string inputTime)
|
||||
private static string CleanAirsTime(string rawTime)
|
||||
{
|
||||
Regex timeRegex = new Regex(@"^(?<time>\d+:?\d*)\W*(?<meridiem>am|pm)?", RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||
|
||||
var match = timeRegex.Match(inputTime);
|
||||
var match = TimeRegex.Match(rawTime);
|
||||
var time = match.Groups["time"].Value;
|
||||
var meridiem = match.Groups["meridiem"].Value;
|
||||
|
||||
|
|
|
@ -25,10 +25,10 @@ namespace NzbDrone.Core.Providers
|
|||
public virtual void Notify(string header, string message)
|
||||
{
|
||||
//Get time in seconds and convert to ms
|
||||
var time = Convert.ToInt32(_configProvider.GetValue("XbmcDisplayTime", "3", true)) * 1000;
|
||||
var time = Convert.ToInt32(_configProvider.GetValue("XbmcDisplayTime", "3")) * 1000;
|
||||
var command = String.Format("ExecBuiltIn(Notification({0},{1},{2}))", header, message, time);
|
||||
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcNotificationImage", false, true)))
|
||||
if (Convert.ToBoolean(_configProvider.GetValue("XbmcNotificationImage", false)))
|
||||
{
|
||||
//Todo: Get the actual port that NzbDrone is running on...
|
||||
var serverInfo = String.Format("http://{0}:{1}", Environment.MachineName, "8989");
|
||||
|
@ -37,7 +37,7 @@ namespace NzbDrone.Core.Providers
|
|||
command = String.Format("ExecBuiltIn(Notification({0},{1},{2}, {3}))", header, message, time, imageUrl);
|
||||
}
|
||||
|
||||
foreach (var host in _configProvider.GetValue("XbmcHosts", "localhost:80", true).Split(','))
|
||||
foreach (var host in _configProvider.GetValue("XbmcHosts", "localhost:80").Split(','))
|
||||
{
|
||||
Logger.Trace("Sending Notifcation to XBMC Host: {0}", host);
|
||||
SendCommand(host, command);
|
||||
|
@ -46,14 +46,14 @@ namespace NzbDrone.Core.Providers
|
|||
|
||||
public virtual void Update(int seriesId)
|
||||
{
|
||||
foreach (var host in _configProvider.GetValue("XbmcHosts", "localhost:80", true).Split(','))
|
||||
foreach (var host in _configProvider.GetValue("XbmcHosts", "localhost:80").Split(','))
|
||||
{
|
||||
Logger.Trace("Sending Update DB Request to XBMC Host: {0}", host);
|
||||
var xbmcSeriesPath = GetXbmcSeriesPath(host, seriesId);
|
||||
|
||||
//If the path is not found & the user wants to update the entire library, do it now.
|
||||
if (String.IsNullOrEmpty(xbmcSeriesPath) &&
|
||||
Convert.ToBoolean(_configProvider.GetValue("XbmcFullUpdate", false, true)))
|
||||
Convert.ToBoolean(_configProvider.GetValue("XbmcFullUpdate", false)))
|
||||
{
|
||||
//Update the entire library
|
||||
Logger.Trace("Series [{0}] doesn't exist on XBMC host: {1}, Updating Entire Library", seriesId, host);
|
||||
|
@ -68,7 +68,7 @@ namespace NzbDrone.Core.Providers
|
|||
|
||||
public virtual void Clean()
|
||||
{
|
||||
foreach (var host in _configProvider.GetValue("XbmcHosts", "localhost:80", true).Split(','))
|
||||
foreach (var host in _configProvider.GetValue("XbmcHosts", "localhost:80").Split(','))
|
||||
{
|
||||
Logger.Trace("Sending DB Clean Request to XBMC Host: {0}", host);
|
||||
var command = String.Format("ExecBuiltIn(CleanLibrary(video))");
|
||||
|
@ -78,8 +78,8 @@ namespace NzbDrone.Core.Providers
|
|||
|
||||
private string SendCommand(string host, string command)
|
||||
{
|
||||
var username = _configProvider.GetValue("XbmcUsername", String.Empty, true);
|
||||
var password = _configProvider.GetValue("XbmcPassword", String.Empty, true);
|
||||
var username = _configProvider.GetValue("XbmcUsername", String.Empty);
|
||||
var password = _configProvider.GetValue("XbmcPassword", String.Empty);
|
||||
var url = String.Format("http://{0}/xbmcCmds/xbmcHttp?command={1}", host, command);
|
||||
|
||||
if (!String.IsNullOrEmpty(username))
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
using SubSonic.SqlGeneration.Schema;
|
||||
using PetaPoco;
|
||||
using SubSonic.SqlGeneration.Schema;
|
||||
|
||||
namespace NzbDrone.Core.Repository
|
||||
{
|
||||
[SubSonicTableNameOverride("Config")]
|
||||
[PrimaryKey("Key", autoIncrement = false)]
|
||||
public class Config
|
||||
{
|
||||
[SubSonicPrimaryKey]
|
||||
public string Key { get; set; }
|
||||
|
||||
public string Value { get; set; }
|
||||
|
|
|
@ -7,6 +7,7 @@ using SubSonic.SqlGeneration.Schema;
|
|||
|
||||
namespace NzbDrone.Core.Repository
|
||||
{
|
||||
[PrimaryKey("SeriesId", autoIncrement = false)]
|
||||
public class Series
|
||||
{
|
||||
[SubSonicPrimaryKey(false)]
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Ninject" version="2.2.1.4" />
|
||||
<package id="MiniProfiler" version="1.2" />
|
||||
<package id="MiniProfiler" version="1.3" />
|
||||
</packages>
|
|
@ -148,20 +148,20 @@ namespace NzbDrone.Web.Controllers
|
|||
|
||||
var model = new NotificationSettingsModel
|
||||
{
|
||||
XbmcEnabled = Convert.ToBoolean(_configProvider.GetValue("XbmcEnabled", false, true)),
|
||||
XbmcNotifyOnGrab = Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnGrab", false, true)),
|
||||
XbmcNotifyOnDownload = Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnDownload", false, true)),
|
||||
XbmcNotifyOnRename = Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnRename", false, true)),
|
||||
XbmcNotificationImage = Convert.ToBoolean(_configProvider.GetValue("XbmcNotificationImage", false, true)),
|
||||
XbmcDisplayTime = Convert.ToInt32(_configProvider.GetValue("XbmcDisplayTime", 3, true)),
|
||||
XbmcUpdateOnDownload = Convert.ToBoolean(_configProvider.GetValue("XbmcUpdateOnDownload ", false, true)),
|
||||
XbmcUpdateOnRename = Convert.ToBoolean(_configProvider.GetValue("XbmcUpdateOnRename", false, true)),
|
||||
XbmcFullUpdate = Convert.ToBoolean(_configProvider.GetValue("XbmcFullUpdate", false, true)),
|
||||
XbmcCleanOnDownload = Convert.ToBoolean(_configProvider.GetValue("XbmcCleanOnDownload", false, true)),
|
||||
XbmcCleanOnRename = Convert.ToBoolean(_configProvider.GetValue("XbmcCleanOnRename", false, true)),
|
||||
XbmcHosts = _configProvider.GetValue("XbmcHosts", "localhost:80", true),
|
||||
XbmcUsername = _configProvider.GetValue("XbmcUsername", String.Empty, true),
|
||||
XbmcPassword = _configProvider.GetValue("XbmcPassword", String.Empty, true)
|
||||
XbmcEnabled = Convert.ToBoolean(_configProvider.GetValue("XbmcEnabled", false)),
|
||||
XbmcNotifyOnGrab = Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnGrab", false)),
|
||||
XbmcNotifyOnDownload = Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnDownload", false)),
|
||||
XbmcNotifyOnRename = Convert.ToBoolean(_configProvider.GetValue("XbmcNotifyOnRename", false)),
|
||||
XbmcNotificationImage = Convert.ToBoolean(_configProvider.GetValue("XbmcNotificationImage", false)),
|
||||
XbmcDisplayTime = Convert.ToInt32(_configProvider.GetValue("XbmcDisplayTime", 3)),
|
||||
XbmcUpdateOnDownload = Convert.ToBoolean(_configProvider.GetValue("XbmcUpdateOnDownload ", false)),
|
||||
XbmcUpdateOnRename = Convert.ToBoolean(_configProvider.GetValue("XbmcUpdateOnRename", false)),
|
||||
XbmcFullUpdate = Convert.ToBoolean(_configProvider.GetValue("XbmcFullUpdate", false)),
|
||||
XbmcCleanOnDownload = Convert.ToBoolean(_configProvider.GetValue("XbmcCleanOnDownload", false)),
|
||||
XbmcCleanOnRename = Convert.ToBoolean(_configProvider.GetValue("XbmcCleanOnRename", false)),
|
||||
XbmcHosts = _configProvider.GetValue("XbmcHosts", "localhost:80"),
|
||||
XbmcUsername = _configProvider.GetValue("XbmcUsername", String.Empty),
|
||||
XbmcPassword = _configProvider.GetValue("XbmcPassword", String.Empty)
|
||||
};
|
||||
|
||||
return View("Index", model);
|
||||
|
@ -240,7 +240,7 @@ namespace NzbDrone.Web.Controllers
|
|||
{
|
||||
var profiles = _qualityProvider.GetAllProfiles().ToList();
|
||||
var defaultQualityQualityProfileId =
|
||||
Convert.ToInt32(_configProvider.GetValue("DefaultQualityProfile", profiles[0].QualityProfileId, true));
|
||||
Convert.ToInt32(_configProvider.GetValue("DefaultQualityProfile", profiles[0].QualityProfileId));
|
||||
var selectList = new SelectList(profiles, "QualityProfileId", "Name");
|
||||
|
||||
return new QualityModel { DefaultQualityProfileId = defaultQualityQualityProfileId, QualityProfileSelectList = selectList };
|
||||
|
|
|
@ -57,8 +57,9 @@
|
|||
<HintPath>..\Libraries\MVC3\Microsoft.Web.Infrastructure.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="MvcMiniProfiler">
|
||||
<HintPath>..\packages\MiniProfiler.1.2\lib\MvcMiniProfiler.dll</HintPath>
|
||||
<Reference Include="MvcMiniProfiler, Version=2.1.4183.14740, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\MiniProfiler.1.3\lib\MvcMiniProfiler.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Ninject, Version=2.2.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Ninject.2.2.1.4\lib\net40-Full\Ninject.dll</HintPath>
|
||||
|
|
|
@ -9,5 +9,5 @@
|
|||
<package id="jQuery.vsdoc" version="1.6" />
|
||||
<package id="jQuery.Validation" version="1.8.0.1" />
|
||||
<package id="jQuery" version="1.6.1" />
|
||||
<package id="MiniProfiler" version="1.2" />
|
||||
<package id="MiniProfiler" version="1.3" />
|
||||
</packages>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -116,6 +116,11 @@
|
|||
Gets the ellapsed milliseconds in this step without any children's durations.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.Timing.SqlTimingsDurationMilliseconds">
|
||||
<summary>
|
||||
Gets the aggregate ellapsed milliseconds of all SqlTimings executed in this Timing, excluding Children Timings.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.Timing.IsTrivial">
|
||||
<summary>
|
||||
Returns true when this <see cref="P:MvcMiniProfiler.Timing.DurationWithoutChildrenMilliseconds"/> is less than the configured
|
||||
|
@ -132,6 +137,11 @@
|
|||
Returns true if this Timing step collected sql execution timings.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.Timing.HasDuplicateSqlTimings">
|
||||
<summary>
|
||||
Returns true if any <see cref="T:MvcMiniProfiler.SqlTiming"/>s executed in this step are detected as duplicate statements.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.Timing.IsRoot">
|
||||
<summary>
|
||||
Returns true when this Timing is the first one created in a MiniProfiler session.
|
||||
|
@ -142,6 +152,21 @@
|
|||
How far away this Timing is from the Profiler's Root.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.Timing.ExecutedReaders">
|
||||
<summary>
|
||||
How many sql data readers were executed in this Timing step.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.Timing.ExecutedScalars">
|
||||
<summary>
|
||||
How many sql scalar queries were executed in this Timing step.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.Timing.ExecutedNonQueries">
|
||||
<summary>
|
||||
How many sql non-query statements were executed in this Timing step.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.Data.ProfiledDbCommand.BindByName">
|
||||
<summary>
|
||||
If the underlying command supports BindByName, this sets/clears the underlying
|
||||
|
@ -201,6 +226,11 @@
|
|||
Called when database reader is closed, ending profiling for <see cref="F:MvcMiniProfiler.ExecuteType.Reader"/> SqlTimings.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:MvcMiniProfiler.SqlTiming.AddSpacesToParameters(System.String)">
|
||||
<summary>
|
||||
To help with display, put some space around sammiched commas
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.SqlTiming.ExecuteType">
|
||||
<summary>
|
||||
Category of sql statement executed.
|
||||
|
@ -232,6 +262,11 @@
|
|||
before all records are fetched and reader is closed.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.SqlTiming.IsDuplicate">
|
||||
<summary>
|
||||
True when other identical sql statements have been executed during this MiniProfiler session.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:MvcMiniProfiler.Helpers.StackTraceSnippet">
|
||||
<summary>
|
||||
Gets part of a stack trace containing only methods we care about.
|
||||
|
@ -254,6 +289,11 @@
|
|||
their starting time.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:MvcMiniProfiler.MiniProfiler._sqlCounts">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:MvcMiniProfiler.MiniProfiler.#ctor(System.String,MvcMiniProfiler.ProfileLevel)">
|
||||
<summary>
|
||||
Creates and starts a new MiniProfiler for the root <paramref name="url"/>, filtering <see cref="T:MvcMiniProfiler.Timing"/> steps to <paramref name="level"/>.
|
||||
|
@ -294,12 +334,38 @@
|
|||
be prematurely stopped and discarded. Useful for when a specific route does not need to be profiled.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:MvcMiniProfiler.MiniProfiler.RenderIncludes">
|
||||
<member name="M:MvcMiniProfiler.MiniProfiler.StepStatic(System.String,MvcMiniProfiler.ProfileLevel)">
|
||||
<summary>
|
||||
Returns an <see cref="T:System.IDisposable"/> that will time the code between its creation and disposal. Use this method when you
|
||||
do not wish to include the MvcMiniProfiler namespace for the <see cref="M:MvcMiniProfiler.MiniProfilerExtensions.Step(MvcMiniProfiler.MiniProfiler,System.String,MvcMiniProfiler.ProfileLevel)"/> extension method.
|
||||
</summary>
|
||||
<param name="name">A descriptive name for the code that is encapsulated by the resulting IDisposable's lifetime.</param>
|
||||
<param name="level">This step's visibility level; allows filtering when <see cref="M:MvcMiniProfiler.MiniProfiler.Start(MvcMiniProfiler.ProfileLevel)"/> is called.</param>
|
||||
</member>
|
||||
<member name="M:MvcMiniProfiler.MiniProfiler.RenderIncludes(System.Nullable{MvcMiniProfiler.RenderPosition},System.Boolean,System.Boolean)">
|
||||
<summary>
|
||||
Returns the css and javascript includes needed to display the MiniProfiler results UI.
|
||||
</summary>
|
||||
<param name="position">Which side of the page the profiler popup button should be displayed on (defaults to left)</param>
|
||||
<param name="showTrivial">Whether to show trivial timings by default (defaults to false)</param>
|
||||
<param name="showTimeWithChildren">Whether to show time the time with children column by default (defaults to false)</param>
|
||||
<returns>Script and link elements normally; an empty string when there is no active profiling session.</returns>
|
||||
</member>
|
||||
<member name="M:MvcMiniProfiler.MiniProfiler.ToJson">
|
||||
<summary>
|
||||
Renders the current <see cref="T:MvcMiniProfiler.MiniProfiler"/> to json.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:MvcMiniProfiler.MiniProfiler.ToJson(MvcMiniProfiler.MiniProfiler)">
|
||||
<summary>
|
||||
Renders the parameter <see cref="T:MvcMiniProfiler.MiniProfiler"/> to json.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:MvcMiniProfiler.MiniProfiler.FromJson(System.String)">
|
||||
<summary>
|
||||
Deserializes the json string parameter to a <see cref="T:MvcMiniProfiler.MiniProfiler"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.MiniProfiler.Id">
|
||||
<summary>
|
||||
Identifies this Profiler so it may be stored/cached.
|
||||
|
@ -352,6 +418,26 @@
|
|||
Returns true when we have profiled queries.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.MiniProfiler.HasDuplicateSqlTimings">
|
||||
<summary>
|
||||
Returns true when any child Timings have duplicate queries.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.MiniProfiler.HasTrivialTimings">
|
||||
<summary>
|
||||
Returns true when <see cref="P:MvcMiniProfiler.MiniProfiler.Root"/> or any of its <see cref="P:MvcMiniProfiler.Timing.Children"/> are <see cref="P:MvcMiniProfiler.Timing.IsTrivial"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.MiniProfiler.HasAllTrivialTimings">
|
||||
<summary>
|
||||
Returns true when all child <see cref="T:MvcMiniProfiler.Timing"/>s are <see cref="P:MvcMiniProfiler.Timing.IsTrivial"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.MiniProfiler.TrivialDurationThresholdMilliseconds">
|
||||
<summary>
|
||||
Any Timing step with a duration less than or equal to this will be hidden by default in the UI; defaults to 2.0 ms.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:MvcMiniProfiler.MiniProfiler.ElapsedTicks">
|
||||
<summary>
|
||||
Ticks since this MiniProfiler was started.
|
||||
|
@ -461,7 +547,7 @@
|
|||
Returns either includes' css/javascript or results' html.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:MvcMiniProfiler.UI.MiniProfilerHandler.Includes(System.Web.HttpContext)">
|
||||
<member name="M:MvcMiniProfiler.UI.MiniProfilerHandler.Includes(System.Web.HttpContext,System.String)">
|
||||
<summary>
|
||||
Handles rendering our .js and .less static content files.
|
||||
</summary>
|
||||
|
@ -508,6 +594,21 @@
|
|||
Useful when profiling many items in a loop, but you don't wish to always see this detail.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:MvcMiniProfiler.RenderPosition">
|
||||
<summary>
|
||||
Dictates on which side of the page the profiler popup button is displayed; defaults to left.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:MvcMiniProfiler.RenderPosition.Left">
|
||||
<summary>
|
||||
Profiler popup button is displayed on the left.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:MvcMiniProfiler.RenderPosition.Right">
|
||||
<summary>
|
||||
Profiler popup button is displayed on the right.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:MvcMiniProfiler.MiniProfilerExtensions">
|
||||
<summary>
|
||||
Contains helper methods that ease working with null <see cref="T:MvcMiniProfiler.MiniProfiler"/>s.
|
Loading…
Reference in New Issue