mirror of https://github.com/deavmi/tasky.git
Start Evebnty Engine
This commit is contained in:
parent
940ea66bea
commit
2326195e90
|
@ -11,8 +11,11 @@ import eventy;
|
||||||
|
|
||||||
import core.thread : Thread;
|
import core.thread : Thread;
|
||||||
|
|
||||||
|
import std.stdio;
|
||||||
|
|
||||||
unittest
|
unittest
|
||||||
{
|
{
|
||||||
|
import std.stdio;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Server process
|
* Server process
|
||||||
|
@ -34,6 +37,21 @@ unittest
|
||||||
while(true)
|
while(true)
|
||||||
{
|
{
|
||||||
Socket client = servSocket.accept();
|
Socket client = servSocket.accept();
|
||||||
|
|
||||||
|
import bmessage;
|
||||||
|
|
||||||
|
byte[] data;
|
||||||
|
receiveMessage(client, data);
|
||||||
|
writeln("Server received: ", data);
|
||||||
|
|
||||||
|
byte[] dataOut = [69,0,0,0];
|
||||||
|
DataMessage dOut = new DataMessage(0, dataOut);
|
||||||
|
client.send(bmessage.encodeBformat(dOut.encode()));
|
||||||
|
|
||||||
|
|
||||||
|
/* Wait for a single byte (for preparation) */
|
||||||
|
// byte[] k = [1];
|
||||||
|
// client.receive(k);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -47,6 +65,11 @@ unittest
|
||||||
|
|
||||||
/* Start the task manager */
|
/* Start the task manager */
|
||||||
TaskManager taskManager = new TaskManager(conn);
|
TaskManager taskManager = new TaskManager(conn);
|
||||||
|
taskManager.start();
|
||||||
|
|
||||||
|
/* Create a Task to submit as a job */
|
||||||
|
TestTask testTask = new TestTask("Hello, world, this is a test message");
|
||||||
|
taskManager.submitTask(testTask);
|
||||||
}
|
}
|
||||||
|
|
||||||
public final class TaskManager : Thread
|
public final class TaskManager : Thread
|
||||||
|
@ -77,6 +100,9 @@ public final class TaskManager : Thread
|
||||||
/* Initialize the event-loop */
|
/* Initialize the event-loop */
|
||||||
eventEngine = new Engine();
|
eventEngine = new Engine();
|
||||||
|
|
||||||
|
/* Start the event engine */
|
||||||
|
eventEngine.start();
|
||||||
|
|
||||||
/* Initialize job queue lock */
|
/* Initialize job queue lock */
|
||||||
jobsLock = new Mutex();
|
jobsLock = new Mutex();
|
||||||
|
|
||||||
|
@ -94,14 +120,20 @@ public final class TaskManager : Thread
|
||||||
/* Clean list (list of jobs to be removed) */
|
/* Clean list (list of jobs to be removed) */
|
||||||
Job[] cleanList;
|
Job[] cleanList;
|
||||||
|
|
||||||
|
// writeln("Task: Loop begin");
|
||||||
|
|
||||||
foreach(Job job; jobs)
|
foreach(Job job; jobs)
|
||||||
{
|
{
|
||||||
|
writeln("Tasky: Job process begin ", job);
|
||||||
|
|
||||||
/* If the job is fulfilled */
|
/* If the job is fulfilled */
|
||||||
if(job.isFulfilled())
|
if(job.isFulfilled())
|
||||||
{
|
{
|
||||||
/* Get the Event for dispatching */
|
/* Get the Event for dispatching */
|
||||||
Event dispatchEvent = job.getEventForDispatch();
|
Event dispatchEvent = job.getEventForDispatch();
|
||||||
|
|
||||||
|
writeln("Tasky: Job is fulfilled ", job);
|
||||||
|
|
||||||
/* Dispatch the event */
|
/* Dispatch the event */
|
||||||
eventEngine.push(dispatchEvent);
|
eventEngine.push(dispatchEvent);
|
||||||
|
|
||||||
|
@ -111,6 +143,8 @@ public final class TaskManager : Thread
|
||||||
/* Add job to the deletion queue */
|
/* Add job to the deletion queue */
|
||||||
cleanList ~= job;
|
cleanList ~= job;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Delete tje jobs */
|
/* Delete tje jobs */
|
||||||
|
@ -246,6 +280,8 @@ public final class TaskManager : Thread
|
||||||
|
|
||||||
/* Send the payload */
|
/* Send the payload */
|
||||||
manager.getSocket().send(bEncoded);
|
manager.getSocket().send(bEncoded);
|
||||||
|
|
||||||
|
writeln("Tasky: Sent payload");
|
||||||
}
|
}
|
||||||
/* If unsuccessful, throw exception */
|
/* If unsuccessful, throw exception */
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in New Issue