/// <summary> /// Returns the current options as a <see cref="Dictionary{TKey, TValue}"/>. /// </summary> /// <returns>The current options as a <see cref="Dictionary{TKey, TValue}"/>.</returns> internal IDictionary <string, object> ToDictionary() { IHasCapabilitiesDictionary desired = this.ToCapabilities() as IHasCapabilitiesDictionary; if (desired == null) { return(null); } return(desired.CapabilitiesDictionary); }
/// <summary> /// Gets the capabilities as a dictionary. /// </summary> /// <param name="capabilitiesToConvert">The dictionary to return.</param> /// <returns>A Dictionary consisting of the capabilities requested.</returns> /// <remarks>This method is only transitional. Do not rely on it. It will be removed /// once browser driver capability formats stabilize.</remarks> protected virtual Dictionary <string, object> GetCapabilitiesDictionary(ICapabilities capabilitiesToConvert) { Dictionary <string, object> capabilitiesDictionary = new Dictionary <string, object>(); IHasCapabilitiesDictionary capabilitiesObject = capabilitiesToConvert as IHasCapabilitiesDictionary; foreach (KeyValuePair <string, object> entry in capabilitiesObject.CapabilitiesDictionary) { if (CapabilityType.IsSpecCompliantCapabilityName(entry.Key)) { capabilitiesDictionary.Add(entry.Key, entry.Value); } } return(capabilitiesDictionary); }
/// <summary> /// Gets the capabilities as a dictionary supporting legacy drivers. /// </summary> /// <param name="legacyCapabilities">The dictionary to return.</param> /// <returns>A Dictionary consisting of the capabilities requested.</returns> /// <remarks>This method is only transitional. Do not rely on it. It will be removed /// once browser driver capability formats stabilize.</remarks> protected override Dictionary <string, object> GetLegacyCapabilitiesDictionary(ICapabilities legacyCapabilities) { // Flatten the dictionary, if required to support old versions of the IE driver. Dictionary <string, object> capabilitiesDictionary = new Dictionary <string, object>(); IHasCapabilitiesDictionary capabilitiesObject = legacyCapabilities as IHasCapabilitiesDictionary; foreach (KeyValuePair <string, object> entry in capabilitiesObject.CapabilitiesDictionary) { if (entry.Key == InternetExplorerOptions.Capability) { Dictionary <string, object> internetExplorerOptions = entry.Value as Dictionary <string, object>; foreach (KeyValuePair <string, object> option in internetExplorerOptions) { capabilitiesDictionary.Add(option.Key, option.Value); } } else { capabilitiesDictionary.Add(entry.Key, entry.Value); } } return(capabilitiesDictionary); }
/// <summary> /// Returns the current options as a <see cref="Dictionary{TKey, TValue}"/>. /// </summary> /// <returns>The current options as a <see cref="Dictionary{TKey, TValue}"/>.</returns> internal Dictionary <string, object> ToDictionary() { IHasCapabilitiesDictionary desired = this.ToCapabilities() as IHasCapabilitiesDictionary; return(desired.CapabilitiesDictionary); }