66 lines
1.5 KiB
JavaScript
66 lines
1.5 KiB
JavaScript
process.on('message',data => {
|
|
const {Client} = require("./Client.js")
|
|
switch(data.type)
|
|
{
|
|
case "CLIENT_CREATED":{
|
|
let client = new Client();
|
|
client.isProxy = true;
|
|
client.proxyProcess = data.pid;
|
|
client.id = data.uuid;
|
|
Client.clients.set(client.id, client);
|
|
break;
|
|
}
|
|
case "CLIENT_UPDATE_PROP":{
|
|
let client = Client.clients.get(data.uuid);
|
|
client[data.name] = value;
|
|
break;
|
|
}
|
|
case "CLIENT_SEND_MESSAGE":{
|
|
let client = Client.clients.get(data.uuid);
|
|
client.send(data.message)
|
|
break;
|
|
}
|
|
case "CLIENT_DESTROY":{
|
|
Client.clients.delete(data.uuid);
|
|
break;
|
|
}
|
|
}
|
|
});
|
|
|
|
function CLIENT_CREATED(uuid)
|
|
{
|
|
console.log(process.pid, "CLIENT_CREATED");
|
|
process.send({
|
|
type:'CLIENT_CREATED',
|
|
uuid: uuid
|
|
})
|
|
};
|
|
function CLIENT_UPDATE_PROP(uuid, name, value)
|
|
{
|
|
process.send({
|
|
type:'CLIENT_UPDATE_PROP',
|
|
uuid: uuid,
|
|
name,
|
|
value
|
|
})
|
|
};
|
|
function CLIENT_SEND_MESSAGE(uuid, message)
|
|
{
|
|
process.send({
|
|
type:'CLIENT_SEND_MESSAGE',
|
|
uuid: uuid,
|
|
message
|
|
})
|
|
};
|
|
function CLIENT_DESTROY(uuid)
|
|
{
|
|
process.send({
|
|
type:'CLIENT_DESTROY',
|
|
uuid: uuid
|
|
})
|
|
};
|
|
|
|
exports.CLIENT_CREATED = CLIENT_CREATED;
|
|
exports.CLIENT_UPDATE_PROP = CLIENT_UPDATE_PROP;
|
|
exports.CLIENT_DESTROY = CLIENT_DESTROY;
|
|
exports.CLIENT_SEND_MESSAGE = CLIENT_SEND_MESSAGE; |