Back to OIM Explorer

ATT.CompositionApi.Server.PlugIn/ATT.CompositionApi.Api/ATT_Policy_Start.cs

Decompiler Source FileATT.CompositionApi.Server.PlugIn.ATT_Policy_StartDecompiled Source

1 extracted method/event/call references in ATT_Policy_Start.

Source: F:\Claude\.tmp\oim-decompiled-full\0029_One_Identity_Manager_ATT.CompositionApi.Server.PlugIn.dll\ATT.CompositionApi.Api\ATT_Policy_Start.cs

Source size: 12.584 characters

Interpretation

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

Relations

  • CallFunctionAsync: CreateAttestations at line 197

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.

references DB/Dialog objects

Summary: classes ATT_Policy_Start, PolicyStartInput, _003C_003Ec__DisplayClass0_0; methods MoveNext, SetStateMachine, _003CBuild_003Eb__0, Build; references AttestationPolicy; markers references DB/Dialog objects

Classes

ATT_Policy_Start PolicyStartInput _003C_003Ec__DisplayClass0_0

DB/Dialog object references

OIM key/entity markers

ObjectKeys

API/entity calls

Source StartUnitOfWork

Registrations / handlers

None extracted.

Complete Source

C#273 lines
1using System;2using System.Diagnostics;3using System.Runtime.CompilerServices;4using System.Runtime.InteropServices;5using System.Threading;6using System.Threading.Tasks;7using ATT.CompositionApi.Cache;8using QBM.CompositionApi.Definition;9using QBM.CompositionApi.Handling;10using QER.CompositionApi.Portal;11using VI.DB;12using VI.DB.Entities;1314namespace ATT.CompositionApi.Api;1516public class ATT_Policy_Start : IApiProviderFor<PortalApiProject>, IApiProvider17{18	public class PolicyStartInput19	{20		[field: CompilerGenerated]21		public string[] ObjectKeys22		{23			[CompilerGenerated]24			get;25			[CompilerGenerated]26			set;27		}28	}2930	[CompilerGenerated]31	private sealed class _003C_003Ec__DisplayClass0_032	{33		[StructLayout((LayoutKind)3)]34		private struct _003C_003CBuild_003Eb__0_003Ed : IAsyncStateMachine35		{36			public int _003C_003E1__state;3738			public AsyncTaskMethodBuilder _003C_003Et__builder;3940			public IRequest request;4142			public CancellationToken ct;4344			public PolicyStartInput input;4546			public _003C_003Ec__DisplayClass0_0 _003C_003E4__this;4748			private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__1;4950			private IUnitOfWork _003Cu_003E5__2;5152			private ConfiguredTaskAwaiter _003C_003Eu__2;5354			private ConfiguredValueTaskAwaiter<object> _003C_003Eu__3;5556			private void MoveNext()57			{58				//IL_009a: Unknown result type (might be due to invalid IL or missing references)59				//IL_009f: Unknown result type (might be due to invalid IL or missing references)60				//IL_00a7: Unknown result type (might be due to invalid IL or missing references)61				//IL_025e: Unknown result type (might be due to invalid IL or missing references)62				//IL_0263: Unknown result type (might be due to invalid IL or missing references)63				//IL_026b: 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_005c: Unknown result type (might be due to invalid IL or missing references)66				//IL_0061: Unknown result type (might be due to invalid IL or missing references)67				//IL_0065: Unknown result type (might be due to invalid IL or missing references)68				//IL_006a: Unknown result type (might be due to invalid IL or missing references)69				//IL_007f: Unknown result type (might be due to invalid IL or missing references)70				//IL_0081: Unknown result type (might be due to invalid IL or missing references)71				//IL_0153: Unknown result type (might be due to invalid IL or missing references)72				//IL_0158: Unknown result type (might be due to invalid IL or missing references)73				//IL_0160: Unknown result type (might be due to invalid IL or missing references)74				//IL_0214: Unknown result type (might be due to invalid IL or missing references)75				//IL_0223: Unknown result type (might be due to invalid IL or missing references)76				//IL_0228: Unknown result type (might be due to invalid IL or missing references)77				//IL_022c: Unknown result type (might be due to invalid IL or missing references)78				//IL_0231: Unknown result type (might be due to invalid IL or missing references)79				//IL_017d: Unknown result type (might be due to invalid IL or missing references)80				//IL_0188: Unknown result type (might be due to invalid IL or missing references)81				//IL_018d: Unknown result type (might be due to invalid IL or missing references)82				//IL_0191: Unknown result type (might be due to invalid IL or missing references)83				//IL_0196: Unknown result type (might be due to invalid IL or missing references)84				//IL_01c6: Unknown result type (might be due to invalid IL or missing references)85				//IL_01cb: Unknown result type (might be due to invalid IL or missing references)86				//IL_01d3: Unknown result type (might be due to invalid IL or missing references)87				//IL_010a: Unknown result type (might be due to invalid IL or missing references)88				//IL_0115: Unknown result type (might be due to invalid IL or missing references)89				//IL_011a: Unknown result type (might be due to invalid IL or missing references)90				//IL_011e: Unknown result type (might be due to invalid IL or missing references)91				//IL_0123: Unknown result type (might be due to invalid IL or missing references)92				//IL_0246: Unknown result type (might be due to invalid IL or missing references)93				//IL_0248: Unknown result type (might be due to invalid IL or missing references)94				//IL_01ab: Unknown result type (might be due to invalid IL or missing references)95				//IL_01ad: Unknown result type (might be due to invalid IL or missing references)96				//IL_0138: Unknown result type (might be due to invalid IL or missing references)97				//IL_013a: Unknown result type (might be due to invalid IL or missing references)98				int num = _003C_003E1__state;99				_003C_003Ec__DisplayClass0_0 _003C_003Ec__DisplayClass0_ = _003C_003E4__this;100				try101				{102					ConfiguredTaskAwaiter<IEntity> val2;103					IEntity result = default(IEntity);104					ConfiguredValueTaskAwaiter<object> val;105					string[] array;106					switch (num)107					{108					default:109						val2 = request.Session.Source().GetAsync("AttestationPolicy", request.Parameters.Get<string>("uidpolicy"), EntityLoadType.Interactive, ct).ConfigureAwait(false)110							.GetAwaiter();111						if (!val2.IsCompleted)112						{113							num = (_003C_003E1__state = 0);114							_003C_003Eu__1 = val2;115							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003C_003CBuild_003Eb__0_003Ed>(ref val2, ref this);116							return;117						}118						goto IL_00b6;119					case 0:120						val2 = _003C_003Eu__1;121						_003C_003Eu__1 = default(ConfiguredTaskAwaiter<IEntity>);122						num = (_003C_003E1__state = -1);123						goto IL_00b6;124					case 1:125					case 2:126						try127						{128							ConfiguredTaskAwaiter val3;129							ConfiguredTaskAwaitable val4;130							if (num != 1)131							{132								if (num == 2)133								{134									val3 = _003C_003Eu__2;135									_003C_003Eu__2 = default(ConfiguredTaskAwaiter);136									num = (_003C_003E1__state = -1);137									goto IL_01e2;138								}139								val4 = _003Cu_003E5__2.GenerateAsync(result, "CREATEATTESTATIONS", null, ct).ConfigureAwait(false);140								val3 = ((ConfiguredTaskAwaitable)(ref val4)).GetAwaiter();141								if (!((ConfiguredTaskAwaiter)(ref val3)).IsCompleted)142								{143									num = (_003C_003E1__state = 1);144									_003C_003Eu__2 = val3;145									((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_003CBuild_003Eb__0_003Ed>(ref val3, ref this);146									return;147								}148							}149							else150							{151								val3 = _003C_003Eu__2;152								_003C_003Eu__2 = default(ConfiguredTaskAwaiter);153								num = (_003C_003E1__state = -1);154							}155							((ConfiguredTaskAwaiter)(ref val3)).GetResult();156							val4 = _003Cu_003E5__2.CommitAsync(ct).ConfigureAwait(false);157							val3 = ((ConfiguredTaskAwaitable)(ref val4)).GetAwaiter();158							if (!((ConfiguredTaskAwaiter)(ref val3)).IsCompleted)159							{160								num = (_003C_003E1__state = 2);161								_003C_003Eu__2 = val3;162								((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003C_003CBuild_003Eb__0_003Ed>(ref val3, ref this);163								return;164							}165							goto IL_01e2;166							IL_01e2:167							((ConfiguredTaskAwaiter)(ref val3)).GetResult();168						}169						finally170						{171							if (num < 0 && _003Cu_003E5__2 != null)172							{173								((System.IDisposable)_003Cu_003E5__2).Dispose();174							}175						}176						_003Cu_003E5__2 = null;177						break;178					case 3:179						{180							val = _003C_003Eu__3;181							_003C_003Eu__3 = default(ConfiguredValueTaskAwaiter<object>);182							num = (_003C_003E1__state = -1);183							goto IL_027a;184						}185						IL_00b6:186						result = val2.GetResult();187						array = input.ObjectKeys;188						if (array != null && array.Length == 0)189						{190							array = null;191						}192						if (array == null)193						{194							_003Cu_003E5__2 = request.Session.StartUnitOfWork();195							goto case 1;196						}197						val = result.CallFunctionAsync("CreateAttestations", array, ct).ConfigureAwait(false).GetAwaiter();198						if (!val.IsCompleted)199						{200							num = (_003C_003E1__state = 3);201							_003C_003Eu__3 = val;202							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<object>, _003C_003CBuild_003Eb__0_003Ed>(ref val, ref this);203							return;204						}205						goto IL_027a;206						IL_027a:207						val.GetResult();208						break;209					}210					_003C_003Ec__DisplayClass0_.policyCache.FlushRunCache();211				}212				catch (System.Exception exception)213				{214					_003C_003E1__state = -2;215					((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);216					return;217				}218				_003C_003E1__state = -2;219				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();220			}221222			[DebuggerHidden]223			private void SetStateMachine(IAsyncStateMachine stateMachine)224			{225				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);226			}227		}228229		public IPolicyCache policyCache;230231		[AsyncStateMachine(typeof(_003C_003CBuild_003Eb__0_003Ed))]232		internal System.Threading.Tasks.Task _003CBuild_003Eb__0(PolicyStartInput input, IRequest request, CancellationToken ct)233		{234			//IL_0002: Unknown result type (might be due to invalid IL or missing references)235			//IL_0007: Unknown result type (might be due to invalid IL or missing references)236			//IL_0026: Unknown result type (might be due to invalid IL or missing references)237			//IL_0027: Unknown result type (might be due to invalid IL or missing references)238			_003C_003CBuild_003Eb__0_003Ed _003C_003CBuild_003Eb__0_003Ed = default(_003C_003CBuild_003Eb__0_003Ed);239			_003C_003CBuild_003Eb__0_003Ed._003C_003Et__builder = AsyncTaskMethodBuilder.Create();240			_003C_003CBuild_003Eb__0_003Ed._003C_003E4__this = this;241			_003C_003CBuild_003Eb__0_003Ed.input = input;242			_003C_003CBuild_003Eb__0_003Ed.request = request;243			_003C_003CBuild_003Eb__0_003Ed.ct = ct;244			_003C_003CBuild_003Eb__0_003Ed._003C_003E1__state = -1;245			((AsyncTaskMethodBuilder)(ref _003C_003CBuild_003Eb__0_003Ed._003C_003Et__builder)).Start<_003C_003CBuild_003Eb__0_003Ed>(ref _003C_003CBuild_003Eb__0_003Ed);246			return ((AsyncTaskMethodBuilder)(ref _003C_003CBuild_003Eb__0_003Ed._003C_003Et__builder)).Task;247		}248	}249250	public void Build(IApiBuilder builder)251	{252		_003C_003Ec__DisplayClass0_0 CS_0024_003C_003E8__locals2 = new _003C_003Ec__DisplayClass0_0();253		CS_0024_003C_003E8__locals2.policyCache = builder.Resolver.Resolve<IPolicyCache>();254		builder.AddMethod(Method.Define("attestation/policy/{uidpolicy}/run").WithParameter("uidpolicy", typeof(string), "Unique policy identifier", null, null, isInQuery: false).WithDescription("Creates attestation cases for the specified policy and objects")255			.Handle<PolicyStartInput>("POST", (Func<PolicyStartInput, IRequest, CancellationToken, System.Threading.Tasks.Task>)([AsyncStateMachine(typeof(_003C_003Ec__DisplayClass0_0._003C_003CBuild_003Eb__0_003Ed))] (PolicyStartInput input, IRequest request, CancellationToken ct) =>256			{257				//IL_0002: Unknown result type (might be due to invalid IL or missing references)258				//IL_0007: Unknown result type (might be due to invalid IL or missing references)259				//IL_0026: Unknown result type (might be due to invalid IL or missing references)260				//IL_0027: Unknown result type (might be due to invalid IL or missing references)261				_003C_003Ec__DisplayClass0_0._003C_003CBuild_003Eb__0_003Ed _003C_003CBuild_003Eb__0_003Ed = default(_003C_003Ec__DisplayClass0_0._003C_003CBuild_003Eb__0_003Ed);262				_003C_003CBuild_003Eb__0_003Ed._003C_003Et__builder = AsyncTaskMethodBuilder.Create();263				_003C_003CBuild_003Eb__0_003Ed._003C_003E4__this = CS_0024_003C_003E8__locals2;264				_003C_003CBuild_003Eb__0_003Ed.input = input;265				_003C_003CBuild_003Eb__0_003Ed.request = request;266				_003C_003CBuild_003Eb__0_003Ed.ct = ct;267				_003C_003CBuild_003Eb__0_003Ed._003C_003E1__state = -1;268				((AsyncTaskMethodBuilder)(ref _003C_003CBuild_003Eb__0_003Ed._003C_003Et__builder)).Start<_003C_003Ec__DisplayClass0_0._003C_003CBuild_003Eb__0_003Ed>(ref _003C_003CBuild_003Eb__0_003Ed);269				return ((AsyncTaskMethodBuilder)(ref _003C_003CBuild_003Eb__0_003Ed._003C_003Et__builder)).Task;270			})));271	}272}273