From e510fb58f60d47e886b3caa6cc042810cee13dd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krist=C3=B3f=20T=C3=B3th?= Date: Thu, 31 May 2018 11:31:22 +0200 Subject: [PATCH] Move all message types to a standardised location --- src/app/console/console.component.ts | 4 ++-- src/app/dashboard/dashboard.component.ts | 4 ++-- src/app/ide/ide.component.ts | 14 +++++++------- .../console.command.ts} | 0 .../fsmupdate.ts => message.types/fsm.update.ts} | 0 .../ide.command.ts} | 2 +- .../layout.command.ts} | 0 src/app/{services => message.types}/log.message.ts | 0 .../{messages => message.types}/messagecontrol.ts | 0 .../messages.message.ts} | 2 +- .../process.command.ts} | 0 .../process.log.command.ts} | 0 .../websocket.message.ts} | 2 +- src/app/messages/messages.component.ts | 8 ++++---- src/app/services/fsmupdate.service.ts | 2 +- src/app/services/processlog.service.ts | 4 ++-- src/app/services/processmanager.service.ts | 10 +++++----- src/app/services/websocket.service.ts | 8 ++++---- 18 files changed, 30 insertions(+), 30 deletions(-) rename src/app/{console/console-command.ts => message.types/console.command.ts} (100%) rename src/app/{services/fsmupdate.ts => message.types/fsm.update.ts} (100%) rename src/app/{ide/source-code.ts => message.types/ide.command.ts} (87%) rename src/app/{dashboard/layout-command.ts => message.types/layout.command.ts} (100%) rename src/app/{services => message.types}/log.message.ts (100%) rename src/app/{messages => message.types}/messagecontrol.ts (100%) rename src/app/{messages/message.ts => message.types/messages.message.ts} (84%) rename src/app/{services/processcommand.ts => message.types/process.command.ts} (100%) rename src/app/{services/processlog-command.ts => message.types/process.log.command.ts} (100%) rename src/app/{services/wsmessage.ts => message.types/websocket.message.ts} (82%) diff --git a/src/app/console/console.component.ts b/src/app/console/console.component.ts index 5c960bd..e47cb0a 100644 --- a/src/app/console/console.component.ts +++ b/src/app/console/console.component.ts @@ -3,10 +3,10 @@ import { Component, OnInit } from '@angular/core'; import { WebSocketService } from '../services/websocket.service'; -import { ConsoleCommand } from './console-command'; +import { ConsoleCommand } from '../message.types/console.command'; import { config } from '../config'; import { ProcessLogService } from '../services/processlog.service'; -import { LogMessage } from '../services/log.message'; +import { LogMessage } from '../message.types/log.message'; @Component({ selector: 'app-console', diff --git a/src/app/dashboard/dashboard.component.ts b/src/app/dashboard/dashboard.component.ts index 9fb9d63..296fefd 100644 --- a/src/app/dashboard/dashboard.component.ts +++ b/src/app/dashboard/dashboard.component.ts @@ -5,10 +5,10 @@ import { Component, OnDestroy, OnInit, ChangeDetectorRef, ElementRef, ViewChild import { DeploymentNotificationService } from '../services/deployment-notification.service'; import { Subscription } from 'rxjs'; import { WebSocketService } from '../services/websocket.service'; -import { LayoutCommand } from './layout-command'; +import { LayoutCommand } from '../message.types/layout.command'; import { config } from '../config'; import { ProcessLogService } from '../services/processlog.service'; -import { LogMessage } from '../services/log.message'; +import { LogMessage } from '../message.types/log.message'; @Component({ selector: 'app-dashboard', diff --git a/src/app/ide/ide.component.ts b/src/app/ide/ide.component.ts index 596def1..a25e294 100644 --- a/src/app/ide/ide.component.ts +++ b/src/app/ide/ide.component.ts @@ -16,7 +16,7 @@ import 'brace/mode/python'; import 'brace/mode/sql'; import 'brace/theme/cobalt'; -import { SourceCode } from './source-code'; +import { IDECommand } from '../message.types/ide.command'; import { WebSocketService } from '../services/websocket.service'; import { ProcessManagerService } from '../services/processmanager.service'; import { DeploymentNotificationService } from '../services/deployment-notification.service'; @@ -89,7 +89,7 @@ export class IdeComponent implements OnInit { } subscribeWS() { - this.webSocketService.observeKey(this.key_id).subscribe((event) => { + this.webSocketService.observeKey(this.key_id).subscribe((event) => { this.command_handlers[event.data.command](event.data); this.changeDetectorRef.detectChanges(); }); @@ -119,7 +119,7 @@ export class IdeComponent implements OnInit { ); } - updateFileData(data: SourceCode) { + updateFileData(data: IDECommand) { this.filename = data.filename; this.directory = data.directory; this.code = (data.content != null) ? data.content : this.code; @@ -127,15 +127,15 @@ export class IdeComponent implements OnInit { this.files = data.files; } - selectHandler(data: SourceCode) { + selectHandler(data: IDECommand) { this.updateFileData(data); } - reloadHandler(data: SourceCode) { + reloadHandler(data: IDECommand) { this.requestCode(); } - readHandler(data: SourceCode) { + readHandler(data: IDECommand) { if (this.codeState === CodeState.SAVED) { this.updateFileData(data); } @@ -145,7 +145,7 @@ export class IdeComponent implements OnInit { this.setCodeState(CodeState.SAVED); } - selectdirHandler(data: SourceCode) { + selectdirHandler(data: IDECommand) { this.updateFileData(data); } diff --git a/src/app/console/console-command.ts b/src/app/message.types/console.command.ts similarity index 100% rename from src/app/console/console-command.ts rename to src/app/message.types/console.command.ts diff --git a/src/app/services/fsmupdate.ts b/src/app/message.types/fsm.update.ts similarity index 100% rename from src/app/services/fsmupdate.ts rename to src/app/message.types/fsm.update.ts diff --git a/src/app/ide/source-code.ts b/src/app/message.types/ide.command.ts similarity index 87% rename from src/app/ide/source-code.ts rename to src/app/message.types/ide.command.ts index a860436..205af53 100644 --- a/src/app/ide/source-code.ts +++ b/src/app/message.types/ide.command.ts @@ -1,7 +1,7 @@ // Copyright (C) 2018 Avatao.com Innovative Learning Kft. // All Rights Reserved. See LICENSE file for details. -export interface SourceCode { +export interface IDECommand { filename: string; content?: string; files: string[]; diff --git a/src/app/dashboard/layout-command.ts b/src/app/message.types/layout.command.ts similarity index 100% rename from src/app/dashboard/layout-command.ts rename to src/app/message.types/layout.command.ts diff --git a/src/app/services/log.message.ts b/src/app/message.types/log.message.ts similarity index 100% rename from src/app/services/log.message.ts rename to src/app/message.types/log.message.ts diff --git a/src/app/messages/messagecontrol.ts b/src/app/message.types/messagecontrol.ts similarity index 100% rename from src/app/messages/messagecontrol.ts rename to src/app/message.types/messagecontrol.ts diff --git a/src/app/messages/message.ts b/src/app/message.types/messages.message.ts similarity index 84% rename from src/app/messages/message.ts rename to src/app/message.types/messages.message.ts index 0b58bad..d8b1d0a 100644 --- a/src/app/messages/message.ts +++ b/src/app/message.types/messages.message.ts @@ -1,7 +1,7 @@ // Copyright (C) 2018 Avatao.com Innovative Learning Kft. // All Rights Reserved. See LICENSE file for details. -export class Message { +export class MessagesMessage { originator: string; timestamp: Date; message: string; diff --git a/src/app/services/processcommand.ts b/src/app/message.types/process.command.ts similarity index 100% rename from src/app/services/processcommand.ts rename to src/app/message.types/process.command.ts diff --git a/src/app/services/processlog-command.ts b/src/app/message.types/process.log.command.ts similarity index 100% rename from src/app/services/processlog-command.ts rename to src/app/message.types/process.log.command.ts diff --git a/src/app/services/wsmessage.ts b/src/app/message.types/websocket.message.ts similarity index 82% rename from src/app/services/wsmessage.ts rename to src/app/message.types/websocket.message.ts index 690f72c..c0d3b52 100644 --- a/src/app/services/wsmessage.ts +++ b/src/app/message.types/websocket.message.ts @@ -1,7 +1,7 @@ // Copyright (C) 2018 Avatao.com Innovative Learning Kft. // All Rights Reserved. See LICENSE file for details. -export class WSMessage { +export class WebSocketMessage { key: string; trigger?: string; data: T; diff --git a/src/app/messages/messages.component.ts b/src/app/messages/messages.component.ts index 9960bfc..9221a89 100644 --- a/src/app/messages/messages.component.ts +++ b/src/app/messages/messages.component.ts @@ -5,8 +5,8 @@ import { ChangeDetectorRef, Component, OnInit } from '@angular/core'; import { MarkdownService } from '../services/markdown.service'; import { WebSocketService } from '../services/websocket.service'; -import { Message } from './message'; -import { MessageControl } from './messagecontrol'; +import { MessagesMessage } from '../message.types/messages.message'; +import { MessageControl } from '../message.types/messagecontrol'; import { config } from '../config'; @Component({ @@ -15,7 +15,7 @@ import { config } from '../config'; styleUrls: ['./messages.component.scss'] }) export class MessagesComponent implements OnInit { - messages: Message[] = []; + messages: MessagesMessage[] = []; showNextButton: boolean = config.messages.showNextButton; command_handlers = {'showbutton': this.showButton.bind(this)}; @@ -35,7 +35,7 @@ export class MessagesComponent implements OnInit { ngOnInit() { this.websocketService.connect(); - this.websocketService.observeKey('message').subscribe( + this.websocketService.observeKey('message').subscribe( (event) => { this.messages.push(event.data); event.data.message = this.convert(event.data.message); diff --git a/src/app/services/fsmupdate.service.ts b/src/app/services/fsmupdate.service.ts index 85cf01a..0df04ff 100644 --- a/src/app/services/fsmupdate.service.ts +++ b/src/app/services/fsmupdate.service.ts @@ -4,7 +4,7 @@ import { Injectable } from '@angular/core'; import { WebSocketService } from './websocket.service'; -import { FSMUpdate } from './fsmupdate'; +import { FSMUpdate } from '../message.types/fsm.update'; @Injectable() export class FSMUpdateService { diff --git a/src/app/services/processlog.service.ts b/src/app/services/processlog.service.ts index 0feda37..79b8216 100644 --- a/src/app/services/processlog.service.ts +++ b/src/app/services/processlog.service.ts @@ -3,10 +3,10 @@ import { Injectable } from '@angular/core'; import { WebSocketService } from './websocket.service'; -import { ProcessLogCommand } from './processlog-command'; +import { ProcessLogCommand } from '../message.types/process.log.command'; import { config } from '../config'; import { BehaviorSubject } from 'rxjs/BehaviorSubject'; -import { LogMessage } from './log.message'; +import { LogMessage } from '../message.types/log.message'; @Injectable() export class ProcessLogService { diff --git a/src/app/services/processmanager.service.ts b/src/app/services/processmanager.service.ts index 4fc96b3..70cefbf 100644 --- a/src/app/services/processmanager.service.ts +++ b/src/app/services/processmanager.service.ts @@ -4,9 +4,9 @@ import { Injectable } from '@angular/core'; import { WebSocketService } from './websocket.service'; -import { ProcessCommand } from './processcommand'; +import { ProcessCommand } from '../message.types/process.command'; import { filter } from 'rxjs/operators'; -import { WSMessage } from './wsmessage'; +import { WebSocketMessage } from '../message.types/websocket.message'; @Injectable() @@ -20,15 +20,15 @@ export class ProcessManagerService { this.webSocketService.connect(); } - subscribeCallback(process_name: string, callback: (event: WSMessage) => void) { + subscribeCallback(process_name: string, callback: (event: WebSocketMessage) => void) { this.observeProcessMessage(process_name).subscribe(callback); } - subscribeSuccessCallback(process_name: string, callback: (event: WSMessage) => void) { + subscribeSuccessCallback(process_name: string, callback: (event: WebSocketMessage) => void) { this.observeProcessMessage(process_name).pipe(filter(message => !('error' in message.data))).subscribe(callback); } - subscribeErrorCallback(process_name: string, callback: (event: WSMessage) => void) { + subscribeErrorCallback(process_name: string, callback: (event: WebSocketMessage) => void) { this.observeProcessMessage(process_name).pipe(filter(message => 'error' in message.data)).subscribe(callback); } diff --git a/src/app/services/websocket.service.ts b/src/app/services/websocket.service.ts index 435b648..53b2365 100644 --- a/src/app/services/websocket.service.ts +++ b/src/app/services/websocket.service.ts @@ -6,7 +6,7 @@ import { QueueingSubject } from './queueing-subject'; import { Observable } from 'rxjs'; import websocketConnect from 'rxjs-websockets'; import { filter, map, share } from 'rxjs/operators'; -import { WSMessage } from './wsmessage'; +import { WebSocketMessage } from '../message.types/websocket.message'; function jsonWebsocketConnect(url: string, input: Observable, protocols?: string | string[]) { @@ -19,7 +19,7 @@ function jsonWebsocketConnect(url: string, input: Observable, protocols? @Injectable() export class WebSocketService { private uplink: QueueingSubject; - public downlink: Observable>; + public downlink: Observable>; constructor() {} @@ -33,13 +33,13 @@ export class WebSocketService { wsproto + window.location.host + '/ws', this.uplink = new QueueingSubject() ).messages.pipe( - map(message => > message), + map(message => > message), share() ); console.log('ws connected'); } - public observeKey(key: string): Observable> { + public observeKey(key: string): Observable> { return this.downlink.pipe(filter(message => message.key === key)); }