lintageddon 7

This commit is contained in:
Josh Burman 2020-02-04 15:51:33 -05:00
parent bf91bb1b5a
commit faa1186f39
4 changed files with 8 additions and 33 deletions

View File

@ -25,7 +25,7 @@ class ClientBase {
this.channel = null; this.channel = null;
this.clientManager = clientManager; this.clientManager = clientManager;
this.channelManager = channelManager; this.channelManager = channelManager;
this.roles = ['receiver']; this.roles = data.user_roles ? data.user_roles : ['receiver'];
this.messageListener = (message: any) => { this.messageListener = (message: any) => {
if (this.channel) { if (this.channel) {
logger.accessLog.info(`starting message transaction on channel ${this.channel.id}: `, {message}); logger.accessLog.info(`starting message transaction on channel ${this.channel.id}: `, {message});
@ -33,6 +33,8 @@ class ClientBase {
this.messageTransaction(message); this.messageTransaction(message);
} }
}; };
logger.accessLog.info('Client Created', {data});
} }
getData() { getData() {

View File

@ -1,16 +1,5 @@
import ClientBase from '../clientBase'; import ClientBase from '../clientBase';
import ClientManager from '../../clientManager';
import ChannelManager from '../../channelManager';
import * as WebSocket from 'ws';
const logger = require('../../logger'); class CustomClient extends ClientBase {}
class CustomClient extends ClientBase {
constructor(data: any, ws: WebSocket, channelManager: ChannelManager, clientManager: ClientManager) {
super(data, ws, channelManager, clientManager);
this.roles = data.user_roles;
logger.accessLog.info('Custom Client Created', {data});
}
}
export default CustomClient; export default CustomClient;

View File

@ -1,16 +1,5 @@
import * as WebSocket from 'ws';
import ClientBase from '../clientBase'; import ClientBase from '../clientBase';
import ClientManager from '../../clientManager';
import ChannelManager from '../../channelManager';
const logger = require('../../logger'); class PrivateClient extends ClientBase {}
class PrivateClient extends ClientBase {
constructor(data: any, ws: WebSocket, channelManager: ChannelManager, clientManager: ClientManager) {
super(data, ws, channelManager, clientManager);
this.roles = data.user_roles;
logger.accessLog.info('Private Client Created', {data});
}
}
export default PrivateClient; export default PrivateClient;

View File

@ -26,12 +26,10 @@ function connectionManager() {
ws.close(); ws.close();
} else { } else {
const data = result.data; const data = result.data;
var client: PublicClient|PrivateClient|CustomClient|null; let client: PublicClient|PrivateClient|CustomClient|null;
logger.accessLog.info(`Client Connected: ${data.user_id}`); logger.accessLog.info(`Client Connected: ${data.user_id}`);
if (!channelManager.channelExists(data.channel)) { if (!channelManager.channelExists(data.channel)) channelManager.createChannel(data);
channelManager.createChannel(data);
}
if (clientManager.clientExists(data.user_id)) { if (clientManager.clientExists(data.user_id)) {
client = clientManager.getClient(data.user_id); client = clientManager.getClient(data.user_id);
@ -43,11 +41,8 @@ function connectionManager() {
client = clientManager.addClient(data, channelManager, ws); client = clientManager.addClient(data, channelManager, ws);
} }
if (client != null) { if (client != null) channelManager.addClientToChannel(client, data.channel);
channelManager.addClientToChannel(client, data.channel);
}
// remove any channels that have no users in them
logger.accessLog.info(`Purging empty channels...`); logger.accessLog.info(`Purging empty channels...`);
channelManager.purgeEmptyChannels(); channelManager.purgeEmptyChannels();