亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? loggermatchfilter.cs

?? 詳細講述了數(shù)據(jù)庫編程
?? CS
字號:
#region Copyright & License
//
// Copyright 2001-2005 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#endregion

using System;

using log4net;
using log4net.Core;
using log4net.Util;

namespace log4net.Filter
{
	/// <summary>
	/// Simple filter to match a string in the event's logger name.
	/// </summary>
	/// <remarks>
	/// <para>
	/// The works very similar to the <see cref="LevelMatchFilter"/>. It admits two 
	/// options <see cref="LoggerToMatch"/> and <see cref="AcceptOnMatch"/>. If the 
	/// <see cref="LoggingEvent.LoggerName"/> of the <see cref="LoggingEvent"/> starts 
	/// with the value of the <see cref="LoggerToMatch"/> option, then the 
	/// <see cref="Decide"/> method returns <see cref="FilterDecision.Accept"/> in 
	/// case the <see cref="AcceptOnMatch"/> option value is set to <c>true</c>, 
	/// if it is <c>false</c> then <see cref="FilterDecision.Deny"/> is returned.
	/// </para>
	/// </remarks>
	/// <author>Daniel Cazzulino</author>
	public class LoggerMatchFilter : FilterSkeleton
	{
		#region Member Variables

		/// <summary>
		/// Flag to indicate the behavior when we have a match
		/// </summary>
		private bool m_acceptOnMatch = true;

		/// <summary>
		/// The logger name string to substring match against the event
		/// </summary>
		private string m_loggerToMatch;

		#endregion

		#region Constructors

		/// <summary>
		/// Default constructor
		/// </summary>
		public LoggerMatchFilter()
		{
		}

		#endregion

		#region Properties

		/// <summary>
		/// <see cref="FilterDecision.Accept"/> when matching <see cref="LoggerToMatch"/>
		/// </summary>
		/// <remarks>
		/// <para>
		/// The <see cref="AcceptOnMatch"/> property is a flag that determines
		/// the behavior when a matching <see cref="Level"/> is found. If the
		/// flag is set to true then the filter will <see cref="FilterDecision.Accept"/> the 
		/// logging event, otherwise it will <see cref="FilterDecision.Deny"/> the event.
		/// </para>
		/// <para>
		/// The default is <c>true</c> i.e. to <see cref="FilterDecision.Accept"/> the event.
		/// </para>
		/// </remarks>
		public bool AcceptOnMatch
		{
			get { return m_acceptOnMatch; }
			set { m_acceptOnMatch = value; }
		}

		/// <summary>
		/// The <see cref="LoggingEvent.LoggerName"/> that the filter will match
		/// </summary>
		/// <remarks>
		/// <para>
		/// This filter will attempt to match this value against logger name in
		/// the following way. The match will be done against the beginning of the
		/// logger name (using <see cref="String.StartsWith(string)"/>). The match is
		/// case sensitive. If a match is found then
		/// the result depends on the value of <see cref="AcceptOnMatch"/>.
		/// </para>
		/// </remarks>
		public string LoggerToMatch
		{
			get { return m_loggerToMatch; }
			set { m_loggerToMatch = value; }
		}

		#endregion 

		#region Override implementation of FilterSkeleton

		/// <summary>
		/// Check if this filter should allow the event to be logged
		/// </summary>
		/// <param name="loggingEvent">the event being logged</param>
		/// <returns>see remarks</returns>
		/// <remarks>
		/// <para>
		/// The rendered message is matched against the <see cref="LoggerToMatch"/>.
		/// If the <see cref="LoggerToMatch"/> equals the beginning of 
		/// the incoming <see cref="LoggingEvent.LoggerName"/> (<see cref="String.StartsWith(string)"/>)
		/// then a match will have occurred. If no match occurs
		/// this function will return <see cref="FilterDecision.Neutral"/>
		/// allowing other filters to check the event. If a match occurs then
		/// the value of <see cref="AcceptOnMatch"/> is checked. If it is
		/// true then <see cref="FilterDecision.Accept"/> is returned otherwise
		/// <see cref="FilterDecision.Deny"/> is returned.
		/// </para>
		/// </remarks>
		override public FilterDecision Decide(LoggingEvent loggingEvent) 
		{
			if (loggingEvent == null)
			{
				throw new ArgumentNullException("loggingEvent");
			}

			// Check if we have been setup to filter
			if ((m_loggerToMatch != null && m_loggerToMatch.Length != 0) && 
				loggingEvent.LoggerName.StartsWith(m_loggerToMatch))
			{
				// we've got a match
				if (m_acceptOnMatch) 
				{
					return FilterDecision.Accept;
				} 
				return FilterDecision.Deny;
			}
			else
			{
				// We cannot filter so allow the filter chain
				// to continue processing
				return FilterDecision.Neutral;
			}
		}

		#endregion
	}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美美女bb生活片| 欧美影视一区在线| 亚洲女厕所小便bbb| 欧美日本在线播放| 国产成人av电影在线| 一区二区三区成人| 国产午夜精品久久久久久久| 欧美亚男人的天堂| 国产成人综合视频| 日韩在线一区二区| 中文字幕一区二区三区在线观看 | 91亚洲大成网污www| 日韩不卡在线观看日韩不卡视频| 中文在线资源观看网站视频免费不卡| 欧美久久久久久久久中文字幕| 成人久久久精品乱码一区二区三区 | 国产精品视频免费| 日韩午夜在线观看视频| 91香蕉视频mp4| 国产精品影音先锋| 六月婷婷色综合| 午夜电影网亚洲视频| 亚洲色欲色欲www在线观看| 精品福利一区二区三区免费视频| 欧美亚洲另类激情小说| 成人晚上爱看视频| 国产精品99久久久久久似苏梦涵 | 91精品国产欧美一区二区18| 91香蕉视频黄| 成人av综合在线| 国产91对白在线观看九色| 久久精品国产久精国产爱| 性做久久久久久久免费看| 一区二区三区国产| 亚洲精品成人天堂一二三| 国产精品传媒入口麻豆| 久久嫩草精品久久久久| 精品久久国产97色综合| 精品三级在线看| 欧美v亚洲v综合ⅴ国产v| 欧美高清视频在线高清观看mv色露露十八 | 日韩欧美在线123| 欧美精选一区二区| 欧美人体做爰大胆视频| 欧美三级日韩在线| 欧美日韩美少妇| 欧美视频精品在线| 欧美日韩激情一区二区| 欧美高清性hdvideosex| 欧美肥大bbwbbw高潮| 91精品婷婷国产综合久久| 欧美日韩激情在线| 日韩欧美中文一区二区| 久久免费电影网| 中文一区在线播放| 亚洲欧洲在线观看av| 亚洲男人天堂av| 亚洲国产成人av| 日本欧美一区二区| 精东粉嫩av免费一区二区三区| 久久不见久久见中文字幕免费| 国内精品视频666| 国产99一区视频免费| av一区二区三区| 欧美亚洲高清一区| 日韩丝袜情趣美女图片| 久久久久久久国产精品影院| 中文一区在线播放| 亚洲成人自拍偷拍| 国产在线观看免费一区| 成人久久久精品乱码一区二区三区| 97成人超碰视| 正在播放亚洲一区| 国产女主播一区| 一区二区三区成人在线视频| 麻豆国产91在线播放| 国v精品久久久网| 色婷婷国产精品综合在线观看| 欧美美女一区二区| 国产婷婷精品av在线| 一区二区三区小说| 精品一区二区三区视频 | 韩国成人精品a∨在线观看| 春色校园综合激情亚洲| 91久久精品一区二区| 欧美一区二区成人6969| 中文字幕一区在线观看| 日韩精品一二三区| 成人av在线影院| 91精品国产黑色紧身裤美女| 中文字幕乱码久久午夜不卡| 亚洲成在人线在线播放| 国产乱理伦片在线观看夜一区| 色av综合在线| 久久久亚洲午夜电影| 亚洲国产成人av网| 成人91在线观看| 欧美一区二区福利视频| 亚洲美女免费视频| 国产一区999| 91麻豆精品国产91久久久资源速度 | 国产成都精品91一区二区三| 在线观看日韩高清av| 久久精品欧美日韩| 全国精品久久少妇| 欧美在线免费观看亚洲| 亚洲国产激情av| 麻豆久久久久久| 欧美视频中文字幕| 亚洲欧洲精品一区二区三区| 黄一区二区三区| 777亚洲妇女| 亚洲激情综合网| 成人一区在线观看| 久久嫩草精品久久久精品一| 日韩不卡免费视频| 欧美色电影在线| 亚洲欧美激情一区二区| 国产激情一区二区三区| 欧美大胆人体bbbb| 日日夜夜精品视频免费| 91福利区一区二区三区| 亚洲欧洲精品一区二区精品久久久| 国产一区二区三区在线观看精品 | 9i看片成人免费高清| 国产亚洲精品7777| 韩国三级中文字幕hd久久精品| 欧美探花视频资源| 亚洲精品国产a久久久久久| 不卡的电影网站| 欧美激情一区二区三区在线| 国产一区在线视频| 精品国产成人在线影院| 久久狠狠亚洲综合| 欧美成人精品二区三区99精品| 视频一区二区三区入口| 欧美日韩亚洲综合| 亚洲.国产.中文慕字在线| 欧美三级一区二区| 日韩精品一二三| 日韩美女视频在线| 久久99热99| 2023国产精品| 国产iv一区二区三区| 国产精品伦一区二区三级视频| 大美女一区二区三区| 亚洲欧美综合在线精品| 成人免费毛片高清视频| 亚洲欧洲另类国产综合| 色综合久久久网| 洋洋av久久久久久久一区| 欧美在线观看视频在线| 午夜一区二区三区视频| 制服.丝袜.亚洲.另类.中文| 久久精品噜噜噜成人88aⅴ| 欧美成人在线直播| 国产激情一区二区三区四区| 中文字幕在线观看一区| 91福利国产精品| 日韩国产在线观看一区| 精品国产91亚洲一区二区三区婷婷| 国产精品亚洲专一区二区三区 | 国产成人精品在线看| 国产精品美女久久久久久2018| www.亚洲色图.com| 一区二区三区av电影| 欧美一区二区三区小说| 国内外成人在线| 国产精品久久久久久久岛一牛影视| 91视频在线观看免费| 日韩中文欧美在线| 国产清纯美女被跳蛋高潮一区二区久久w | 日韩免费观看高清完整版在线观看| 久久精品99国产精品| 国产精品狼人久久影院观看方式| 色综合中文字幕国产 | 欧美日韩国产综合一区二区三区| 免费在线观看不卡| 国产日韩欧美a| 欧美日韩国产首页| 国产在线播精品第三| 一区二区视频在线| 欧美www视频| 91丨九色丨国产丨porny| 免费看日韩a级影片| 中文字幕一区二区三区在线观看 | 欧美三级韩国三级日本三斤 | 国产黄色精品网站| 亚洲国产综合91精品麻豆| 欧美不卡一区二区三区四区| 99这里只有精品| 另类小说综合欧美亚洲| 1区2区3区欧美| 日韩美女在线视频| 91高清在线观看| 处破女av一区二区| 日韩精品午夜视频| 亚洲激情六月丁香| 久久九九久久九九| 日韩精品一区二区三区视频|