public void Initialize(LocatorFlow locator) { locator.DevAuthToken = settingsProviders .Select(provider => provider.GetDevAuthToken()) .FilterOption() .FirstOrDefault() ?? string.Empty; }
protected virtual IConnectionHandlerBuilder GetConnectionHandlerBuilder() { IConnectionFlow connectionFlow; var connectionParams = CreateConnectionParameters(WorkerUtils.UnityClient); var workerId = CreateNewWorkerId(WorkerUtils.UnityClient); if (Application.isEditor) { connectionFlow = new ReceptionistFlow(workerId); } else { var initializer = new CommandLineConnectionFlowInitializer(); switch (initializer.GetConnectionService()) { case ConnectionService.Receptionist: connectionFlow = new ReceptionistFlow(workerId, initializer); break; case ConnectionService.Locator: connectionParams.Network.UseExternalIp = true; connectionFlow = new LocatorFlow(initializer); break; default: throw new ArgumentOutOfRangeException(); } } return(new SpatialOSConnectionHandlerBuilder() .SetConnectionFlow(connectionFlow) .SetConnectionParameters(connectionParams)); }
public void Initialize_alpha_locator_flow_correctly() { var initializer = new CommandLineConnectionFlowInitializer(GetBaseArgs()); var flow = new LocatorFlow(initializer); Assert.AreEqual(GetBaseArgs()[RuntimeConfigNames.LocatorHost], flow.LocatorHost); Assert.AreEqual(GetBaseArgs()[RuntimeConfigNames.LoginToken], flow.LoginToken); Assert.AreEqual(GetBaseArgs()[RuntimeConfigNames.PlayerIdentityToken], flow.PlayerIdentityToken); }
protected override IConnectionHandlerBuilder GetConnectionHandlerBuilder() { var connectionParams = new ConnectionParameters { DefaultComponentVtable = new ComponentVtable(), WorkerType = WorkerUtils.UnityClient }; var builder = new SpatialOSConnectionHandlerBuilder() .SetConnectionParameters(connectionParams); if (UseSessionFlow) { connectionParams.Network.UseExternalIp = true; builder.SetConnectionFlow(new ChosenDeploymentAlphaLocatorFlow(deployment, new SessionConnectionFlowInitializer(new CommandLineConnectionFlowInitializer()))); } else if (Application.isEditor) { builder.SetConnectionFlow(new ReceptionistFlow(CreateNewWorkerId(WorkerUtils.UnityClient))); } else { var initializer = new CommandLineConnectionFlowInitializer(); switch (initializer.GetConnectionService()) { case ConnectionService.Receptionist: var rec = new ReceptionistFlow(CreateNewWorkerId(WorkerUtils.UnityClient), initializer); connectionParams.Network.UseExternalIp = true; rec.ReceptionistHost = "192.168.20.238"; builder.SetConnectionFlow(rec); break; case ConnectionService.Locator: connectionParams.Network.UseExternalIp = true; var loc = new LocatorFlow(initializer); builder.SetConnectionFlow(loc); break; case ConnectionService.AlphaLocator: connectionParams.Network.UseExternalIp = true; builder.SetConnectionFlow(new AlphaLocatorFlow(initializer)); break; default: throw new ArgumentOutOfRangeException(); } } return(builder); }
public void Initialize_locator_sets_dev_auth_flow_correctly() { { var initializer = new CommandLineConnectionFlowInitializer(GetBaseArgs()); var flow = new LocatorFlow(initializer); Assert.IsFalse(flow.UseDevAuthFlow); } { var args = GetBaseArgs(); args.Remove(RuntimeConfigNames.PlayerIdentityToken); args.Remove(RuntimeConfigNames.LoginToken); var initializer = new CommandLineConnectionFlowInitializer(args); var flow = new LocatorFlow(initializer); Assert.IsTrue(flow.UseDevAuthFlow); } }