public void Init(IceOptions options, IClusterClient orleansClient, IObserverClient observerClient) { try { var initData = new Ice.InitializationData(); //设置日志输出 if (options.Logger == null) { options.Logger = new FootStone.Core.NLogice(NLog.LogManager.GetLogger("Ice")); } initData.logger = options.Logger; initData.properties = Ice.Util.createProperties(); initData.properties.load(options.ConfigFile); communicator = Ice.Util.initialize(initData); var adapter = communicator.createObjectAdapter("SessionFactoryAdapter"); var properties = communicator.getProperties(); var id = Ice.Util.stringToIdentity(properties.getProperty("Identity")); var serverName = properties.getProperty("Ice.ProgramName"); adapter.add(new SessionFactoryI(serverName, initData.logger), id); //添加facet foreach (var facet in options.FacetTypes) { if (facet.type is IServantBase) { options.Logger.error($"Facet(${facet.type.Name}) must inherit IServantBase!!!"); continue; } object[] args = new object[] { orleansClient, observerClient }; var servant = (IServantBase)Activator.CreateInstance(facet.type, args); var intercpetor = new FSInterceptor((Ice.Object)servant, options.Logger); adapter.addFacet(intercpetor, id, facet.name); } adapter.activate(); options.Logger.print("Ice inited!"); } catch (Ice.Exception ex) { options.Logger.error("Ice init failed:" + ex.ToString()); } }
public ZonePocol(IClusterClient Client1, IObserverClient Client2) { this.OrleansClient = Client1; this.ObserverClient = Client2; }
public PlayerPocol(IClusterClient Client1, IObserverClient Client2) { OrleansClient = Client1; ObserverClient = Client2; }
public IceFrontHostedService(IOptions <IceOptions> options, IClusterClient client, IObserverClient client2) { logger.Info("IceFrontService Init!"); network.Init(options.Value, client, client2); }