public override void ClassSetUp() { if (string.IsNullOrEmpty(PlayFabSettings.TitleId)) { PlayFabSettings.TitleId = "ABCD"; } realHttpPlugin = PluginManager.GetPlugin <IPlayFabPlugin>(PluginContract.PlayFab_Transport); mockHttpPlugin = new MockTransport(); PluginManager.SetPlugin(mockHttpPlugin, PluginContract.PlayFab_Transport); }
private void SetPluginInternal(IPlayFabPlugin plugin, PluginContract contract, string instanceName) { if (plugin == null) { throw new ArgumentNullException(nameof(plugin), "Plugin instance cannot be null"); } var key = new Tuple <PluginContract, string>(contract, instanceName); this.plugins[key] = plugin; }
private void SetPluginInternal(IPlayFabPlugin plugin, PluginContract contract, string instanceName) { if (plugin == null) { throw new ArgumentNullException("plugin", "Plugin instance cannot be null"); } var key = new PluginContractKey { _pluginContract = contract, _pluginName = instanceName }; this.plugins[key] = plugin; }
/// <summary> /// Sets a custom plugin. /// If a plugin with specified contract and optional instance name already exists, it will be replaced with specified instance. /// </summary> /// <param name="plugin">The plugin instance.</param> /// <param name="contract">The app contract of plugin.</param> /// <param name="instanceName">The optional plugin instance name. Instance names allow to have mulptiple plugins with the same contract.</param> public static void SetPlugin(IPlayFabPlugin plugin, PluginContract contract, string instanceName = "") { Instance.SetPluginInternal(plugin, contract, instanceName); }