AssetRequestUnit AssetRequestHolder.AddOrMergeRequest_GetAdded(AssetRequestUnit newReqUnit) { AssetRequestUnit existing = null; if (referenceAssetReq != null) { existing = AssetUtils.FindEquivelent(referenceAssetReq, newReqUnit); } if (existing != null) { var old = assetReq.units.Find((elem) => elem.ID == existing.ID); if (old == null) { assetReq.units.Add(existing); return(existing); } return(existing); } existing = AssetUtils.FindEquivelent(assetReq, newReqUnit); if (existing == null) { assetReq.units.Add(newReqUnit); return(newReqUnit); } return(existing); }
void Taker <AssetRequestUnit> .Take(AssetRequestUnit newElement) { AssetRequestUnit existing = null; if (referenceAssetReq != null) { existing = AssetUtils.FindEquivelent(referenceAssetReq, newElement); } if (existing != null) { if (assetReq.units.Find((elem) => elem.ID == existing.ID) == null) { assetReq.units.Add(existing); } } else { assetReq.units.Add(newElement); } }