//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> Sets properties using the specified definition. </summary> /// /// <exception cref="ArgumentNullException"> /// Thrown when one or more required arguments are null. /// </exception> /// /// <param name="definition"> The definition to use. </param> /// <param name="onLog"> The log callback. </param> /// <param name="onSetProperty"> The set property callback. </param> /// <param name="onGetProperty"> The get property callback. </param> /// <param name="onError"> The error callback. </param> /// /// <returns> true if it succeeds, false if it fails. </returns> public static bool SetProperties(string definition, Action <string> onLog, Action <string, string> onSetProperty, Func <string, string> onGetProperty, Action <string> onError) { if ((onLog == null) || (onSetProperty == null) || (onGetProperty == null) || (onError == null)) { throw new ArgumentNullException("A required callback delegate was not supplied"); } onLog("Begin SetProperties"); // Check the required property has been set if (String.IsNullOrEmpty(definition)) { onError("InstallValidator: ERROR : SETPROPERTIESDEF not set. Inform the developers of the problem."); return(false); } // Log the properties onLog("LOG: SETPROPERTIESDEF : " + definition); var propertySetter = new PropertySetter.PropertySetter(); propertySetter.ErrorOccurred += (sender, args) => { onError(args.Message); }; if (!propertySetter.SetProperties(definition, onSetProperty, onGetProperty)) { onSetProperty("SETPROPERTIESRESULT", "FAIL"); } else { onSetProperty("SETPROPERTIESRESULT", "PASS"); } return(true); }
//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> Sets properties using the specified definition. </summary> /// /// <exception cref="ArgumentNullException"> /// Thrown when one or more required arguments are null. /// </exception> /// /// <param name="definition"> The definition to use. </param> /// <param name="onLog"> The log callback. </param> /// <param name="onSetProperty"> The set property callback. </param> /// <param name="onGetProperty"> The get property callback. </param> /// <param name="onError"> The error callback. </param> /// /// <returns> true if it succeeds, false if it fails. </returns> public static bool SetProperties(string definition, Action<string> onLog, Action<string, string> onSetProperty, Func<string, string> onGetProperty, Action<string> onError) { if ((onLog == null) || (onSetProperty == null) || (onGetProperty == null) || (onError == null)) { throw new ArgumentNullException("A required callback delegate was not supplied"); } onLog("Begin SetProperties"); // Check the required property has been set if (String.IsNullOrEmpty(definition)) { onError("InstallValidator: ERROR : SETPROPERTIESDEF not set. Inform the developers of the problem."); return false; } // Log the properties onLog("LOG: SETPROPERTIESDEF : " + definition); var propertySetter = new PropertySetter.PropertySetter(); propertySetter.ErrorOccurred += (sender, args) => { onError(args.Message); }; if (!propertySetter.SetProperties(definition, onSetProperty, onGetProperty)) { onSetProperty("SETPROPERTIESRESULT", "FAIL"); } else { onSetProperty("SETPROPERTIESRESULT", "PASS"); } return true; }