Produced by Araxis Merge on 10/26/2017 10:44:23 PM Eastern Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.
| # | Location | File | Last Modified |
|---|---|---|---|
| 1 | Fri Oct 27 02:44:23 2017 UTC | ||
| 2 | OSCIF_BMS_v2_iter 2_September_2017.zip\BMS_Cand\Source\Sources\BMS.Vista.TestEis\BMS.Utils | PoolProxy.cs | Wed Oct 18 18:47:04 2017 UTC |
| Description | Between Files 1 and 2 |
|
|---|---|---|
| Text Blocks | Lines | |
| Unchanged | 0 | 0 |
| Changed | 0 | 0 |
| Inserted | 1 | 76 |
| Removed | 0 | 0 |
| Whitespace | |
|---|---|
| Character case | Differences in character case are significant |
| Line endings | Differences in line endings (CR and LF characters) are ignored |
| CR/LF characters | Not shown in the comparison detail |
No regular expressions were active.
| 1 | using Syst em; | |||||
| 2 | using Syst em.Collect ions.Gener ic; | |||||
| 3 | using Syst em.Linq; | |||||
| 4 | using Syst em.Text; | |||||
| 5 | using Syst em.Configu ration; | |||||
| 6 | using Syst em.Service Model; | |||||
| 7 | ||||||
| 8 | namespace BMS.Utils | |||||
| 9 | { | |||||
| 10 | public class Poo lProxy<T> where T : class, ICo mmunicatio nObject, I Disposable | |||||
| 11 | { | |||||
| 12 | Li st<T> item s; | |||||
| 13 | in t maxCount = int.Par se(Configu rationMana ger.AppSet tings["Pro xyPoolMaxC ount"]); | |||||
| 14 | ||||||
| 15 | pu blic PoolP roxy() | |||||
| 16 | { | |||||
| 17 | Initiali ze(); | |||||
| 18 | } | |||||
| 19 | ||||||
| 20 | pu blic void Initialize () | |||||
| 21 | { | |||||
| 22 | items = new List<T >(maxCount ); | |||||
| 23 | } | |||||
| 24 | ||||||
| 25 | pu blic int C ount | |||||
| 26 | { | |||||
| 27 | get { re turn items != null ? items.Cou nt : 0; } | |||||
| 28 | } | |||||
| 29 | ||||||
| 30 | pu blic T Tak e() | |||||
| 31 | { | |||||
| 32 | if (item s == null) Initializ e(); | |||||
| 33 | if (item s.Count > 0) | |||||
| 34 | { | |||||
| 35 | T it em = items .First(); | |||||
| 36 | item s.Remove(i tem); | |||||
| 37 | retu rn item; | |||||
| 38 | } | |||||
| 39 | else | |||||
| 40 | retu rn null; | |||||
| 41 | } | |||||
| 42 | ||||||
| 43 | pu blic bool Return(T i tem) | |||||
| 44 | { | |||||
| 45 | if (item s == null) Initializ e(); | |||||
| 46 | if (item s.Count < maxCount) | |||||
| 47 | { | |||||
| 48 | item s.Add(item ); | |||||
| 49 | retu rn true; | |||||
| 50 | } | |||||
| 51 | else | |||||
| 52 | retu rn false; | |||||
| 53 | } | |||||
| 54 | ||||||
| 55 | pu blic void Clear() | |||||
| 56 | { | |||||
| 57 | if (item s != null && items.C ount > 0) | |||||
| 58 | { | |||||
| 59 | fore ach (T ite m in items ) | |||||
| 60 | { | |||||
| 61 | try | |||||
| 62 | { | |||||
| 63 | item.C lose(); | |||||
| 64 | } | |||||
| 65 | catch | |||||
| 66 | { | |||||
| 67 | item.A bort(); | |||||
| 68 | } | |||||
| 69 | item.Dispo se(); | |||||
| 70 | } | |||||
| 71 | item s.Clear(); | |||||
| 72 | item s = null; | |||||
| 73 | } | |||||
| 74 | } | |||||
| 75 | } | |||||
| 76 | } |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.