Back to OIM Explorer

VI.DB/VI.DB.Entities/PendingChangeEntityLogic.cs

Decompiler Source FileVI.DB.PendingChangeEntityLogicDecompiled Source

2 extracted method/event/call references in PendingChangeEntityLogic.

Source: F:\Claude\.tmp\oim-decompiled-full\1178_One_Identity_Manager_VI.DB.dll\VI.DB.Entities\PendingChangeEntityLogic.cs

Source size: 60.137 characters

Interpretation

  • Decompiled source file. Use method/event registrations and call-site extraction to connect back to DialogMethod, QBMEvent, and API layers.

Relations

  • Method registration: CreatePendingChange at line 1177
  • Method registration: PendingChangeReady at line 1197

Typed Edges

  • No typed edges extracted for this source.

References

  • No direct source references extracted.

Referenced By

  • No direct source references extracted.

C# source-derived context

Generated by pattern extraction from the decompiled C# source and decompile index. This is factual source evidence, not inferred behavior.

reads entity values references DB/Dialog objects

Summary: classes PendingChangeEntityLogic, _003C_003Ec__DisplayClass2_0, _003C_003Ec__DisplayClass4_0; methods MoveNext, SetStateMachine, _003C_002Ector_003Eb__0, _003C_CreatePendingChange_003Eb__1, _003C_CreatePendingChange_003Eb__2, OnSavedAsync; references ESet, QBMPendingChange, QBMPendingChangeDetail; markers reads entity values, references DB/Dialog objects

Classes

PendingChangeEntityLogic _003C_003Ec__DisplayClass2_0 _003C_003Ec__DisplayClass4_0

OIM key/entity markers

ObjectKeyElement UID_QBMPendingChange

API/entity calls

GetValue IsFullSync Source CreateAsync MetaData From Config GetDiffAsync

Registrations / handlers

None extracted.

Complete Source

C#1.257 lines
1using System;2using System.Collections.Generic;3using System.Diagnostics;4using System.Linq;5using System.Runtime.CompilerServices;6using System.Runtime.InteropServices;7using System.Threading;8using System.Threading.Tasks;9using NLog;10using VI.Base;11using VI.DB.MetaData;1213namespace VI.DB.Entities;1415internal class PendingChangeEntityLogic : StateLessEntityLogic16{17	[DebuggerDisplay("{OldOp,nq} -> {NewOp,nq} -> {ResultingOp,nq}")]18	private struct _State19	{20		[field: CompilerGenerated]21		public string OldOp22		{23			[CompilerGenerated]24			get;25		}2627		[field: CompilerGenerated]28		public string NewOp29		{30			[CompilerGenerated]31			get;32		}3334		[field: CompilerGenerated]35		public string ResultingOp36		{37			[CompilerGenerated]38			get;39		}4041		[field: CompilerGenerated]42		public bool Warning43		{44			[CompilerGenerated]45			get;46		}4748		public _State(string oldOp, string newOp, string resultingOp, bool warning)49		{50			OldOp = oldOp;51			NewOp = newOp;52			ResultingOp = resultingOp;53			Warning = warning;54		}55	}5657	[CompilerGenerated]58	private sealed class _003C_003Ec__DisplayClass2_059	{60		[StructLayout((LayoutKind)3)]61		private struct _003C_003C_002Dctor_003Eb__0_003Ed : IAsyncStateMachine62		{63			public int _003C_003E1__state;6465			public AsyncTaskMethodBuilder _003C_003Et__builder;6667			public ISession s;6869			public _003C_003Ec__DisplayClass2_0 _003C_003E4__this;7071			public IEntity e;7273			public string op;7475			public CancellationToken ct;7677			private IUnitOfWork _003Cuow_003E5__2;7879			private ConfiguredTaskAwaiter _003C_003Eu__1;8081			private void MoveNext()82			{83				//IL_009a: Unknown result type (might be due to invalid IL or missing references)84				//IL_009f: Unknown result type (might be due to invalid IL or missing references)85				//IL_00a6: Unknown result type (might be due to invalid IL or missing references)86				//IL_00c3: Unknown result type (might be due to invalid IL or missing references)87				//IL_00ce: Unknown result type (might be due to invalid IL or missing references)88				//IL_00d3: Unknown result type (might be due to invalid IL or missing references)89				//IL_00d6: Unknown result type (might be due to invalid IL or missing references)90				//IL_00db: Unknown result type (might be due to invalid IL or missing references)91				//IL_0106: Unknown result type (might be due to invalid IL or missing references)92				//IL_010b: Unknown result type (might be due to invalid IL or missing references)93				//IL_0112: Unknown result type (might be due to invalid IL or missing references)94				//IL_0054: Unknown result type (might be due to invalid IL or missing references)95				//IL_005f: Unknown result type (might be due to invalid IL or missing references)96				//IL_0064: Unknown result type (might be due to invalid IL or missing references)97				//IL_0067: Unknown result type (might be due to invalid IL or missing references)98				//IL_006c: Unknown result type (might be due to invalid IL or missing references)99				//IL_00ef: Unknown result type (might be due to invalid IL or missing references)100				//IL_00f0: Unknown result type (might be due to invalid IL or missing references)101				//IL_0080: Unknown result type (might be due to invalid IL or missing references)102				//IL_0081: Unknown result type (might be due to invalid IL or missing references)103				int num = _003C_003E1__state;104				_003C_003Ec__DisplayClass2_0 _003C_003Ec__DisplayClass2_ = _003C_003E4__this;105				try106				{107					if ((uint)num > 1u)108					{109						_003Cuow_003E5__2 = s.StartUnitOfWork();110					}111					try112					{113						ConfiguredTaskAwaiter val;114						ConfiguredTaskAwaitable val2;115						if (num != 0)116						{117							if (num == 1)118							{119								val = _003C_003Eu__1;120								_003C_003Eu__1 = default(ConfiguredTaskAwaiter);121								num = (_003C_003E1__state = -1);122								goto IL_0121;123							}124							val2 = _003C_003Ec__DisplayClass2_._003C_003E4__this._CreatePendingChange(s, e, _003Cuow_003E5__2, op, _003C_003Ec__DisplayClass2_.behavior, ct).ConfigureAwait(false);125							val = ((ConfiguredTaskAwaitable)(ref val2)).GetAwaiter();126							if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)127							{128								num = (_003C_003E1__state = 0);129								_003C_003Eu__1 = val;130								((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_003C_002Dctor_003Eb__0_003Ed>(ref val, ref this);131								return;132							}133						}134						else135						{136							val = _003C_003Eu__1;137							_003C_003Eu__1 = default(ConfiguredTaskAwaiter);138							num = (_003C_003E1__state = -1);139						}140						((ConfiguredTaskAwaiter)(ref val)).GetResult();141						val2 = _003Cuow_003E5__2.CommitAsync(ct).ConfigureAwait(false);142						val = ((ConfiguredTaskAwaitable)(ref val2)).GetAwaiter();143						if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)144						{145							num = (_003C_003E1__state = 1);146							_003C_003Eu__1 = val;147							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_003C_002Dctor_003Eb__0_003Ed>(ref val, ref this);148							return;149						}150						goto IL_0121;151						IL_0121:152						((ConfiguredTaskAwaiter)(ref val)).GetResult();153					}154					finally155					{156						if (num < 0 && _003Cuow_003E5__2 != null)157						{158							((System.IDisposable)_003Cuow_003E5__2).Dispose();159						}160					}161					_003Cuow_003E5__2 = null;162				}163				catch (System.Exception exception)164				{165					_003C_003E1__state = -2;166					((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);167					return;168				}169				_003C_003E1__state = -2;170				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();171			}172173			[DebuggerHidden]174			private void SetStateMachine(IAsyncStateMachine stateMachine)175			{176				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);177			}178		}179180		public PendingChangeEntityLogic _003C_003E4__this;181182		public PendingChangeBehavior behavior;183184		[AsyncStateMachine(typeof(_003C_003C_002Dctor_003Eb__0_003Ed))]185		internal System.Threading.Tasks.Task _003C_002Ector_003Eb__0(ISession s, IEntity e, string op, CancellationToken ct)186		{187			//IL_0002: Unknown result type (might be due to invalid IL or missing references)188			//IL_0007: Unknown result type (might be due to invalid IL or missing references)189			//IL_002e: Unknown result type (might be due to invalid IL or missing references)190			//IL_0030: Unknown result type (might be due to invalid IL or missing references)191			_003C_003C_002Dctor_003Eb__0_003Ed _003C_003C_002Dctor_003Eb__0_003Ed = default(_003C_003C_002Dctor_003Eb__0_003Ed);192			_003C_003C_002Dctor_003Eb__0_003Ed._003C_003Et__builder = AsyncTaskMethodBuilder.Create();193			_003C_003C_002Dctor_003Eb__0_003Ed._003C_003E4__this = this;194			_003C_003C_002Dctor_003Eb__0_003Ed.s = s;195			_003C_003C_002Dctor_003Eb__0_003Ed.e = e;196			_003C_003C_002Dctor_003Eb__0_003Ed.op = op;197			_003C_003C_002Dctor_003Eb__0_003Ed.ct = ct;198			_003C_003C_002Dctor_003Eb__0_003Ed._003C_003E1__state = -1;199			((AsyncTaskMethodBuilder)(ref _003C_003C_002Dctor_003Eb__0_003Ed._003C_003Et__builder)).Start<_003C_003C_002Dctor_003Eb__0_003Ed>(ref _003C_003C_002Dctor_003Eb__0_003Ed);200			return ((AsyncTaskMethodBuilder)(ref _003C_003C_002Dctor_003Eb__0_003Ed._003C_003Et__builder)).Task;201		}202	}203204	[CompilerGenerated]205	private sealed class _003C_003Ec__DisplayClass4_0206	{207		public string keyXml;208209		public string currentOp;210211		public string operation;212213		internal ExpressionClause _003C_CreatePendingChange_003Eb__1(IExpressionContext t)214		{215			return t.Column("ObjectKeyElement") == keyXml;216		}217218		internal bool _003C_CreatePendingChange_003Eb__2(_State s)219		{220			if (string.Equals(s.OldOp, currentOp, (StringComparison)5))221			{222				return string.Equals(s.NewOp, operation, (StringComparison)5);223			}224			return false;225		}226	}227228	[StructLayout((LayoutKind)3)]229	[CompilerGenerated]230	private struct _003COnSavedAsync_003Ed__3 : IAsyncStateMachine231	{232		public int _003C_003E1__state;233234		public AsyncTaskMethodBuilder _003C_003Et__builder;235236		public PendingChangeEntityLogic _003C_003E4__this;237238		public IEntity entity;239240		public LogicReadWriteParameters parameters;241242		public CancellationToken cancellationToken;243244		private ConfiguredTaskAwaiter _003C_003Eu__1;245246		private void MoveNext()247		{248			//IL_006d: Unknown result type (might be due to invalid IL or missing references)249			//IL_0072: Unknown result type (might be due to invalid IL or missing references)250			//IL_0079: Unknown result type (might be due to invalid IL or missing references)251			//IL_0166: Unknown result type (might be due to invalid IL or missing references)252			//IL_016b: Unknown result type (might be due to invalid IL or missing references)253			//IL_0172: Unknown result type (might be due to invalid IL or missing references)254			//IL_0026: Unknown result type (might be due to invalid IL or missing references)255			//IL_0031: Unknown result type (might be due to invalid IL or missing references)256			//IL_0036: Unknown result type (might be due to invalid IL or missing references)257			//IL_003a: Unknown result type (might be due to invalid IL or missing references)258			//IL_003f: Unknown result type (might be due to invalid IL or missing references)259			//IL_0053: Unknown result type (might be due to invalid IL or missing references)260			//IL_0054: Unknown result type (might be due to invalid IL or missing references)261			//IL_0122: Unknown result type (might be due to invalid IL or missing references)262			//IL_012d: Unknown result type (might be due to invalid IL or missing references)263			//IL_0132: Unknown result type (might be due to invalid IL or missing references)264			//IL_0136: Unknown result type (might be due to invalid IL or missing references)265			//IL_013b: Unknown result type (might be due to invalid IL or missing references)266			//IL_014f: Unknown result type (might be due to invalid IL or missing references)267			//IL_0150: Unknown result type (might be due to invalid IL or missing references)268			int num = _003C_003E1__state;269			PendingChangeEntityLogic pendingChangeEntityLogic = _003C_003E4__this;270			try271			{272				ConfiguredTaskAwaiter val;273				ConfiguredTaskAwaitable val2;274				if (num != 0)275				{276					if (num == 1)277					{278						val = _003C_003Eu__1;279						_003C_003Eu__1 = default(ConfiguredTaskAwaiter);280						num = (_003C_003E1__state = -1);281						goto IL_0181;282					}283					val2 = ((StateLessEntityLogic)pendingChangeEntityLogic).OnSavedAsync(entity, parameters, cancellationToken).ConfigureAwait(false);284					val = ((ConfiguredTaskAwaitable)(ref val2)).GetAwaiter();285					if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)286					{287						num = (_003C_003E1__state = 0);288						_003C_003Eu__1 = val;289						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003COnSavedAsync_003Ed__3>(ref val, ref this);290						return;291					}292				}293				else294				{295					val = _003C_003Eu__1;296					_003C_003Eu__1 = default(ConfiguredTaskAwaiter);297					num = (_003C_003E1__state = -1);298				}299				((ConfiguredTaskAwaiter)(ref val)).GetResult();300				PendingChangeBehavior pendingChangeBehavior = parameters.Table.PendingChangeBehavior;301				if (pendingChangeBehavior.HasFlagFast(PendingChangeBehavior.SetChange) && !parameters.Table.Columns.IsAvailable("xisineffect"))302				{303					string operation = (entity.State.HasFlagFast(EntityState.ToDeletePhysical) ? "D" : (entity.IsLoaded ? "U" : "I"));304					val2 = pendingChangeEntityLogic._CreatePendingChange(parameters.Session, entity, parameters.UnitOfWork, operation, pendingChangeBehavior, cancellationToken).ConfigureAwait(false);305					val = ((ConfiguredTaskAwaitable)(ref val2)).GetAwaiter();306					if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)307					{308						num = (_003C_003E1__state = 1);309						_003C_003Eu__1 = val;310						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003COnSavedAsync_003Ed__3>(ref val, ref this);311						return;312					}313					goto IL_0181;314				}315				goto end_IL_000e;316				IL_0181:317				((ConfiguredTaskAwaiter)(ref val)).GetResult();318				end_IL_000e:;319			}320			catch (System.Exception exception)321			{322				_003C_003E1__state = -2;323				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);324				return;325			}326			_003C_003E1__state = -2;327			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();328		}329330		[DebuggerHidden]331		private void SetStateMachine(IAsyncStateMachine stateMachine)332		{333			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);334		}335	}336337	[StructLayout((LayoutKind)3)]338	[CompilerGenerated]339	private struct _003C_CreatePendingChange_003Ed__4 : IAsyncStateMachine340	{341		public int _003C_003E1__state;342343		public AsyncTaskMethodBuilder _003C_003Et__builder;344345		public string operation;346347		public ISession session;348349		public IEntity entity;350351		public CancellationToken ct;352353		private _003C_003Ec__DisplayClass4_0 _003C_003E8__1;354355		public IUnitOfWork uow;356357		public PendingChangeBehavior behavior;358359		private Logger _003Clog_003E5__2;360361		private LogSessionId _003CsessionId_003E5__3;362363		private IEntitySource _003Csrc_003E5__4;364365		private IEntity _003CpendingChange_003E5__5;366367		private string _003CuidChange_003E5__6;368369		private ConfiguredTaskAwaiter<DbObjectKey> _003C_003Eu__1;370371		private ConfiguredTaskAwaiter<IEntityCollection> _003C_003Eu__2;372373		private IEntity _003CexistingChange_003E5__7;374375		private ConfiguredTaskAwaiter<string> _003C_003Eu__3;376377		private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__4;378379		private ConfiguredValueTaskAwaiter<ApplyResult> _003C_003Eu__5;380381		private ConfiguredTaskAwaiter _003C_003Eu__6;382383		private System.IDisposable _003C_003E7__wrap7;384385		private ConfiguredTaskAwaiter<IMetaTable> _003C_003Eu__7;386387		private ConfiguredTaskAwaiter<Diff> _003C_003Eu__8;388389		private void MoveNext()390		{391			//IL_0244: Unknown result type (might be due to invalid IL or missing references)392			//IL_0249: Unknown result type (might be due to invalid IL or missing references)393			//IL_0251: Unknown result type (might be due to invalid IL or missing references)394			//IL_02f5: Unknown result type (might be due to invalid IL or missing references)395			//IL_02fa: Unknown result type (might be due to invalid IL or missing references)396			//IL_0302: Unknown result type (might be due to invalid IL or missing references)397			//IL_0396: Unknown result type (might be due to invalid IL or missing references)398			//IL_039b: Unknown result type (might be due to invalid IL or missing references)399			//IL_03a3: Unknown result type (might be due to invalid IL or missing references)400			//IL_04bd: Unknown result type (might be due to invalid IL or missing references)401			//IL_04c2: Unknown result type (might be due to invalid IL or missing references)402			//IL_04ca: Unknown result type (might be due to invalid IL or missing references)403			//IL_054e: Unknown result type (might be due to invalid IL or missing references)404			//IL_0553: Unknown result type (might be due to invalid IL or missing references)405			//IL_055b: Unknown result type (might be due to invalid IL or missing references)406			//IL_05d1: Unknown result type (might be due to invalid IL or missing references)407			//IL_05d6: Unknown result type (might be due to invalid IL or missing references)408			//IL_05de: Unknown result type (might be due to invalid IL or missing references)409			//IL_06df: Unknown result type (might be due to invalid IL or missing references)410			//IL_06e4: Unknown result type (might be due to invalid IL or missing references)411			//IL_06ec: Unknown result type (might be due to invalid IL or missing references)412			//IL_0759: Unknown result type (might be due to invalid IL or missing references)413			//IL_075e: Unknown result type (might be due to invalid IL or missing references)414			//IL_0766: Unknown result type (might be due to invalid IL or missing references)415			//IL_02ac: Unknown result type (might be due to invalid IL or missing references)416			//IL_02b7: Unknown result type (might be due to invalid IL or missing references)417			//IL_02bc: Unknown result type (might be due to invalid IL or missing references)418			//IL_02c0: Unknown result type (might be due to invalid IL or missing references)419			//IL_02c5: Unknown result type (might be due to invalid IL or missing references)420			//IL_0501: Unknown result type (might be due to invalid IL or missing references)421			//IL_0510: Unknown result type (might be due to invalid IL or missing references)422			//IL_0515: Unknown result type (might be due to invalid IL or missing references)423			//IL_0519: Unknown result type (might be due to invalid IL or missing references)424			//IL_051e: Unknown result type (might be due to invalid IL or missing references)425			//IL_02da: Unknown result type (might be due to invalid IL or missing references)426			//IL_02dc: Unknown result type (might be due to invalid IL or missing references)427			//IL_034d: Unknown result type (might be due to invalid IL or missing references)428			//IL_0358: Unknown result type (might be due to invalid IL or missing references)429			//IL_035d: Unknown result type (might be due to invalid IL or missing references)430			//IL_0361: Unknown result type (might be due to invalid IL or missing references)431			//IL_0366: Unknown result type (might be due to invalid IL or missing references)432			//IL_0533: Unknown result type (might be due to invalid IL or missing references)433			//IL_0535: Unknown result type (might be due to invalid IL or missing references)434			//IL_0584: Unknown result type (might be due to invalid IL or missing references)435			//IL_0593: Unknown result type (might be due to invalid IL or missing references)436			//IL_0598: Unknown result type (might be due to invalid IL or missing references)437			//IL_059c: Unknown result type (might be due to invalid IL or missing references)438			//IL_05a1: Unknown result type (might be due to invalid IL or missing references)439			//IL_0710: Unknown result type (might be due to invalid IL or missing references)440			//IL_071b: Unknown result type (might be due to invalid IL or missing references)441			//IL_0720: Unknown result type (might be due to invalid IL or missing references)442			//IL_0724: Unknown result type (might be due to invalid IL or missing references)443			//IL_0729: Unknown result type (might be due to invalid IL or missing references)444			//IL_085b: Unknown result type (might be due to invalid IL or missing references)445			//IL_0860: Unknown result type (might be due to invalid IL or missing references)446			//IL_0868: Unknown result type (might be due to invalid IL or missing references)447			//IL_08e8: Unknown result type (might be due to invalid IL or missing references)448			//IL_08ed: Unknown result type (might be due to invalid IL or missing references)449			//IL_08f5: Unknown result type (might be due to invalid IL or missing references)450			//IL_0971: Unknown result type (might be due to invalid IL or missing references)451			//IL_0976: Unknown result type (might be due to invalid IL or missing references)452			//IL_097e: Unknown result type (might be due to invalid IL or missing references)453			//IL_09f5: Unknown result type (might be due to invalid IL or missing references)454			//IL_09fa: Unknown result type (might be due to invalid IL or missing references)455			//IL_0a02: Unknown result type (might be due to invalid IL or missing references)456			//IL_0a7d: Unknown result type (might be due to invalid IL or missing references)457			//IL_0a82: Unknown result type (might be due to invalid IL or missing references)458			//IL_0a8a: Unknown result type (might be due to invalid IL or missing references)459			//IL_0b13: Unknown result type (might be due to invalid IL or missing references)460			//IL_0b18: Unknown result type (might be due to invalid IL or missing references)461			//IL_0b20: Unknown result type (might be due to invalid IL or missing references)462			//IL_0bdd: Unknown result type (might be due to invalid IL or missing references)463			//IL_0be2: Unknown result type (might be due to invalid IL or missing references)464			//IL_0bea: Unknown result type (might be due to invalid IL or missing references)465			//IL_0c64: Unknown result type (might be due to invalid IL or missing references)466			//IL_0c69: Unknown result type (might be due to invalid IL or missing references)467			//IL_0c71: Unknown result type (might be due to invalid IL or missing references)468			//IL_0cee: Unknown result type (might be due to invalid IL or missing references)469			//IL_0cf3: Unknown result type (might be due to invalid IL or missing references)470			//IL_0cfb: Unknown result type (might be due to invalid IL or missing references)471			//IL_0d69: Unknown result type (might be due to invalid IL or missing references)472			//IL_0d6e: Unknown result type (might be due to invalid IL or missing references)473			//IL_0d76: Unknown result type (might be due to invalid IL or missing references)474			//IL_0812: Unknown result type (might be due to invalid IL or missing references)475			//IL_081d: Unknown result type (might be due to invalid IL or missing references)476			//IL_0822: Unknown result type (might be due to invalid IL or missing references)477			//IL_0826: Unknown result type (might be due to invalid IL or missing references)478			//IL_082b: Unknown result type (might be due to invalid IL or missing references)479			//IL_0474: Unknown result type (might be due to invalid IL or missing references)480			//IL_047f: Unknown result type (might be due to invalid IL or missing references)481			//IL_0484: Unknown result type (might be due to invalid IL or missing references)482			//IL_0488: Unknown result type (might be due to invalid IL or missing references)483			//IL_048d: Unknown result type (might be due to invalid IL or missing references)484			//IL_037b: Unknown result type (might be due to invalid IL or missing references)485			//IL_037d: Unknown result type (might be due to invalid IL or missing references)486			//IL_05b6: Unknown result type (might be due to invalid IL or missing references)487			//IL_05b8: Unknown result type (might be due to invalid IL or missing references)488			//IL_0692: Unknown result type (might be due to invalid IL or missing references)489			//IL_06a1: Unknown result type (might be due to invalid IL or missing references)490			//IL_06a6: Unknown result type (might be due to invalid IL or missing references)491			//IL_06aa: Unknown result type (might be due to invalid IL or missing references)492			//IL_06af: Unknown result type (might be due to invalid IL or missing references)493			//IL_073e: Unknown result type (might be due to invalid IL or missing references)494			//IL_0740: Unknown result type (might be due to invalid IL or missing references)495			//IL_089a: Unknown result type (might be due to invalid IL or missing references)496			//IL_08a9: Unknown result type (might be due to invalid IL or missing references)497			//IL_08ae: Unknown result type (might be due to invalid IL or missing references)498			//IL_08b2: Unknown result type (might be due to invalid IL or missing references)499			//IL_08b7: Unknown result type (might be due to invalid IL or missing references)500			//IL_0923: Unknown result type (might be due to invalid IL or missing references)501			//IL_0932: Unknown result type (might be due to invalid IL or missing references)502			//IL_0937: Unknown result type (might be due to invalid IL or missing references)503			//IL_093b: Unknown result type (might be due to invalid IL or missing references)504			//IL_0940: Unknown result type (might be due to invalid IL or missing references)505			//IL_09a7: Unknown result type (might be due to invalid IL or missing references)506			//IL_09b6: Unknown result type (might be due to invalid IL or missing references)507			//IL_09bb: Unknown result type (might be due to invalid IL or missing references)508			//IL_09bf: Unknown result type (might be due to invalid IL or missing references)509			//IL_09c4: Unknown result type (might be due to invalid IL or missing references)510			//IL_0a2f: Unknown result type (might be due to invalid IL or missing references)511			//IL_0a3e: Unknown result type (might be due to invalid IL or missing references)512			//IL_0a43: Unknown result type (might be due to invalid IL or missing references)513			//IL_0a47: Unknown result type (might be due to invalid IL or missing references)514			//IL_0a4c: Unknown result type (might be due to invalid IL or missing references)515			//IL_0840: Unknown result type (might be due to invalid IL or missing references)516			//IL_0842: Unknown result type (might be due to invalid IL or missing references)517			//IL_04a2: Unknown result type (might be due to invalid IL or missing references)518			//IL_04a4: Unknown result type (might be due to invalid IL or missing references)519			//IL_06c4: Unknown result type (might be due to invalid IL or missing references)520			//IL_06c6: Unknown result type (might be due to invalid IL or missing references)521			//IL_08cd: Unknown result type (might be due to invalid IL or missing references)522			//IL_08cf: Unknown result type (might be due to invalid IL or missing references)523			//IL_0956: Unknown result type (might be due to invalid IL or missing references)524			//IL_0958: Unknown result type (might be due to invalid IL or missing references)525			//IL_09da: Unknown result type (might be due to invalid IL or missing references)526			//IL_09dc: Unknown result type (might be due to invalid IL or missing references)527			//IL_0a62: Unknown result type (might be due to invalid IL or missing references)528			//IL_0a64: Unknown result type (might be due to invalid IL or missing references)529			//IL_0d1f: Unknown result type (might be due to invalid IL or missing references)530			//IL_0d2a: Unknown result type (might be due to invalid IL or missing references)531			//IL_0d2f: Unknown result type (might be due to invalid IL or missing references)532			//IL_0d33: Unknown result type (might be due to invalid IL or missing references)533			//IL_0d38: Unknown result type (might be due to invalid IL or missing references)534			//IL_0ac9: Unknown result type (might be due to invalid IL or missing references)535			//IL_0ad4: Unknown result type (might be due to invalid IL or missing references)536			//IL_0ad9: Unknown result type (might be due to invalid IL or missing references)537			//IL_0add: Unknown result type (might be due to invalid IL or missing references)538			//IL_0ae2: Unknown result type (might be due to invalid IL or missing references)539			//IL_0b93: Unknown result type (might be due to invalid IL or missing references)540			//IL_0b9e: Unknown result type (might be due to invalid IL or missing references)541			//IL_0ba3: Unknown result type (might be due to invalid IL or missing references)542			//IL_0ba7: Unknown result type (might be due to invalid IL or missing references)543			//IL_0bac: Unknown result type (might be due to invalid IL or missing references)544			//IL_0ca0: Unknown result type (might be due to invalid IL or missing references)545			//IL_0caf: Unknown result type (might be due to invalid IL or missing references)546			//IL_0cb4: Unknown result type (might be due to invalid IL or missing references)547			//IL_0cb8: Unknown result type (might be due to invalid IL or missing references)548			//IL_0cbd: Unknown result type (might be due to invalid IL or missing references)549			//IL_0d4e: Unknown result type (might be due to invalid IL or missing references)550			//IL_0d50: Unknown result type (might be due to invalid IL or missing references)551			//IL_0af8: Unknown result type (might be due to invalid IL or missing references)552			//IL_0afa: Unknown result type (might be due to invalid IL or missing references)553			//IL_0bc2: Unknown result type (might be due to invalid IL or missing references)554			//IL_0bc4: Unknown result type (might be due to invalid IL or missing references)555			//IL_0cd3: Unknown result type (might be due to invalid IL or missing references)556			//IL_0cd5: Unknown result type (might be due to invalid IL or missing references)557			//IL_01fb: Unknown result type (might be due to invalid IL or missing references)558			//IL_0206: Unknown result type (might be due to invalid IL or missing references)559			//IL_020b: Unknown result type (might be due to invalid IL or missing references)560			//IL_020f: Unknown result type (might be due to invalid IL or missing references)561			//IL_0214: Unknown result type (might be due to invalid IL or missing references)562			//IL_0c1a: Unknown result type (might be due to invalid IL or missing references)563			//IL_0c25: Unknown result type (might be due to invalid IL or missing references)564			//IL_0c2a: Unknown result type (might be due to invalid IL or missing references)565			//IL_0c2e: Unknown result type (might be due to invalid IL or missing references)566			//IL_0c33: Unknown result type (might be due to invalid IL or missing references)567			//IL_0229: Unknown result type (might be due to invalid IL or missing references)568			//IL_022b: Unknown result type (might be due to invalid IL or missing references)569			//IL_0c49: Unknown result type (might be due to invalid IL or missing references)570			//IL_0c4b: Unknown result type (might be due to invalid IL or missing references)571			int num = _003C_003E1__state;572			try573			{574				ConfiguredTaskAwaiter<DbObjectKey> val6;575				ConfiguredTaskAwaiter<IEntityCollection> val5;576				ConfiguredTaskAwaiter<string> val4;577				ConfiguredTaskAwaiter val;578				ConfiguredTaskAwaitable val7;579				DbObjectKey result2;580				Query query;581				int num2;582				int value4;583				System.DateTime value5;584				IEntityCollection result3;585				_State state;586				ConfiguredTaskAwaiter<IEntity> val3;587				ConfiguredValueTaskAwaiter<ApplyResult> val2;588				IEntity result;589				switch (num)590				{591				default:592					_003C_003E8__1 = new _003C_003Ec__DisplayClass4_0();593					_003C_003E8__1.operation = operation;594					_003Clog_003E5__2 = LogManager.GetLogger("ObjectLog");595					_003CsessionId_003E5__3 = new LogSessionId(session.Id, useMultiLanguage: false);596					if (session.IsFullSync())597					{598						NLogExtensions.Debug(_003Clog_003E5__2, _003CsessionId_003E5__3, "Do not run CreatePendingChange in FULLSYNC mode.");599					}600					else601					{602						XMarkedForDeletion value = XMarkedForDeletion.None;603						XMarkedForDeletion value2 = XMarkedForDeletion.None;604						if (entity.Columns.TryGetValue("xmarkedfordeletion", out var value3))605						{606							value = (XMarkedForDeletion)DbVal.ConvertTo<int>(value3.GetOldValue());607							value2 = (XMarkedForDeletion)DbVal.ConvertTo<int>(value3.GetValue());608						}609						if (string.Equals(_003C_003E8__1.operation, "D", (StringComparison)5) && value.HasFlagFast(XMarkedForDeletion.Outstanding))610						{611							_003Clog_003E5__2.Debug("Entity was outstanding -> do not create QBMPendingChange for deletion.");612						}613						else614						{615							if (string.Equals(_003C_003E8__1.operation, "U", (StringComparison)5) && value.HasFlagFast(XMarkedForDeletion.Outstanding) && !value2.HasFlagFast(XMarkedForDeletion.Outstanding))616							{617								_003Clog_003E5__2.Debug("Publishing outstanding object -> setting QBMPendingChange operation to Insert");618								_003C_003E8__1.operation = "I";619							}620							if (!(_003C_003E8__1.operation == "U") || Enumerable.Any<IEntityColumn>((System.Collections.Generic.IEnumerable<IEntityColumn>)entity.Columns, (Func<IEntityColumn, bool>)((IEntityColumn c) => c.IsDifferent)))621							{622								_003Csrc_003E5__4 = session.Source();623								val6 = DbObjectKey.CreateAsync(session.MetaData(), entity, ct).ConfigureAwait(false).GetAwaiter();624								if (!val6.IsCompleted)625								{626									num = (_003C_003E1__state = 0);627									_003C_003Eu__1 = val6;628									((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<DbObjectKey>, _003C_CreatePendingChange_003Ed__4>(ref val6, ref this);629									return;630								}631								goto IL_0260;632							}633							NLogExtensions.Debug(_003Clog_003E5__2, _003CsessionId_003E5__3, "No changes detected -> do not create QBMPendingChange for update.");634						}635					}636					goto end_IL_0007;637				case 0:638					val6 = _003C_003Eu__1;639					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<DbObjectKey>);640					num = (_003C_003E1__state = -1);641					goto IL_0260;642				case 1:643					val5 = _003C_003Eu__2;644					_003C_003Eu__2 = default(ConfiguredTaskAwaiter<IEntityCollection>);645					num = (_003C_003E1__state = -1);646					goto IL_0311;647				case 2:648					val4 = _003C_003Eu__3;649					_003C_003Eu__3 = default(ConfiguredTaskAwaiter<string>);650					num = (_003C_003E1__state = -1);651					goto IL_03b2;652				case 3:653					val3 = _003C_003Eu__4;654					_003C_003Eu__4 = default(ConfiguredTaskAwaiter<IEntity>);655					num = (_003C_003E1__state = -1);656					goto IL_04d9;657				case 4:658					val2 = _003C_003Eu__5;659					_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);660					num = (_003C_003E1__state = -1);661					goto IL_056a;662				case 5:663					val2 = _003C_003Eu__5;664					_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);665					num = (_003C_003E1__state = -1);666					goto IL_05ed;667				case 6:668					val2 = _003C_003Eu__5;669					_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);670					num = (_003C_003E1__state = -1);671					goto IL_06fb;672				case 7:673					val = _003C_003Eu__6;674					_003C_003Eu__6 = default(ConfiguredTaskAwaiter);675					num = (_003C_003E1__state = -1);676					goto IL_0775;677				case 8:678				case 9:679				case 10:680				case 11:681				case 12:682				case 13:683				case 14:684				case 15:685				case 16:686				case 17:687					break;688					IL_04d9:689					result = val3.GetResult();690					_003CpendingChange_003E5__5 = result;691					val2 = _003CpendingChange_003E5__5.PutValueAsync("ObjectKeyElement", _003C_003E8__1.keyXml, ct).ConfigureAwait(false).GetAwaiter();692					if (!val2.IsCompleted)693					{694						num = (_003C_003E1__state = 4);695						_003C_003Eu__5 = val2;696						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreatePendingChange_003Ed__4>(ref val2, ref this);697						return;698					}699					goto IL_056a;700					IL_0572:701					val2 = _003CpendingChange_003E5__5.PutValueAsync("IsProcessed", 0, ct).ConfigureAwait(false).GetAwaiter();702					if (!val2.IsCompleted)703					{704						num = (_003C_003E1__state = 5);705						_003C_003Eu__5 = val2;706						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreatePendingChange_003Ed__4>(ref val2, ref this);707						return;708					}709					goto IL_05ed;710					IL_0703:711					val7 = uow.PutAsync(_003CpendingChange_003E5__5, ct).ConfigureAwait(false);712					val = ((ConfiguredTaskAwaitable)(ref val7)).GetAwaiter();713					if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)714					{715						num = (_003C_003E1__state = 7);716						_003C_003Eu__6 = val;717						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_CreatePendingChange_003Ed__4>(ref val, ref this);718						return;719					}720					goto IL_0775;721					IL_06fb:722					val2.GetResult();723					goto IL_0703;724					IL_056a:725					val2.GetResult();726					goto IL_0572;727					IL_0260:728					result2 = val6.GetResult();729					_003C_003E8__1.keyXml = result2.ToXmlString();730					query = (from t in Query.From("QBMPendingChange")731						where t.Column("ObjectKeyElement") == _003C_003E8__1.keyXml732						select t).SelectNonLobs();733					val5 = _003Csrc_003E5__4.GetCollectionAsync(query, EntityCollectionLoadType.Bulk, ct).ConfigureAwait(false).GetAwaiter();734					if (!val5.IsCompleted)735					{736						num = (_003C_003E1__state = 1);737						_003C_003Eu__2 = val5;738						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntityCollection>, _003C_CreatePendingChange_003Ed__4>(ref val5, ref this);739						return;740					}741					goto IL_0311;742					IL_03b2:743					num2 = DbVal.ConvertTo<int>(val4.GetResult());744					if (num2 <= 0)745					{746						num2 = 60;747					}748					value4 = _003CexistingChange_003E5__7.GetValue<int>("IsProcessed");749					value5 = _003CexistingChange_003E5__7.GetValue<System.DateTime>("XDateUpdated");750					if (value4 == 0 && value5.AddDays((double)(num2 - 1)) < Clock.UtcNow)751					{752						NLogExtensions.Debug(_003Clog_003E5__2, _003CsessionId_003E5__3, "QBMPendingChange exists but is processed and too old -> create a new one");753					}754					else755					{756						NLogExtensions.Debug(_003Clog_003E5__2, _003CsessionId_003E5__3, "QBMPendingChange exists -> change it");757						_003CpendingChange_003E5__5 = _003CexistingChange_003E5__7;758					}759					_003CexistingChange_003E5__7 = null;760					goto IL_0446;761					IL_0311:762					result3 = val5.GetResult();763					_003CpendingChange_003E5__5 = null;764					if (((System.Collections.Generic.IReadOnlyCollection<IEntity>)result3).Count > 0)765					{766						_003CexistingChange_003E5__7 = ((System.Collections.Generic.IReadOnlyList<IEntity>)result3)[0];767						val4 = session.Config().GetConfigParmAsync("Common\\PendingChange\\LifeTimeRunning", ct).ConfigureAwait(false)768							.GetAwaiter();769						if (!val4.IsCompleted)770						{771							num = (_003C_003E1__state = 2);772							_003C_003Eu__3 = val4;773							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<string>, _003C_CreatePendingChange_003Ed__4>(ref val4, ref this);774							return;775						}776						goto IL_03b2;777					}778					goto IL_0446;779					IL_0446:780					if (_003CpendingChange_003E5__5 == null)781					{782						NLogExtensions.Debug(_003Clog_003E5__2, _003CsessionId_003E5__3, "Create a new QBMPendingChange entry");783						val3 = _003Csrc_003E5__4.CreateNewAsync("QBMPendingChange", EntityCreationType.DelayedLogic, ct).ConfigureAwait(false).GetAwaiter();784						if (!val3.IsCompleted)785						{786							num = (_003C_003E1__state = 3);787							_003C_003Eu__4 = val3;788							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003C_CreatePendingChange_003Ed__4>(ref val3, ref this);789							return;790						}791						goto IL_04d9;792					}793					goto IL_0572;794					IL_05ed:795					val2.GetResult();796					_003C_003E8__1.currentOp = _003CpendingChange_003E5__5.GetValue<string>("Operation");797					state = Enumerable.FirstOrDefault<_State>((System.Collections.Generic.IEnumerable<_State>)_stateMatrix, (Func<_State, bool>)((_State s) => string.Equals(s.OldOp, _003C_003E8__1.currentOp, (StringComparison)5) && string.Equals(s.NewOp, _003C_003E8__1.operation, (StringComparison)5)));798					if (state.Warning)799					{800						NLogExtensions.Debug(_003Clog_003E5__2, _003CsessionId_003E5__3, "Irregular combination of operations: Existing = {0}, Coming in = {1}", _003C_003E8__1.currentOp, _003C_003E8__1.operation);801					}802					if (!string.Equals(_003C_003E8__1.currentOp, state.ResultingOp, (StringComparison)5))803					{804						val2 = _003CpendingChange_003E5__5.PutValueAsync("Operation", state.ResultingOp, ct).ConfigureAwait(false).GetAwaiter();805						if (!val2.IsCompleted)806						{807							num = (_003C_003E1__state = 6);808							_003C_003Eu__5 = val2;809							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreatePendingChange_003Ed__4>(ref val2, ref this);810							return;811						}812						goto IL_06fb;813					}814					goto IL_0703;815					IL_0775:816					((ConfiguredTaskAwaiter)(ref val)).GetResult();817					_003CuidChange_003E5__6 = _003CpendingChange_003E5__5.GetValue<string>("UID_QBMPendingChange");818					_003C_003E7__wrap7 = uow.IdentityMap.Register(new DbObjectKey("QBMPendingChange", _003CuidChange_003E5__6), _003CpendingChange_003E5__5);819					break;820				}821				try822				{823					ConfiguredTaskAwaiter<IMetaTable> val9;824					ConfiguredTaskAwaiter<Diff> val8;825					IMetaTable result4;826					Diff result5;827					Diff diff;828					switch (num)829					{830					default:831						NLogExtensions.Debug(_003Clog_003E5__2, _003CsessionId_003E5__3, "QBMPendingChangeDetail: Create a new entry");832						val3 = _003Csrc_003E5__4.CreateNewAsync("QBMPendingChangeDetail", EntityCreationType.DelayedLogic, ct).ConfigureAwait(false).GetAwaiter();833						if (!val3.IsCompleted)834						{835							num = (_003C_003E1__state = 8);836							_003C_003Eu__4 = val3;837							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003C_CreatePendingChange_003Ed__4>(ref val3, ref this);838							return;839						}840						goto IL_0877;841					case 8:842						val3 = _003C_003Eu__4;843						_003C_003Eu__4 = default(ConfiguredTaskAwaiter<IEntity>);844						num = (_003C_003E1__state = -1);845						goto IL_0877;846					case 9:847						val2 = _003C_003Eu__5;848						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);849						num = (_003C_003E1__state = -1);850						goto IL_0904;851					case 10:852						val2 = _003C_003Eu__5;853						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);854						num = (_003C_003E1__state = -1);855						goto IL_098d;856					case 11:857						val2 = _003C_003Eu__5;858						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);859						num = (_003C_003E1__state = -1);860						goto IL_0a11;861					case 12:862						val2 = _003C_003Eu__5;863						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);864						num = (_003C_003E1__state = -1);865						goto IL_0a99;866					case 13:867						val9 = _003C_003Eu__7;868						_003C_003Eu__7 = default(ConfiguredTaskAwaiter<IMetaTable>);869						num = (_003C_003E1__state = -1);870						goto IL_0b2f;871					case 14:872						val8 = _003C_003Eu__8;873						_003C_003Eu__8 = default(ConfiguredTaskAwaiter<Diff>);874						num = (_003C_003E1__state = -1);875						goto IL_0bf9;876					case 15:877						val8 = _003C_003Eu__8;878						_003C_003Eu__8 = default(ConfiguredTaskAwaiter<Diff>);879						num = (_003C_003E1__state = -1);880						goto IL_0c80;881					case 16:882						val2 = _003C_003Eu__5;883						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);884						num = (_003C_003E1__state = -1);885						goto IL_0d0a;886					case 17:887						{888							val = _003C_003Eu__6;889							_003C_003Eu__6 = default(ConfiguredTaskAwaiter);890							num = (_003C_003E1__state = -1);891							break;892						}893						IL_0d12:894						val7 = uow.PutAsync(_003CexistingChange_003E5__7, ct).ConfigureAwait(false);895						val = ((ConfiguredTaskAwaitable)(ref val7)).GetAwaiter();896						if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)897						{898							num = (_003C_003E1__state = 17);899							_003C_003Eu__6 = val;900							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_CreatePendingChange_003Ed__4>(ref val, ref this);901							return;902						}903						break;904						IL_0877:905						result = val3.GetResult();906						_003CexistingChange_003E5__7 = result;907						val2 = _003CexistingChange_003E5__7.PutValueAsync("UID_QBMPendingChange", _003CuidChange_003E5__6, ct).ConfigureAwait(false).GetAwaiter();908						if (!val2.IsCompleted)909						{910							num = (_003C_003E1__state = 9);911							_003C_003Eu__5 = val2;912							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreatePendingChange_003Ed__4>(ref val2, ref this);913							return;914						}915						goto IL_0904;916						IL_0b2f:917						result4 = val9.GetResult();918						if (entity.State.HasFlagFast(EntityState.ToDeletePhysical) || result4.IsMNTable || (string.Equals(_003C_003E8__1.operation, "I", (StringComparison)5) && entity.IsLoaded))919						{920							val8 = entity.GetDiffAsync(session.MetaData(), DiffMode.AllColumns, ct).ConfigureAwait(false).GetAwaiter();921							if (!val8.IsCompleted)922							{923								num = (_003C_003E1__state = 14);924								_003C_003Eu__8 = val8;925								((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<Diff>, _003C_CreatePendingChange_003Ed__4>(ref val8, ref this);926								return;927							}928							goto IL_0bf9;929						}930						val8 = entity.GetDiffAsync(session.MetaData(), DiffMode.Changed, ct).ConfigureAwait(false).GetAwaiter();931						if (!val8.IsCompleted)932						{933							num = (_003C_003E1__state = 15);934							_003C_003Eu__8 = val8;935							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<Diff>, _003C_CreatePendingChange_003Ed__4>(ref val8, ref this);936							return;937						}938						goto IL_0c80;939						IL_0904:940						val2.GetResult();941						val2 = _003CexistingChange_003E5__7.PutValueAsync("Operation", _003C_003E8__1.operation, ct).ConfigureAwait(false).GetAwaiter();942						if (!val2.IsCompleted)943						{944							num = (_003C_003E1__state = 10);945							_003C_003Eu__5 = val2;946							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreatePendingChange_003Ed__4>(ref val2, ref this);947							return;948						}949						goto IL_098d;950						IL_0c80:951						result5 = val8.GetResult();952						goto IL_0c89;953						IL_098d:954						val2.GetResult();955						val2 = _003CexistingChange_003E5__7.PutValueAsync("IsProcessed", 0, ct).ConfigureAwait(false).GetAwaiter();956						if (!val2.IsCompleted)957						{958							num = (_003C_003E1__state = 11);959							_003C_003Eu__5 = val2;960							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreatePendingChange_003Ed__4>(ref val2, ref this);961							return;962						}963						goto IL_0a11;964						IL_0d0a:965						val2.GetResult();966						goto IL_0d12;967						IL_0a11:968						val2.GetResult();969						val2 = _003CexistingChange_003E5__7.PutValueAsync("CreationDate", Clock.UtcNow, ct).ConfigureAwait(false).GetAwaiter();970						if (!val2.IsCompleted)971						{972							num = (_003C_003E1__state = 12);973							_003C_003Eu__5 = val2;974							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreatePendingChange_003Ed__4>(ref val2, ref this);975							return;976						}977						goto IL_0a99;978						IL_0c89:979						diff = result5;980						val2 = _003CexistingChange_003E5__7.PutValueAsync("DiffStore", diff.ToXml(), ct).ConfigureAwait(false).GetAwaiter();981						if (!val2.IsCompleted)982						{983							num = (_003C_003E1__state = 16);984							_003C_003Eu__5 = val2;985							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreatePendingChange_003Ed__4>(ref val2, ref this);986							return;987						}988						goto IL_0d0a;989						IL_0a99:990						val2.GetResult();991						if (behavior.HasFlagFast(PendingChangeBehavior.CreateChangeDetail))992						{993							val9 = session.MetaData().GetTableAsync(entity.Tablename, ct).ConfigureAwait(false)994								.GetAwaiter();995							if (!val9.IsCompleted)996							{997								num = (_003C_003E1__state = 13);998								_003C_003Eu__7 = val9;999								((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IMetaTable>, _003C_CreatePendingChange_003Ed__4>(ref val9, ref this);1000								return;1001							}1002							goto IL_0b2f;1003						}1004						goto IL_0d12;1005						IL_0bf9:1006						result5 = val8.GetResult();1007						goto IL_0c89;1008					}1009					((ConfiguredTaskAwaiter)(ref val)).GetResult();1010					_003CexistingChange_003E5__7 = null;1011				}1012				finally1013				{1014					if (num < 0 && _003C_003E7__wrap7 != null)1015					{1016						_003C_003E7__wrap7.Dispose();1017					}1018				}1019				_003C_003E7__wrap7 = null;1020				end_IL_0007:;1021			}1022			catch (System.Exception exception)1023			{1024				_003C_003E1__state = -2;1025				_003C_003E8__1 = null;1026				_003Clog_003E5__2 = null;1027				_003CsessionId_003E5__3 = null;1028				_003Csrc_003E5__4 = null;1029				_003CpendingChange_003E5__5 = null;1030				_003CuidChange_003E5__6 = null;1031				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);1032				return;1033			}1034			_003C_003E1__state = -2;1035			_003C_003E8__1 = null;1036			_003Clog_003E5__2 = null;1037			_003CsessionId_003E5__3 = null;1038			_003Csrc_003E5__4 = null;1039			_003CpendingChange_003E5__5 = null;1040			_003CuidChange_003E5__6 = null;1041			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();1042		}10431044		[DebuggerHidden]1045		private void SetStateMachine(IAsyncStateMachine stateMachine)1046		{1047			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);1048		}1049	}10501051	[StructLayout((LayoutKind)3)]1052	[CompilerGenerated]1053	private struct _003C_PendingChangeReady_003Ed__5 : IAsyncStateMachine1054	{1055		public int _003C_003E1__state;10561057		public AsyncTaskMethodBuilder _003C_003Et__builder;10581059		public ISession session;10601061		public IEntity entity;10621063		public CancellationToken ct;10641065		public bool success;10661067		private ConfiguredTaskAwaiter<DbObjectKey> _003C_003Eu__1;10681069		private ConfiguredTaskAwaiter _003C_003Eu__2;10701071		private void MoveNext()1072		{1073			//IL_0069: Unknown result type (might be due to invalid IL or missing references)1074			//IL_006e: Unknown result type (might be due to invalid IL or missing references)1075			//IL_0075: Unknown result type (might be due to invalid IL or missing references)1076			//IL_009a: Unknown result type (might be due to invalid IL or missing references)1077			//IL_00a5: Unknown result type (might be due to invalid IL or missing references)1078			//IL_00aa: Unknown result type (might be due to invalid IL or missing references)1079			//IL_00ae: Unknown result type (might be due to invalid IL or missing references)1080			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)1081			//IL_00e0: Unknown result type (might be due to invalid IL or missing references)1082			//IL_00e5: Unknown result type (might be due to invalid IL or missing references)1083			//IL_00ed: Unknown result type (might be due to invalid IL or missing references)1084			//IL_0023: Unknown result type (might be due to invalid IL or missing references)1085			//IL_002e: Unknown result type (might be due to invalid IL or missing references)1086			//IL_0033: Unknown result type (might be due to invalid IL or missing references)1087			//IL_0036: Unknown result type (might be due to invalid IL or missing references)1088			//IL_003b: Unknown result type (might be due to invalid IL or missing references)1089			//IL_00c8: Unknown result type (might be due to invalid IL or missing references)1090			//IL_00ca: Unknown result type (might be due to invalid IL or missing references)1091			//IL_004f: Unknown result type (might be due to invalid IL or missing references)1092			//IL_0050: Unknown result type (might be due to invalid IL or missing references)1093			int num = _003C_003E1__state;1094			try1095			{1096				ConfiguredTaskAwaiter val;1097				ConfiguredTaskAwaiter<DbObjectKey> val2;1098				if (num != 0)1099				{1100					if (num == 1)1101					{1102						val = _003C_003Eu__2;1103						_003C_003Eu__2 = default(ConfiguredTaskAwaiter);1104						num = (_003C_003E1__state = -1);1105						goto IL_00fc;1106					}1107					val2 = DbObjectKey.CreateAsync(session.MetaData(), entity, ct).ConfigureAwait(false).GetAwaiter();1108					if (!val2.IsCompleted)1109					{1110						num = (_003C_003E1__state = 0);1111						_003C_003Eu__1 = val2;1112						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<DbObjectKey>, _003C_PendingChangeReady_003Ed__5>(ref val2, ref this);1113						return;1114					}1115				}1116				else1117				{1118					val2 = _003C_003Eu__1;1119					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<DbObjectKey>);1120					num = (_003C_003E1__state = -1);1121				}1122				DbObjectKey result = val2.GetResult();1123				ConfiguredTaskAwaitable val3 = PendingChange.SetReadyAsync(session, result, success, ct).ConfigureAwait(false);1124				val = ((ConfiguredTaskAwaitable)(ref val3)).GetAwaiter();1125				if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)1126				{1127					num = (_003C_003E1__state = 1);1128					_003C_003Eu__2 = val;1129					((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_PendingChangeReady_003Ed__5>(ref val, ref this);1130					return;1131				}1132				goto IL_00fc;1133				IL_00fc:1134				((ConfiguredTaskAwaiter)(ref val)).GetResult();1135			}1136			catch (System.Exception exception)1137			{1138				_003C_003E1__state = -2;1139				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);1140				return;1141			}1142			_003C_003E1__state = -2;1143			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();1144		}11451146		[DebuggerHidden]1147		private void SetStateMachine(IAsyncStateMachine stateMachine)1148		{1149			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);1150		}1151	}11521153	private static readonly _State[] _stateMatrix = new _State[12]1154	{1155		new _State("I", "I", "I", warning: true),1156		new _State("I", "U", "U", warning: false),1157		new _State("I", "D", "D", warning: false),1158		new _State("U", "I", "U", warning: true),1159		new _State("U", "U", "U", warning: false),1160		new _State("U", "D", "D", warning: false),1161		new _State("D", "I", "I", warning: false),1162		new _State("D", "U", "U", warning: true),1163		new _State("D", "D", "D", warning: true),1164		new _State("", "I", "I", warning: false),1165		new _State("", "U", "U", warning: false),1166		new _State("", "D", "D", warning: false)1167	};11681169	public PendingChangeEntityLogic(IMetaTable table)1170	{1171		_003C_003Ec__DisplayClass2_0 CS_0024_003C_003E8__locals5 = new _003C_003Ec__DisplayClass2_0();1172		base._002Ector();1173		CS_0024_003C_003E8__locals5._003C_003E4__this = this;1174		CS_0024_003C_003E8__locals5.behavior = table.PendingChangeBehavior;1175		if (CS_0024_003C_003E8__locals5.behavior.HasFlagFast(PendingChangeBehavior.SetChange) && table.Columns.IsAvailable("xisineffect"))1176		{1177			RegisterMethod("CreatePendingChange").As<string>([AsyncStateMachine(typeof(_003C_003Ec__DisplayClass2_0._003C_003C_002Dctor_003Eb__0_003Ed))] (ISession s, IEntity e, string op, CancellationToken ct) =>1178			{1179				//IL_0002: Unknown result type (might be due to invalid IL or missing references)1180				//IL_0007: Unknown result type (might be due to invalid IL or missing references)1181				//IL_002e: Unknown result type (might be due to invalid IL or missing references)1182				//IL_0030: Unknown result type (might be due to invalid IL or missing references)1183				_003C_003Ec__DisplayClass2_0._003C_003C_002Dctor_003Eb__0_003Ed _003C_003C_002Dctor_003Eb__0_003Ed = default(_003C_003Ec__DisplayClass2_0._003C_003C_002Dctor_003Eb__0_003Ed);1184				_003C_003C_002Dctor_003Eb__0_003Ed._003C_003Et__builder = AsyncTaskMethodBuilder.Create();1185				_003C_003C_002Dctor_003Eb__0_003Ed._003C_003E4__this = CS_0024_003C_003E8__locals5;1186				_003C_003C_002Dctor_003Eb__0_003Ed.s = s;1187				_003C_003C_002Dctor_003Eb__0_003Ed.e = e;1188				_003C_003C_002Dctor_003Eb__0_003Ed.op = op;1189				_003C_003C_002Dctor_003Eb__0_003Ed.ct = ct;1190				_003C_003C_002Dctor_003Eb__0_003Ed._003C_003E1__state = -1;1191				((AsyncTaskMethodBuilder)(ref _003C_003C_002Dctor_003Eb__0_003Ed._003C_003Et__builder)).Start<_003C_003Ec__DisplayClass2_0._003C_003C_002Dctor_003Eb__0_003Ed>(ref _003C_003C_002Dctor_003Eb__0_003Ed);1192				return ((AsyncTaskMethodBuilder)(ref _003C_003C_002Dctor_003Eb__0_003Ed._003C_003Et__builder)).Task;1193			}).NeedsSaving();1194		}1195		if (CS_0024_003C_003E8__locals5.behavior.HasFlagFast(PendingChangeBehavior.ResetChange))1196		{1197			RegisterMethod("PendingChangeReady").As<bool>(_PendingChangeReady).Features("Common_PendingChangeReady").NeedsSaving();1198		}1199	}12001201	[AsyncStateMachine(typeof(_003COnSavedAsync_003Ed__3))]1202	public override System.Threading.Tasks.Task OnSavedAsync(IEntity entity, LogicReadWriteParameters parameters, CancellationToken cancellationToken)1203	{1204		//IL_0002: Unknown result type (might be due to invalid IL or missing references)1205		//IL_0007: Unknown result type (might be due to invalid IL or missing references)1206		//IL_0026: Unknown result type (might be due to invalid IL or missing references)1207		//IL_0027: Unknown result type (might be due to invalid IL or missing references)1208		_003COnSavedAsync_003Ed__3 _003COnSavedAsync_003Ed__ = default(_003COnSavedAsync_003Ed__3);1209		_003COnSavedAsync_003Ed__._003C_003Et__builder = AsyncTaskMethodBuilder.Create();1210		_003COnSavedAsync_003Ed__._003C_003E4__this = this;1211		_003COnSavedAsync_003Ed__.entity = entity;1212		_003COnSavedAsync_003Ed__.parameters = parameters;1213		_003COnSavedAsync_003Ed__.cancellationToken = cancellationToken;1214		_003COnSavedAsync_003Ed__._003C_003E1__state = -1;1215		((AsyncTaskMethodBuilder)(ref _003COnSavedAsync_003Ed__._003C_003Et__builder)).Start<_003COnSavedAsync_003Ed__3>(ref _003COnSavedAsync_003Ed__);1216		return ((AsyncTaskMethodBuilder)(ref _003COnSavedAsync_003Ed__._003C_003Et__builder)).Task;1217	}12181219	[AsyncStateMachine(typeof(_003C_CreatePendingChange_003Ed__4))]1220	private System.Threading.Tasks.Task _CreatePendingChange(ISession session, IEntity entity, IUnitOfWork uow, string operation, PendingChangeBehavior behavior, CancellationToken ct)1221	{1222		//IL_0002: Unknown result type (might be due to invalid IL or missing references)1223		//IL_0007: Unknown result type (might be due to invalid IL or missing references)1224		//IL_0038: Unknown result type (might be due to invalid IL or missing references)1225		//IL_003a: Unknown result type (might be due to invalid IL or missing references)1226		_003C_CreatePendingChange_003Ed__4 _003C_CreatePendingChange_003Ed__ = default(_003C_CreatePendingChange_003Ed__4);1227		_003C_CreatePendingChange_003Ed__._003C_003Et__builder = AsyncTaskMethodBuilder.Create();1228		_003C_CreatePendingChange_003Ed__.session = session;1229		_003C_CreatePendingChange_003Ed__.entity = entity;1230		_003C_CreatePendingChange_003Ed__.uow = uow;1231		_003C_CreatePendingChange_003Ed__.operation = operation;1232		_003C_CreatePendingChange_003Ed__.behavior = behavior;1233		_003C_CreatePendingChange_003Ed__.ct = ct;1234		_003C_CreatePendingChange_003Ed__._003C_003E1__state = -1;1235		((AsyncTaskMethodBuilder)(ref _003C_CreatePendingChange_003Ed__._003C_003Et__builder)).Start<_003C_CreatePendingChange_003Ed__4>(ref _003C_CreatePendingChange_003Ed__);1236		return ((AsyncTaskMethodBuilder)(ref _003C_CreatePendingChange_003Ed__._003C_003Et__builder)).Task;1237	}12381239	[AsyncStateMachine(typeof(_003C_PendingChangeReady_003Ed__5))]1240	private System.Threading.Tasks.Task _PendingChangeReady(ISession session, IEntity entity, bool success, CancellationToken ct)1241	{1242		//IL_0002: Unknown result type (might be due to invalid IL or missing references)1243		//IL_0007: Unknown result type (might be due to invalid IL or missing references)1244		//IL_0026: Unknown result type (might be due to invalid IL or missing references)1245		//IL_0028: Unknown result type (might be due to invalid IL or missing references)1246		_003C_PendingChangeReady_003Ed__5 _003C_PendingChangeReady_003Ed__ = default(_003C_PendingChangeReady_003Ed__5);1247		_003C_PendingChangeReady_003Ed__._003C_003Et__builder = AsyncTaskMethodBuilder.Create();1248		_003C_PendingChangeReady_003Ed__.session = session;1249		_003C_PendingChangeReady_003Ed__.entity = entity;1250		_003C_PendingChangeReady_003Ed__.success = success;1251		_003C_PendingChangeReady_003Ed__.ct = ct;1252		_003C_PendingChangeReady_003Ed__._003C_003E1__state = -1;1253		((AsyncTaskMethodBuilder)(ref _003C_PendingChangeReady_003Ed__._003C_003Et__builder)).Start<_003C_PendingChangeReady_003Ed__5>(ref _003C_PendingChangeReady_003Ed__);1254		return ((AsyncTaskMethodBuilder)(ref _003C_PendingChangeReady_003Ed__._003C_003Et__builder)).Task;1255	}1256}1257