コード例 #1
0
		protected override void ChooseTarget(ChooseContext choose)
		{
			choose.ReadList(targets =>
			{
				for (int i = 0; i < targets.Count; ++i)
				{
					var target = targets[i];
					if (choose.Matches(target))
						return target;
				}
				return null;
			});
		}
コード例 #2
0
 protected override void ChooseTarget(ChooseContext choose)
 {
     choose.ReadList(targets =>
     {
         for (int i = 0; i < targets.Count; ++i)
         {
             var target = targets[i];
             if (choose.Matches(target))
             {
                 return(target);
             }
         }
         return(null);
     });
 }
コード例 #3
0
ファイル: RoundRobinPolicy.cs プロジェクト: RookieX/Windsor
		protected override void ChooseTarget(ChooseContext choose)
		{
			choose.ModifyList(targets =>
			{
				var count = targets.Count;
				for (int index = 0; index < count; ++index)
				{
					var target = targets[index];
					if (choose.Matches(target))
					{
						if (count > 1)
						{
							targets.RemoveAt(index);
							targets.Add(target);
						}
						return target;
					}
				}
				return null;
			});
		}
コード例 #4
0
 protected override void ChooseTarget(ChooseContext choose)
 {
     choose.ModifyList(targets =>
     {
         var count = targets.Count;
         for (int index = 0; index < count; ++index)
         {
             var target = targets[index];
             if (choose.Matches(target))
             {
                 if (count > 1)
                 {
                     targets.RemoveAt(index);
                     targets.Add(target);
                 }
                 return(target);
             }
         }
         return(null);
     });
 }