private static void Main(string[] args) { ServiceHost host = new ServiceHost(typeof(SecondaryServer)); NetTcpBinding binding = new NetTcpBinding(); host.AddServiceEndpoint(typeof(ISecondaryServer), binding, new Uri("net.tcp://localhost:8888/ISecondaryServer")); //binding.Security.Mode = SecurityMode.Transport; //binding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Windows; //binding.Security.Transport.ProtectionLevel = System.Net.Security.ProtectionLevel.EncryptAndSign; //host2 sluzi za replikaciju EndpointAddress address2 = new EndpointAddress(new Uri("net.tcp://localhost:4000/Replication")); NetTcpBinding binding2 = new NetTcpBinding(); ChannelFactory <IReplication> factory = new ChannelFactory <IReplication>(binding2, address2); IReplication kanal = factory.CreateChannel(); ServiceHost host2 = new ServiceHost(typeof(Replication)); host2.Open(); host.Open(); Console.WriteLine("Secondary Server is started."); Console.ReadLine(); host.Close(); }
void CreateAndRunReplication(uint replicationId) { // setup simulation run IReplication r = _replicationFactory.Create( new DataGatherer(replicationId), new EventQueueFactory( _randomFactory.Create(), _stationCount, _highwayLength, _channels, _reserved) ); // run simulation and measure how long it takes long before = DateTime.Now.Ticks; r.Run(); long after = DateTime.Now.Ticks; // Collect and print required data _totalCollectedData += r.ReplicationData; _report(r.ReplicationData); Debug.WriteLine( string.Format("took {0}", new TimeSpan(after - before))); }
static void Main(string[] args) { while (true) { ChannelFactory <IReplication> cfIzvor = new ChannelFactory <IReplication>("Izvor"); ChannelFactory <IReplication> cfOdrediste = new ChannelFactory <IReplication>("Odrediste"); IReplication kIzvor = cfIzvor.CreateChannel(); IReplication kOdrediste = cfOdrediste.CreateChannel(); List <string> ret = kIzvor.PreuzmiBazu(); kOdrediste.PosaljiBazu(ret); Thread.Sleep(3000); } }
public StateDataPacketHandler(IMutablePacket packet, IReplication worldDataReplication) { _packet = packet; _worldDataReplication = worldDataReplication; }
public void SetUp() { _customCastObject = new CustomCastObjectMock(); _dataMock = new DataMock(); _replicationMock = new ReplicationMock(_customCastObject, _dataMock); }
public UpdateStats(IReplication r, bool partial = true) : base(PacketCmd.PKT_S2C_CHAR_STATS) { Write(Environment.TickCount); // syncID Write((byte)1); // updating 1 unit var values = r.Values; uint masterMask = 0; for (var i = 0; i < 6; i++) { for (var j = 0; j < 32; j++) { var rep = values[i, j]; if (rep == null || !rep.Changed && partial) { continue; } masterMask |= 1u << i; break; } } Write((byte)masterMask); Write(r.NetId); for (var i = 0; i < 6; i++) { uint fieldMask = 0; var stream = new MemoryStream(); var writer = new BinaryWriter(stream); for (var j = 0; j < 32; j++) { var rep = values[i, j]; if (rep == null || !rep.Changed && partial) { continue; } fieldMask |= 1u << j; if (rep.IsFloat) { var source = BitConverter.GetBytes(rep.Value); if (source[0] >= 0xFE) { writer.Write((byte)0xFE); } writer.Write(source); } else { var num = rep.Value; while (num >= 0x80) { writer.Write((byte)(num | 0x80)); num >>= 7; } writer.Write((byte)num); } } var data = stream.ToArray(); if (data.Length > 0) { Write(fieldMask); Write((byte)data.Length); Write(data); } } }