Back to OIM Explorer

RPS.Customizer/RPS.Customizer/RPSSubscription.cs

Decompiler Source FileRPS.Customizer.RPSSubscriptionDecompiled Source

1 extracted method/event/call references in RPSSubscription.

Source: F:\Claude\.tmp\oim-decompiled-full\1014_One_Identity_Manager_RPS.Customizer.dll\RPS.Customizer\RPSSubscription.cs

Source size: 20.305 characters

Interpretation

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

Relations

  • Function registration: CreateParameterSet at line 388

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 RPSSubscription; methods MoveNext, SetStateMachine, _CreateParameterSet; references DialogParameter, DialogParameterSet, RPSReport, RPSSubscription; markers reads entity values, references DB/Dialog objects

Classes

RPSSubscription

OIM key/entity markers

UID_RPSReport ObjectKeyUsedBy UID_DialogParameterSet UID_DialogParameterSetParent

API/entity calls

GetValueAsync StartUnitOfWork CreateAsync MetaData GetObjectKey SqlFormatter Source

Registrations / handlers

None extracted.

Complete Source

C#421 lines
1using System;2using System.Collections;3using System.Collections.Generic;4using System.Diagnostics;5using System.Runtime.CompilerServices;6using System.Runtime.InteropServices;7using System.Threading;8using System.Threading.Tasks;9using VI.Base;10using VI.DB;11using VI.DB.Entities;12using VI.DB.MetaData;1314namespace RPS.Customizer;1516public class RPSSubscription : StateBasedEntityLogic17{18	[StructLayout((LayoutKind)3)]19	[CompilerGenerated]20	private struct _003C_CreateParameterSet_003Ed__1 : IAsyncStateMachine21	{22		public int _003C_003E1__state;2324		public AsyncTaskMethodBuilder<IEntity> _003C_003Et__builder;2526		public IEntity entity;2728		public CancellationToken ct;2930		public ISession session;3132		private string _003CuidRPSReport_003E5__2;3334		private ConfiguredValueTaskAwaiter<string> _003C_003Eu__1;3536		private IUnitOfWork _003Cuow_003E5__3;3738		private DbObjectKey _003CdbokSubscription_003E5__4;3940		private string _003CuidDialogParameterSet_003E5__5;4142		private IEntity _003CdbReportSet_003E5__6;4344		private ConfiguredTaskAwaiter<DbObjectKey> _003C_003Eu__2;4546		private ConfiguredTaskAwaiter<string> _003C_003Eu__3;4748		private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__4;4950		private ConfiguredValueTaskAwaiter<ApplyResult> _003C_003Eu__5;5152		private ConfiguredTaskAwaiter _003C_003Eu__6;5354		private void MoveNext()55		{56			//IL_006c: Unknown result type (might be due to invalid IL or missing references)57			//IL_0071: Unknown result type (might be due to invalid IL or missing references)58			//IL_0079: Unknown result type (might be due to invalid IL or missing references)59			//IL_001f: Unknown result type (might be due to invalid IL or missing references)60			//IL_002e: Unknown result type (might be due to invalid IL or missing references)61			//IL_0033: Unknown result type (might be due to invalid IL or missing references)62			//IL_0037: Unknown result type (might be due to invalid IL or missing references)63			//IL_003c: Unknown result type (might be due to invalid IL or missing references)64			//IL_0051: Unknown result type (might be due to invalid IL or missing references)65			//IL_0053: Unknown result type (might be due to invalid IL or missing references)66			//IL_0154: Unknown result type (might be due to invalid IL or missing references)67			//IL_0159: Unknown result type (might be due to invalid IL or missing references)68			//IL_0161: Unknown result type (might be due to invalid IL or missing references)69			//IL_0213: Unknown result type (might be due to invalid IL or missing references)70			//IL_0218: Unknown result type (might be due to invalid IL or missing references)71			//IL_0220: Unknown result type (might be due to invalid IL or missing references)72			//IL_0299: Unknown result type (might be due to invalid IL or missing references)73			//IL_029e: Unknown result type (might be due to invalid IL or missing references)74			//IL_02a6: Unknown result type (might be due to invalid IL or missing references)75			//IL_0325: Unknown result type (might be due to invalid IL or missing references)76			//IL_032a: Unknown result type (might be due to invalid IL or missing references)77			//IL_0332: Unknown result type (might be due to invalid IL or missing references)78			//IL_03ad: Unknown result type (might be due to invalid IL or missing references)79			//IL_03b2: Unknown result type (might be due to invalid IL or missing references)80			//IL_03ba: Unknown result type (might be due to invalid IL or missing references)81			//IL_044c: Unknown result type (might be due to invalid IL or missing references)82			//IL_0451: Unknown result type (might be due to invalid IL or missing references)83			//IL_0459: Unknown result type (might be due to invalid IL or missing references)84			//IL_04c6: Unknown result type (might be due to invalid IL or missing references)85			//IL_04cb: Unknown result type (might be due to invalid IL or missing references)86			//IL_04d3: Unknown result type (might be due to invalid IL or missing references)87			//IL_0539: Unknown result type (might be due to invalid IL or missing references)88			//IL_053e: Unknown result type (might be due to invalid IL or missing references)89			//IL_0546: Unknown result type (might be due to invalid IL or missing references)90			//IL_010b: Unknown result type (might be due to invalid IL or missing references)91			//IL_0116: Unknown result type (might be due to invalid IL or missing references)92			//IL_011b: Unknown result type (might be due to invalid IL or missing references)93			//IL_011f: Unknown result type (might be due to invalid IL or missing references)94			//IL_0124: Unknown result type (might be due to invalid IL or missing references)95			//IL_01ca: Unknown result type (might be due to invalid IL or missing references)96			//IL_01d5: Unknown result type (might be due to invalid IL or missing references)97			//IL_01da: Unknown result type (might be due to invalid IL or missing references)98			//IL_01de: Unknown result type (might be due to invalid IL or missing references)99			//IL_01e3: Unknown result type (might be due to invalid IL or missing references)100			//IL_0250: Unknown result type (might be due to invalid IL or missing references)101			//IL_025b: Unknown result type (might be due to invalid IL or missing references)102			//IL_0260: Unknown result type (might be due to invalid IL or missing references)103			//IL_0264: Unknown result type (might be due to invalid IL or missing references)104			//IL_0269: Unknown result type (might be due to invalid IL or missing references)105			//IL_02d8: Unknown result type (might be due to invalid IL or missing references)106			//IL_02e7: Unknown result type (might be due to invalid IL or missing references)107			//IL_02ec: Unknown result type (might be due to invalid IL or missing references)108			//IL_02f0: Unknown result type (might be due to invalid IL or missing references)109			//IL_02f5: Unknown result type (might be due to invalid IL or missing references)110			//IL_0360: Unknown result type (might be due to invalid IL or missing references)111			//IL_036f: Unknown result type (might be due to invalid IL or missing references)112			//IL_0374: Unknown result type (might be due to invalid IL or missing references)113			//IL_0378: Unknown result type (might be due to invalid IL or missing references)114			//IL_037d: Unknown result type (might be due to invalid IL or missing references)115			//IL_03ff: Unknown result type (might be due to invalid IL or missing references)116			//IL_040e: Unknown result type (might be due to invalid IL or missing references)117			//IL_0413: Unknown result type (might be due to invalid IL or missing references)118			//IL_0417: Unknown result type (might be due to invalid IL or missing references)119			//IL_041c: Unknown result type (might be due to invalid IL or missing references)120			//IL_047d: Unknown result type (might be due to invalid IL or missing references)121			//IL_0488: Unknown result type (might be due to invalid IL or missing references)122			//IL_048d: Unknown result type (might be due to invalid IL or missing references)123			//IL_0491: Unknown result type (might be due to invalid IL or missing references)124			//IL_0496: Unknown result type (might be due to invalid IL or missing references)125			//IL_04f0: Unknown result type (might be due to invalid IL or missing references)126			//IL_04fb: Unknown result type (might be due to invalid IL or missing references)127			//IL_0500: Unknown result type (might be due to invalid IL or missing references)128			//IL_0504: Unknown result type (might be due to invalid IL or missing references)129			//IL_0509: Unknown result type (might be due to invalid IL or missing references)130			//IL_0139: Unknown result type (might be due to invalid IL or missing references)131			//IL_013b: Unknown result type (might be due to invalid IL or missing references)132			//IL_01f8: Unknown result type (might be due to invalid IL or missing references)133			//IL_01fa: Unknown result type (might be due to invalid IL or missing references)134			//IL_027e: Unknown result type (might be due to invalid IL or missing references)135			//IL_0280: Unknown result type (might be due to invalid IL or missing references)136			//IL_030a: Unknown result type (might be due to invalid IL or missing references)137			//IL_030c: Unknown result type (might be due to invalid IL or missing references)138			//IL_0392: Unknown result type (might be due to invalid IL or missing references)139			//IL_0394: Unknown result type (might be due to invalid IL or missing references)140			//IL_0431: Unknown result type (might be due to invalid IL or missing references)141			//IL_0433: Unknown result type (might be due to invalid IL or missing references)142			//IL_04ab: Unknown result type (might be due to invalid IL or missing references)143			//IL_04ad: Unknown result type (might be due to invalid IL or missing references)144			//IL_051e: Unknown result type (might be due to invalid IL or missing references)145			//IL_0520: Unknown result type (might be due to invalid IL or missing references)146			int num = _003C_003E1__state;147			IEntity result4;148			try149			{150				ConfiguredValueTaskAwaiter<string> val;151				if (num != 0)152				{153					if ((uint)(num - 1) <= 7u)154					{155						goto IL_00d1;156					}157					val = entity.GetValueAsync<string>("UID_RPSReport", ct).ConfigureAwait(false).GetAwaiter();158					if (!val.IsCompleted)159					{160						num = (_003C_003E1__state = 0);161						_003C_003Eu__1 = val;162						_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<string>, _003C_CreateParameterSet_003Ed__1>(ref val, ref this);163						return;164					}165				}166				else167				{168					val = _003C_003Eu__1;169					_003C_003Eu__1 = default(ConfiguredValueTaskAwaiter<string>);170					num = (_003C_003E1__state = -1);171				}172				string result = val.GetResult();173				_003CuidRPSReport_003E5__2 = result;174				if (string.IsNullOrEmpty(_003CuidRPSReport_003E5__2))175				{176					throw new ViException(2122034, ExceptionRelevance.EndUser, "UID_RPSReport");177				}178				_003Cuow_003E5__3 = session.StartUnitOfWork();179				goto IL_00d1;180				IL_00d1:181				try182				{183					ConfiguredTaskAwaiter<DbObjectKey> val6;184					ConfiguredTaskAwaiter<string> val5;185					ConfiguredTaskAwaiter<IEntity> val4;186					ConfiguredValueTaskAwaiter<ApplyResult> val3;187					ConfiguredTaskAwaiter val2;188					DbObjectKey result2;189					DbObjectKey objectKey;190					string whereclause;191					ConfiguredTaskAwaitable val7;192					IEntity obj;193					LanguageManager instance;194					object display;195					IEntity result3;196					switch (num)197					{198					default:199						val6 = DbObjectKey.CreateAsync(session.MetaData(), entity, ct).ConfigureAwait(false).GetAwaiter();200						if (!val6.IsCompleted)201						{202							num = (_003C_003E1__state = 1);203							_003C_003Eu__2 = val6;204							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<DbObjectKey>, _003C_CreateParameterSet_003Ed__1>(ref val6, ref this);205							return;206						}207						goto IL_0170;208					case 1:209						val6 = _003C_003Eu__2;210						_003C_003Eu__2 = default(ConfiguredTaskAwaiter<DbObjectKey>);211						num = (_003C_003E1__state = -1);212						goto IL_0170;213					case 2:214						val5 = _003C_003Eu__3;215						_003C_003Eu__3 = default(ConfiguredTaskAwaiter<string>);216						num = (_003C_003E1__state = -1);217						goto IL_022f;218					case 3:219						val4 = _003C_003Eu__4;220						_003C_003Eu__4 = default(ConfiguredTaskAwaiter<IEntity>);221						num = (_003C_003E1__state = -1);222						goto IL_02b5;223					case 4:224						val3 = _003C_003Eu__5;225						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);226						num = (_003C_003E1__state = -1);227						goto IL_0341;228					case 5:229						val3 = _003C_003Eu__5;230						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);231						num = (_003C_003E1__state = -1);232						goto IL_03c9;233					case 6:234						val3 = _003C_003Eu__5;235						_003C_003Eu__5 = default(ConfiguredValueTaskAwaiter<ApplyResult>);236						num = (_003C_003E1__state = -1);237						goto IL_0468;238					case 7:239						val2 = _003C_003Eu__6;240						_003C_003Eu__6 = default(ConfiguredTaskAwaiter);241						num = (_003C_003E1__state = -1);242						goto IL_04e2;243					case 8:244						{245							val2 = _003C_003Eu__6;246							_003C_003Eu__6 = default(ConfiguredTaskAwaiter);247							num = (_003C_003E1__state = -1);248							break;249						}250						IL_0341:251						val3.GetResult();252						val3 = _003CdbReportSet_003E5__6.PutValueAsync("ObjectKeyUsedBy", _003CdbokSubscription_003E5__4.ToXmlString(), ct).ConfigureAwait(false).GetAwaiter();253						if (!val3.IsCompleted)254						{255							num = (_003C_003E1__state = 5);256							_003C_003Eu__5 = val3;257							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreateParameterSet_003Ed__1>(ref val3, ref this);258							return;259						}260						goto IL_03c9;261						IL_0170:262						result2 = val6.GetResult();263						_003CdbokSubscription_003E5__4 = result2;264						objectKey = DbObjectKey.GetObjectKey("RPSReport", _003CuidRPSReport_003E5__2);265						whereclause = session.SqlFormatter().UidComparison("ObjectKeyUsedBy", objectKey.ToXmlString());266						val5 = session.Source().GetSingleValueAsync<string>("DialogParameterSet", "UID_DialogParameterSet", whereclause, ct).ConfigureAwait(false)267							.GetAwaiter();268						if (!val5.IsCompleted)269						{270							num = (_003C_003E1__state = 2);271							_003C_003Eu__3 = val5;272							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<string>, _003C_CreateParameterSet_003Ed__1>(ref val5, ref this);273							return;274						}275						goto IL_022f;276						IL_0468:277						val3.GetResult();278						val7 = _003Cuow_003E5__3.PutAsync(_003CdbReportSet_003E5__6, ct).ConfigureAwait(false);279						val2 = ((ConfiguredTaskAwaitable)(ref val7)).GetAwaiter();280						if (!((ConfiguredTaskAwaiter)(ref val2)).IsCompleted)281						{282							num = (_003C_003E1__state = 7);283							_003C_003Eu__6 = val2;284							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_CreateParameterSet_003Ed__1>(ref val2, ref this);285							return;286						}287						goto IL_04e2;288						IL_022f:289						result = val5.GetResult();290						_003CuidDialogParameterSet_003E5__5 = result;291						val4 = session.Source().CreateNewAsync("DialogParameterSet", EntityCreationType.DelayedLogic, ct).ConfigureAwait(false)292							.GetAwaiter();293						if (!val4.IsCompleted)294						{295							num = (_003C_003E1__state = 3);296							_003C_003Eu__4 = val4;297							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003C_CreateParameterSet_003Ed__1>(ref val4, ref this);298							return;299						}300						goto IL_02b5;301						IL_03c9:302						val3.GetResult();303						obj = _003CdbReportSet_003E5__6;304						instance = LanguageManager.Instance;305						display = entity.Display;306						val3 = obj.PutValueAsync("DisplayName", instance.FormatString("RPSSubscription_NewParameterSet", new System.ReadOnlySpan<object>(ref display)), ct).ConfigureAwait(false).GetAwaiter();307						if (!val3.IsCompleted)308						{309							num = (_003C_003E1__state = 6);310							_003C_003Eu__5 = val3;311							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreateParameterSet_003Ed__1>(ref val3, ref this);312							return;313						}314						goto IL_0468;315						IL_02b5:316						result3 = val4.GetResult();317						_003CdbReportSet_003E5__6 = result3;318						val3 = _003CdbReportSet_003E5__6.PutValueAsync("UID_DialogParameterSetParent", _003CuidDialogParameterSet_003E5__5, ct).ConfigureAwait(false).GetAwaiter();319						if (!val3.IsCompleted)320						{321							num = (_003C_003E1__state = 4);322							_003C_003Eu__5 = val3;323							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003C_CreateParameterSet_003Ed__1>(ref val3, ref this);324							return;325						}326						goto IL_0341;327						IL_04e2:328						((ConfiguredTaskAwaiter)(ref val2)).GetResult();329						val7 = _003Cuow_003E5__3.CommitAsync(ct).ConfigureAwait(false);330						val2 = ((ConfiguredTaskAwaitable)(ref val7)).GetAwaiter();331						if (!((ConfiguredTaskAwaiter)(ref val2)).IsCompleted)332						{333							num = (_003C_003E1__state = 8);334							_003C_003Eu__6 = val2;335							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_CreateParameterSet_003Ed__1>(ref val2, ref this);336							return;337						}338						break;339					}340					((ConfiguredTaskAwaiter)(ref val2)).GetResult();341					result4 = _003CdbReportSet_003E5__6;342				}343				finally344				{345					if (num < 0 && _003Cuow_003E5__3 != null)346					{347						((System.IDisposable)_003Cuow_003E5__3).Dispose();348					}349				}350			}351			catch (System.Exception exception)352			{353				_003C_003E1__state = -2;354				_003CuidRPSReport_003E5__2 = null;355				_003C_003Et__builder.SetException(exception);356				return;357			}358			_003C_003E1__state = -2;359			_003CuidRPSReport_003E5__2 = null;360			_003C_003Et__builder.SetResult(result4);361		}362363		[DebuggerHidden]364		private void SetStateMachine(IAsyncStateMachine stateMachine)365		{366			_003C_003Et__builder.SetStateMachine(stateMachine);367		}368	}369370	public RPSSubscription(EntityLogicConstructionParameters p)371	{372		System.Collections.Generic.IEnumerator<IMetaColumn> enumerator = ((System.Collections.Generic.IEnumerable<IMetaColumn>)p.Table.Columns).GetEnumerator();373		try374		{375			while (((System.Collections.IEnumerator)enumerator).MoveNext())376			{377				IMetaColumn current = enumerator.Current;378				if (!current.IsPK && !current.IsSpecial && !(current.Columnname == "IsRejected"))379				{380					CanEdit(current.Columnname).From("IsRejected", "[IsLoaded]").As<bool, bool>((Func<bool, bool, bool>)((bool isRejected, bool isLoaded) => !isRejected || !isLoaded));381				}382			}383		}384		finally385		{386			((System.IDisposable)enumerator)?.Dispose();387		}388		RegisterFunction("CreateParameterSet").As<IEntity>(_CreateParameterSet).Description("Method_RPSSubscription_CreateParameterSet").Enabled()389			.From("[IsLoaded]")390			.As<bool>((Func<bool, bool>)((bool isLoaded) => isLoaded));391	}392393	[AsyncStateMachine(typeof(_003C_CreateParameterSet_003Ed__1))]394	private async System.Threading.Tasks.Task<IEntity> _CreateParameterSet(ISession session, IEntity entity, CancellationToken ct)395	{396		//IL_0002: Unknown result type (might be due to invalid IL or missing references)397		//IL_0007: Unknown result type (might be due to invalid IL or missing references)398		//IL_001e: Unknown result type (might be due to invalid IL or missing references)399		//IL_001f: Unknown result type (might be due to invalid IL or missing references)400		string uidRPSReport = await entity.GetValueAsync<string>("UID_RPSReport", ct).ConfigureAwait(false);401		if (string.IsNullOrEmpty(uidRPSReport))402		{403			throw new ViException(2122034, ExceptionRelevance.EndUser, "UID_RPSReport");404		}405		using IUnitOfWork uow = session.StartUnitOfWork();406		DbObjectKey dbokSubscription = await DbObjectKey.CreateAsync(session.MetaData(), entity, ct).ConfigureAwait(false);407		DbObjectKey objectKey = DbObjectKey.GetObjectKey("RPSReport", uidRPSReport);408		string whereclause = session.SqlFormatter().UidComparison("ObjectKeyUsedBy", objectKey.ToXmlString());409		string uidDialogParameterSet = await session.Source().GetSingleValueAsync<string>("DialogParameterSet", "UID_DialogParameterSet", whereclause, ct).ConfigureAwait(false);410		IEntity dbReportSet = await session.Source().CreateNewAsync("DialogParameterSet", EntityCreationType.DelayedLogic, ct).ConfigureAwait(false);411		await dbReportSet.PutValueAsync("UID_DialogParameterSetParent", uidDialogParameterSet, ct).ConfigureAwait(false);412		await dbReportSet.PutValueAsync("ObjectKeyUsedBy", dbokSubscription.ToXmlString(), ct).ConfigureAwait(false);413		LanguageManager instance = LanguageManager.Instance;414		object display = entity.Display;415		await dbReportSet.PutValueAsync("DisplayName", instance.FormatString("RPSSubscription_NewParameterSet", new System.ReadOnlySpan<object>(ref display)), ct).ConfigureAwait(false);416		await uow.PutAsync(dbReportSet, ct).ConfigureAwait(false);417		await uow.CommitAsync(ct).ConfigureAwait(false);418		return dbReportSet;419	}420}421