internal bool TryParse(ResolutionResult resolutionResult, AddinResolution addin, out bool enabled, out AddinHeaderResolution result) { result = new AddinHeaderResolution { AddinId = new AddinId() }; try { enabled = Enabled == null ? true : bool.Parse(Enabled); result.AddinId.Guid = new Guid(Guid); result.AddinCategory = AddinCategory == null ? Core.AddinCategory.User : (AddinCategory)Enum.Parse(typeof(AddinCategory), AddinCategory); result.Version = Version == null ? _defaultVersion : new Version(Version); result.CompatVersion = CompatVersion == null ? _defaultVersion : new Version(CompatVersion); } catch (Exception e) { enabled = false; resolutionResult.AddError(string.Format("An exception is thrown while parsing the addin [{0}]! Error: [{1}]", Name, e.Message)); return(false); //throw new AccessViolationException(e.Message); } result.Name = Name; result.Description = Description; //result.Url = Url; result.InnerProperties = Properties; return(true); }
static AddinHeaderRecord ToPersistentObject(AddinHeaderResolution item) { if (item.AddinId.Uid == UidStorage.InvalidAddinUid) { item.AddinId.Uid = UidStorage.GetNextAddinUid(); } return(new AddinHeaderRecord { AddinId = item.AddinId, AddinCategory = item.AddinCategory, CompatVersion = item.CompatVersion, Version = item.Version, //Enabled = item.Enabled, Name = item.Name, //Url = item.Url, Description = item.Description, InnerProperties = item.InnerProperties }); }
internal bool TryParse(IMessageDialog dialog, AddinResolution addin, out AddinHeaderResolution result) { result = new AddinHeaderResolution { AddinId = new AddinId() }; try { result.AddinId.Guid = new Guid(Guid); result.AddinCategory = AddinCategory == null ? Core.AddinCategory.User : (AddinCategory)Enum.Parse(typeof(AddinCategory), AddinCategory); result.Enabled = Enabled == null ? true : bool.Parse(Enabled); result.Version = Version == null ? _defaultVersion : new Version(Version); result.CompatVersion = CompatVersion == null ? _defaultVersion : new Version(CompatVersion); result.FriendName = FriendName; result.Url = Url; result.Properties = Properties; result.Description = Description; return(true); } catch (Exception e) { dialog.AddError(e.Message); return(false); } }