internal static void AddNoteProperty <T>(PSObject pso, string propertyName, ValueGetterDelegate <T> valueGetter) { T local = default(T); try { local = valueGetter(); } catch (Exception exception) { CommandProcessorBase.CheckForSevereException(exception); PSEtwLog.LogAnalyticWarning(PSEventId.Serializer_PropertyGetterFailed, PSOpcode.Exception, PSTask.Serialization, PSKeyword.Serializer | PSKeyword.UseAlwaysAnalytic, new object[] { propertyName, (valueGetter.Target == null) ? string.Empty : valueGetter.Target.GetType().FullName, exception.ToString(), (exception.InnerException == null) ? string.Empty : exception.InnerException.ToString() }); } try { pso.Properties.Add(new PSNoteProperty(propertyName, local)); } catch (ExtendedTypeSystemException) { object obj1 = pso.Properties[propertyName].Value; } }