예제 #1
0
 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);
 }
예제 #2
0
        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;
        }
예제 #3
0
        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;
        }
예제 #4
0
 /// <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);
 }