|
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.
|