VI.DB/VI.DB.Entities/PendingChangeEntityLogic.cs
Decompiler Source FileVI.DB.PendingChangeEntityLogicDecompiled Source
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_0Methods
DB/Dialog object references
OIM key/entity markers
ObjectKeyElement UID_QBMPendingChangeAPI/entity calls
GetValue IsFullSync Source CreateAsync MetaData From Config GetDiffAsyncRegistrations / handlers
None extracted.
Complete Source
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