From: <br...@us...> - 2008-08-25 14:13:34
|
Revision: 338 http://acmcontester.svn.sourceforge.net/acmcontester/?rev=338&view=rev Author: brus07 Date: 2008-08-25 14:13:29 +0000 (Mon, 25 Aug 2008) Log Message: ----------- Added SystemMessage into whole project. This was sending through all modules. Modified Paths: -------------- ACMServer/trunk/ACMServer/Library/Connector/Connector.csproj ACMServer/trunk/ACMServer/Library/Connector/Getter/IGetter.cs ACMServer/trunk/ACMServer/Library/Connector/Getter/WebGetter.cs ACMServer/trunk/ACMServer/Library/Connector/SocketClient.cs ACMServer/trunk/ACMServer/Library/Connector/SocketServer.cs ACMServer/trunk/ACMServer/Library/Connector/WebConnector.cs ACMServer/trunk/ACMServer/Library/LibraryExtention/LibraryExtention.csproj ACMServer/trunk/ACMServer/Mediator/Form1.cs ACMServer/trunk/ACMServer/Mediator/Library/MediatorKernel.cs ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/Plugin1/Class1.cs ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/Plugin1/Plugin1.csproj ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/SocketServerGatePlugin/SocketServerGate.cs ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/SocketServerGatePlugin/SocketServerGatePlugin.cs ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGate.cs ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGatePlugin.cs ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGatePlugin.csproj ACMServer/trunk/ACMServer/Plugins/PluginsFramework/BaseMediatorPlugin.cs ACMServer/trunk/ACMServer/Plugins/PluginsFramework/PluginsFramework.csproj ACMServer/trunk/ACMServer/Tester/Form1.cs ACMServer/trunk/ACMServer/Tester/Library/SocketClientGate.cs Added Paths: ----------- ACMServer/trunk/ACMServer/Library/LibraryExtention/SystemMessage.cs ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGetter.cs Removed Paths: ------------- ACMServer/trunk/ACMServer/Library/Connector/Getter/FileGetter.cs Modified: ACMServer/trunk/ACMServer/Library/Connector/Connector.csproj =================================================================== --- ACMServer/trunk/ACMServer/Library/Connector/Connector.csproj 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Library/Connector/Connector.csproj 2008-08-25 14:13:29 UTC (rev 338) @@ -38,7 +38,6 @@ <Reference Include="System.Xml" /> </ItemGroup> <ItemGroup> - <Compile Include="Getter\FileGetter.cs" /> <Compile Include="Getter\IGetter.cs" /> <Compile Include="Getter\WebGetter.cs" /> <Compile Include="SocketClient.cs" /> @@ -56,6 +55,10 @@ <Project>{30C0EFA3-36A8-4C6F-8FEC-28F771D4933F}</Project> <Name>Data</Name> </ProjectReference> + <ProjectReference Include="..\LibraryExtention\LibraryExtention.csproj"> + <Project>{A8135069-F8BA-4E5D-835F-3FF3F350AA5D}</Project> + <Name>LibraryExtention</Name> + </ProjectReference> </ItemGroup> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> <!-- To modify your build process, add your task inside one of the targets below and uncomment it. Deleted: ACMServer/trunk/ACMServer/Library/Connector/Getter/FileGetter.cs =================================================================== --- ACMServer/trunk/ACMServer/Library/Connector/Getter/FileGetter.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Library/Connector/Getter/FileGetter.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,41 +0,0 @@ -using System; - -namespace AcmContester.Library.Connector.Getter -{ - class FileGetter: IGetter - { - public object GetInfoFromSite() - { - try - { - string res = ""; - using (System.IO.StreamReader sr = new System.IO.StreamReader("a.txt")) - { - res = sr.ReadToEnd(); - } - if (res.Length == 0) - return null; - return res; - } - catch (Exception) - { - } - return null; - } - - public void Send(string message) - { - try - { - using (System.IO.StreamWriter sr = new System.IO.StreamWriter("b.txt", true)) - { - sr.WriteLine(DateTime.Now.ToLongTimeString() + ": " + message); - } - } - catch (Exception) - { - } - //TODO: - } - } -} Modified: ACMServer/trunk/ACMServer/Library/Connector/Getter/IGetter.cs =================================================================== --- ACMServer/trunk/ACMServer/Library/Connector/Getter/IGetter.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Library/Connector/Getter/IGetter.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,9 +1,10 @@ +using AcmContester.Library.LibraryExtention; namespace AcmContester.Library.Connector.Getter { - interface IGetter + public interface IWebGetter { - object GetInfoFromSite(); - void Send(string message); + SystemMessage GetInfoFromSite(); + void Send(SystemMessage message); } } Modified: ACMServer/trunk/ACMServer/Library/Connector/Getter/WebGetter.cs =================================================================== --- ACMServer/trunk/ACMServer/Library/Connector/Getter/WebGetter.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Library/Connector/Getter/WebGetter.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -5,10 +5,11 @@ using System.IO; using System.Text; using AcmContester.Library.LibraryExtention.Data; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Library.Connector.Getter { - class WebGetter: IGetter + class WebGetter: IWebGetter { //"http://127.0.0.1/d"; string fullPathToWebPages = ""; @@ -36,15 +37,17 @@ } } - public void Send(string message) + public void Send(SystemMessage message) { - SendX(message); + SendX(message.Message); } - public object GetInfoFromSite() + public SystemMessage GetInfoFromSite() { checkAddress(); - return GetInfoFromSiteX(); + object ob = GetInfoFromSiteX(); + SystemMessage sysMes = new SystemMessage(ob.ToString(), ""); + return sysMes; } void SendX(string message) Modified: ACMServer/trunk/ACMServer/Library/Connector/SocketClient.cs =================================================================== --- ACMServer/trunk/ACMServer/Library/Connector/SocketClient.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Library/Connector/SocketClient.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,5 +1,6 @@ using System; using JadBenAutho.EasySocket; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Library.Connector { @@ -7,7 +8,7 @@ { EasyClient client; - public delegate void DataArrivedDelegate(string s); + public delegate void DataArrivedDelegate(SystemMessage s); public event DataArrivedDelegate onDataArrived; string ip = "127.0.0.1"; @@ -39,14 +40,16 @@ client.Dispose(); client = null; } - public void Send(string message) + public void Send(SystemMessage message) { - client.SendData(message); + byte[] bytes = SystemMessage.Serialize(message); + client.SendData(bytes); } private void DataArrived(object Data) { - OnDataArrived(Data.ToString()); + SystemMessage mes = SystemMessage.Deserialize((byte[])Data); + OnDataArrived(mes); } public bool IsConnected() { @@ -55,7 +58,7 @@ return client.IsConnected; } - private void OnDataArrived(string message) + private void OnDataArrived(SystemMessage message) { if (onDataArrived != null) { Modified: ACMServer/trunk/ACMServer/Library/Connector/SocketServer.cs =================================================================== --- ACMServer/trunk/ACMServer/Library/Connector/SocketServer.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Library/Connector/SocketServer.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,6 +1,7 @@ using System; using JadBenAutho.EasySocket; using System.Collections.Generic; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Library.Connector { @@ -9,7 +10,7 @@ int port = 4120; EasyServer server; - public delegate void DataArrivedDelegate(string s); + public delegate void DataArrivedDelegate(SystemMessage s); public event DataArrivedDelegate onDataArrived; public SocketServer() @@ -34,8 +35,13 @@ } } - public void Send(string message) + private void ServerSend(SystemMessage mes, int TargetClientIndex) { + byte[] bytes = SystemMessage.Serialize(mes); + server.SendData(bytes, TargetClientIndex); + } + public void Send(SystemMessage message) + { List<int> freeTesters = GetFreeTesters(); if (freeTesters.Count != 0) { @@ -43,22 +49,23 @@ DataSender(message, freeTesters[random.Next() % freeTesters.Count]); } } - protected virtual void DataSender(string message, int clientIndex) + protected virtual void DataSender(SystemMessage message, int clientIndex) { - server.SendData(message, clientIndex); + ServerSend(message, clientIndex); } private void DataArrived(object Data, SocketStream DataSender) { - if (SystemMessage(Data.ToString()) == true) + SystemMessage sysMes = SystemMessage.Deserialize((byte[])Data); + if (SystemMessageX(sysMes) == true) return; - DataArriver(Data.ToString()); + DataArriver(sysMes); } - protected virtual void DataArriver(string message) + protected virtual void DataArriver(SystemMessage message) { OnDataArrived(message); } - private void OnDataArrived(string message) + private void OnDataArrived(SystemMessage message) { if (onDataArrived != null) { @@ -92,7 +99,8 @@ string message = "test"; message += " " + server.ClientsList[i].GetHashCode().ToString(); message += " " + curHashCode; - server.SendData(message, i); + SystemMessage mes = new SystemMessage(message, "system"); + ServerSend(mes, i); } @@ -137,15 +145,15 @@ /// </summary> /// <param name="message">\xCF\xEE\xE2\xB3\xE4\xEE\xEC\xEB\xE5\xED\xED\xFF</param> /// <returns>\xDF\xEA\xF9\xEE \xF6\xE5 \xF1\xEB\xF3\xE6\xE1\xEE\xE2\xE5 \xEF\xEE\xE2\xB3\xE4\xEE\xEC\xEB\xE5\xED\xED\xFF, \xF2\xEE\xE4\xB3 \xEF\xEE\xE2\xE5\xF0\xF2\xE0\xBA\xF2\xFC\xF1\xFF true \xEF\xEE \xB3\xED\xE0\xEA\xF8\xEE\xEC\xF3 false</returns> - private bool SystemMessage(string message) + private bool SystemMessageX(SystemMessage message) { char[] chars = new char[1]; chars[0] = ' '; - string[] mes = message.Split(chars); + string[] mes = message.Message.Split(chars); if (mes[0] == "busy" || mes[0] == "free") { lock(q) - q.Enqueue(message); + q.Enqueue(message.Message); return true; } return false; Modified: ACMServer/trunk/ACMServer/Library/Connector/WebConnector.cs =================================================================== --- ACMServer/trunk/ACMServer/Library/Connector/WebConnector.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Library/Connector/WebConnector.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,6 +1,7 @@ using System; using System.Timers; using AcmContester.Library.Connector.Getter; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Library.Connector { @@ -8,21 +9,34 @@ { Timer timer = new Timer(); - public delegate void DataArrivedDelegate(string s); + public delegate void DataArrivedDelegate(SystemMessage s); public event DataArrivedDelegate onDataArrived; public event EventHandler onChecking; public event EventHandler onChecked; - private IGetter getter = new WebGetter(); + private IWebGetter getter = new WebGetter(); - public WebConnector() + private WebConnector() { + Init(); + } + public WebConnector(IWebGetter getter): this() + { + //this.getter = getter; + } + private void Init() + { + InitTimer(); + } + private void InitTimer() + { timer.Interval = 10 * 1000; timer.Elapsed += new ElapsedEventHandler(OnTimedEvent); timer.Enabled = true; } + public string Address { //TODO: @@ -35,6 +49,7 @@ ((WebGetter)getter).FullPathToWebPages = value; } } + // Specify what you want to happen when the Elapsed event is // raised. @@ -42,12 +57,9 @@ { timer.Enabled = false; OnChecking(); - object ob = getter.GetInfoFromSite(); + SystemMessage message = getter.GetInfoFromSite(); OnChecked(); - if (ob != null) - { - DataArrived(ob); - } + DataArrived(message); timer.Enabled = true; } @@ -61,16 +73,16 @@ if (onChecked != null) onChecked(this, null); } - - private void DataArrived(object Data) + + private void DataArrived(SystemMessage Data) { if (onDataArrived != null) { - onDataArrived(Data.ToString()); + onDataArrived(Data); } } - public void Send(string message) + public void Send(SystemMessage message) { getter.Send(message); } Modified: ACMServer/trunk/ACMServer/Library/LibraryExtention/LibraryExtention.csproj =================================================================== --- ACMServer/trunk/ACMServer/Library/LibraryExtention/LibraryExtention.csproj 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Library/LibraryExtention/LibraryExtention.csproj 2008-08-25 14:13:29 UTC (rev 338) @@ -36,6 +36,7 @@ <Compile Include="Log.cs" /> <Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Reader.cs" /> + <Compile Include="SystemMessage.cs" /> <Compile Include="XML\XmlHelper.cs" /> <Compile Include="XML\XmlSerializer.cs" /> <Compile Include="XML\XmlValidator.cs" /> Added: ACMServer/trunk/ACMServer/Library/LibraryExtention/SystemMessage.cs =================================================================== --- ACMServer/trunk/ACMServer/Library/LibraryExtention/SystemMessage.cs (rev 0) +++ ACMServer/trunk/ACMServer/Library/LibraryExtention/SystemMessage.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -0,0 +1,55 @@ +using System; +using System.Runtime.Serialization; +using System.Runtime.Serialization.Formatters.Binary; +using System.IO; + +namespace AcmContester.Library.LibraryExtention +{ + [Serializable] + public class SystemMessage + { + string type; + + public string Type + { + get + { + return type; + } + } + + string message; + + public string Message + { + get + { + return message; + } + } + + public SystemMessage(string message, string type) + { + this.message = message; + this.type = type; + } + + public static byte[] Serialize(SystemMessage ob) + { + IFormatter formatter = new BinaryFormatter(); + MemoryStream mem = new MemoryStream(); + Stream stream = mem; + formatter.Serialize(stream, ob); + stream.Close(); + return mem.GetBuffer(); + } + public static SystemMessage Deserialize(byte[] buffer) + { + IFormatter formatter = new BinaryFormatter(); + Stream stream = new MemoryStream(buffer); + SystemMessage ob = (SystemMessage)formatter.Deserialize(stream); + stream.Close(); + return ob; + } + } +} Modified: ACMServer/trunk/ACMServer/Mediator/Form1.cs =================================================================== --- ACMServer/trunk/ACMServer/Mediator/Form1.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Mediator/Form1.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -8,6 +8,7 @@ using AcmContester.Library.Connector; using System.Net.Sockets; using System.IO; +using AcmContester.Library.LibraryExtention; namespace Mediator { @@ -79,7 +80,7 @@ private void Disconnnect() { if (kernel != null) - kernel.SendToAll("stop"); + kernel.SendToAll(new SystemMessage("stop", "action")); } Modified: ACMServer/trunk/ACMServer/Mediator/Library/MediatorKernel.cs =================================================================== --- ACMServer/trunk/ACMServer/Mediator/Library/MediatorKernel.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Mediator/Library/MediatorKernel.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -3,6 +3,7 @@ using AcmContester.Plugins.PluginsFramework; using System.Collections.Generic; using System.Windows.Forms; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Mediator.Library { @@ -68,7 +69,7 @@ temp(this, e); } - private void DataArrivedFromClientList(string message) + private void DataArrivedFromClientList(SystemMessage message) { if (testerSideList != null) { @@ -78,7 +79,7 @@ } } } - private void DataArrivedFromTesterList(string message) + private void DataArrivedFromTesterList(SystemMessage message) { if (clientSideList != null) { @@ -89,7 +90,7 @@ } } - public void SendToAll(string message) + public void SendToAll(SystemMessage message) { DataArrivedFromClientList(message); DataArrivedFromTesterList(message); Modified: ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/Plugin1/Class1.cs =================================================================== --- ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/Plugin1/Class1.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/Plugin1/Class1.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,13 +1,14 @@ using System; using AcmContester.Plugins.PluginsFramework; +using AcmContester.Library.LibraryExtention; namespace Plugin1 { public class Class1: BaseMediatorPlugin { - public override void Send(string message) + public override void Send(SystemMessage message) { - Console.WriteLine("Plugin1::Class1::Send(" + message + ");"); + Console.WriteLine("Plugin1::Class1::Send(" + message.Message + ");"); Console.WriteLine("The method or operation is not implemented."); //throw new Exception("The method or operation is not implemented."); } Modified: ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/Plugin1/Plugin1.csproj =================================================================== --- ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/Plugin1/Plugin1.csproj 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/Plugin1/Plugin1.csproj 2008-08-25 14:13:29 UTC (rev 338) @@ -36,6 +36,10 @@ <Compile Include="Properties\AssemblyInfo.cs" /> </ItemGroup> <ItemGroup> + <ProjectReference Include="..\..\..\Library\LibraryExtention\LibraryExtention.csproj"> + <Project>{A8135069-F8BA-4E5D-835F-3FF3F350AA5D}</Project> + <Name>LibraryExtention</Name> + </ProjectReference> <ProjectReference Include="..\..\PluginsFramework\PluginsFramework.csproj"> <Project>{69FB4176-F298-4AF7-B714-B6758AA9A58E}</Project> <Name>PluginsFramework</Name> Modified: ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/SocketServerGatePlugin/SocketServerGate.cs =================================================================== --- ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/SocketServerGatePlugin/SocketServerGate.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/SocketServerGatePlugin/SocketServerGate.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,6 +1,7 @@ using System; using AcmContester.Library.Connector; using AcmContester.Library.LibraryExtention.Data; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Plugins.MediatorPlugins.SocketServerGatePlugin { @@ -11,7 +12,7 @@ { private static SocketServerGate instance = new SocketServerGate(); - public new delegate void DataArrivedDelegate(string s); + public new delegate void DataArrivedDelegate(SystemMessage s); public new event DataArrivedDelegate onDataArrived; DataMediator dataContainer = new DataMediator(); @@ -26,9 +27,9 @@ return instance; } - protected override void DataSender(string message, int clientIndex) + protected override void DataSender(SystemMessage message, int clientIndex) { - Submit submit = Submit.CreateFromXml(message); + Submit submit = Submit.CreateFromXml(message.Message); if (dataContainer.Add(submit) == true) { OnLogMessage("send " + submit.id + " to " + clientIndex); @@ -39,12 +40,13 @@ { if (dataContainer.Contains(submit) == false) { - base.Send(submit.ToString()); + SystemMessage sysMes = new SystemMessage(submit.ToString(), "submit"); + base.Send(sysMes); } } - public new void Send(string message) + public new void Send(SystemMessage message) { - SubmitList submitList = SubmitList.CreateFromXml(message); + SubmitList submitList = SubmitList.CreateFromXml(message.Message); OnLogMessage("Get submits"); string ids = ""; @@ -61,9 +63,9 @@ } } - protected override void DataArriver(string message) + protected override void DataArriver(SystemMessage message) { - Result result = Result.CreateFromXml(message); + Result result = Result.CreateFromXml(message.Message); OnLogMessage("result " + result.Submit.id); OnLogMessage("\t " + result.res); @@ -71,7 +73,7 @@ base.DataArriver(message); dataContainer.Return(result); } - private void DataArrived(string message) + private void DataArrived(SystemMessage message) { if (onDataArrived != null) onDataArrived(message); Modified: ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/SocketServerGatePlugin/SocketServerGatePlugin.cs =================================================================== --- ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/SocketServerGatePlugin/SocketServerGatePlugin.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/SocketServerGatePlugin/SocketServerGatePlugin.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,6 +1,7 @@ using System; using AcmContester.Plugins.PluginsFramework; using SocketServerGatePlugin; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Plugins.MediatorPlugins.SocketServerGatePlugin { @@ -18,9 +19,9 @@ socketServerGate.LogMessage += new EventHandler<SocketServerGate.LogMessageEventArgs>(socketServerGate_LogMessage); } - public override void Send(string message) + public override void Send(SystemMessage message) { - if (message == "stop") + if (message.Message == "stop") { socketServerGate.Stop(); return; Modified: ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGate.cs =================================================================== --- ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGate.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGate.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -10,7 +10,7 @@ { private static WebGate instance = new WebGate(); - private WebGate() + private WebGate(): base(new WebGetter()) { } Modified: ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGatePlugin.cs =================================================================== --- ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGatePlugin.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGatePlugin.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,6 +1,7 @@ using System; using AcmContester.Plugins.PluginsFramework; using WebGatePlugin; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Plugins.MediatorPlugins.WebGatePlugin { @@ -19,17 +20,17 @@ webGate.onChecking += OnChecking; } - public override void Send(string message) + public override void Send(SystemMessage message) { - string text = " Send: " + message.Length + " bytes" + Environment.NewLine; + string text = " Send: " + message.Message.Length + " bytes" + Environment.NewLine; ((WebGatePluginUserControl)base.Control).AddText(text); webGate.Send(message); } - protected override void DataArrived(string message) + protected override void DataArrived(SystemMessage message) { - string text = "Arrived: " + message.Length + " bytes"; + string text = "Arrived: " + message.Message.Length + " bytes"; ((WebGatePluginUserControl)base.Control).AddText(text); base.DataArrived(message); Modified: ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGatePlugin.csproj =================================================================== --- ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGatePlugin.csproj 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGatePlugin.csproj 2008-08-25 14:13:29 UTC (rev 338) @@ -44,12 +44,17 @@ <Compile Include="WebGatePluginUserControl.Designer.cs"> <DependentUpon>WebGatePluginUserControl.cs</DependentUpon> </Compile> + <Compile Include="WebGetter.cs" /> </ItemGroup> <ItemGroup> <ProjectReference Include="..\..\..\Library\Connector\Connector.csproj"> <Project>{211DD6A5-2D73-439E-8722-ED2C89ED1DDB}</Project> <Name>Connector</Name> </ProjectReference> + <ProjectReference Include="..\..\..\Library\LibraryExtention\LibraryExtention.csproj"> + <Project>{A8135069-F8BA-4E5D-835F-3FF3F350AA5D}</Project> + <Name>LibraryExtention</Name> + </ProjectReference> <ProjectReference Include="..\..\PluginsFramework\PluginsFramework.csproj"> <Project>{69FB4176-F298-4AF7-B714-B6758AA9A58E}</Project> <Name>PluginsFramework</Name> Added: ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGetter.cs =================================================================== --- ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGetter.cs (rev 0) +++ ACMServer/trunk/ACMServer/Plugins/MediatorPlugins/WebGatePlugin/WebGetter.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -0,0 +1,23 @@ +using System; +using AcmContester.Library.Connector.Getter; +using AcmContester.Library.LibraryExtention; + +namespace AcmContester.Plugins.MediatorPlugins.WebGatePlugin +{ + class WebGetter: IWebGetter + { + #region IWebGetter Members + + public SystemMessage GetInfoFromSite() + { + throw new Exception("The method or operation is not implemented."); + } + + public void Send(SystemMessage message) + { + throw new Exception("The method or operation is not implemented."); + } + + #endregion + } +} Modified: ACMServer/trunk/ACMServer/Plugins/PluginsFramework/BaseMediatorPlugin.cs =================================================================== --- ACMServer/trunk/ACMServer/Plugins/PluginsFramework/BaseMediatorPlugin.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/PluginsFramework/BaseMediatorPlugin.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -1,5 +1,6 @@ using System; using System.Windows.Forms; +using AcmContester.Library.LibraryExtention; namespace AcmContester.Plugins.PluginsFramework { @@ -8,10 +9,10 @@ /// </summary> public abstract class BaseMediatorPlugin { - public delegate void DataArrived_EventHandler(string message); + public delegate void DataArrived_EventHandler(SystemMessage message); public event DataArrived_EventHandler onDataArrived; - public abstract void Send(string message); + public abstract void Send(SystemMessage message); private UserControl control = null; @@ -27,7 +28,7 @@ } } - protected virtual void DataArrived(string message) + protected virtual void DataArrived(SystemMessage message) { if (onDataArrived != null) onDataArrived(message); Modified: ACMServer/trunk/ACMServer/Plugins/PluginsFramework/PluginsFramework.csproj =================================================================== --- ACMServer/trunk/ACMServer/Plugins/PluginsFramework/PluginsFramework.csproj 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Plugins/PluginsFramework/PluginsFramework.csproj 2008-08-25 14:13:29 UTC (rev 338) @@ -36,6 +36,12 @@ <Compile Include="PluginsLoader.cs" /> <Compile Include="Properties\AssemblyInfo.cs" /> </ItemGroup> + <ItemGroup> + <ProjectReference Include="..\..\Library\LibraryExtention\LibraryExtention.csproj"> + <Project>{A8135069-F8BA-4E5D-835F-3FF3F350AA5D}</Project> + <Name>LibraryExtention</Name> + </ProjectReference> + </ItemGroup> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> <!-- To modify your build process, add your task inside one of the targets below and uncomment it. Other similar extension points exist, see Microsoft.Common.targets. Modified: ACMServer/trunk/ACMServer/Tester/Form1.cs =================================================================== --- ACMServer/trunk/ACMServer/Tester/Form1.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Tester/Form1.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -6,10 +6,8 @@ using System.Text; using System.Windows.Forms; using System.IO; -using AcmContester.Library.LibraryExtention; -using System.Threading; using AcmContester.Tester.Library; -using LogDataGridView; +using AcmContester.Library.LibraryExtention; namespace Tester { @@ -95,7 +93,7 @@ { AddText(type + ": " + text); AddTextToGridLog(new LogMessage(text, type)); - view.AddRow(new SystemMessage(text, type)); + view.AddRow(new LogDataGridView.SystemMessage(text, type)); } public class LogMessage Modified: ACMServer/trunk/ACMServer/Tester/Library/SocketClientGate.cs =================================================================== --- ACMServer/trunk/ACMServer/Tester/Library/SocketClientGate.cs 2008-08-19 09:42:45 UTC (rev 337) +++ ACMServer/trunk/ACMServer/Tester/Library/SocketClientGate.cs 2008-08-25 14:13:29 UTC (rev 338) @@ -8,7 +8,7 @@ { class SocketClientGate: SocketClient { - public delegate void DataArrivedDelegate(string s); + public delegate void DataArrivedDelegate(SystemMessage s); public event DataArrivedDelegate onDataArrived; public SocketClientGate(string IP) @@ -17,13 +17,13 @@ base.onDataArrived +=new SocketClient.DataArrivedDelegate(SocketClientGate_onDataArrived); } - void SocketClientGate_onDataArrived(string message) + void SocketClientGate_onDataArrived(SystemMessage message) { - if (SystemMessage(message) == true) + if (SystemMessageX(message) == true) return; - OnAddLogText("Receive", message); + OnAddLogText("Receive", message.Message); //OnDataArrived(message); - AddWork(message); + AddWork(message.Message); } public new void Disconnect() @@ -34,7 +34,7 @@ } - private void OnDataArrived(string message) + private void OnDataArrived(SystemMessage message) { if (onDataArrived != null) { @@ -43,8 +43,9 @@ } - private bool SystemMessage(string message) + private bool SystemMessageX(SystemMessage _message) { + string message = _message.Message; char[] chars = new char[1]; chars[0] = ' '; string[] mes = message.Split(chars); @@ -65,7 +66,7 @@ result += " " + mes[i]; } OnAddLogText("SystemSend", result); - base.Send(result); + base.Send(new SystemMessage(result, "")); return true; } return false; @@ -147,7 +148,7 @@ { Result res = Result.CreateFromXml(result); OnAddLogText("Send", "ID " + res.Submit.id + " result - " + res.res); - this.Send(result); + this.Send(new SystemMessage(result, "")); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |