From 4cd799e7abb224e94c7ad6cb2791c1ed63aeba9e Mon Sep 17 00:00:00 2001
From: cgeek <cem.moreau@gmail.com>
Date: Wed, 7 Nov 2018 22:00:28 +0100
Subject: [PATCH] [enh] Duniter module: "neutral" service is just a
 DuniterService

---
 app/modules/DuniterModule.ts | 4 ++--
 index.ts                     | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/app/modules/DuniterModule.ts b/app/modules/DuniterModule.ts
index 3a65f9b44..0dbd318ab 100644
--- a/app/modules/DuniterModule.ts
+++ b/app/modules/DuniterModule.ts
@@ -2,7 +2,7 @@ import {Server} from "../../server"
 import {ConfDTO} from "../lib/dto/ConfDTO"
 import {ProgramOptions} from "../lib/common-libs/programOptions"
 import {ConfDAL} from "../lib/dal/fileDALs/ConfDAL"
-import {ReadableDuniterService, Stack, TransformableDuniterService} from "../../index"
+import {DuniterService, ReadableDuniterService, Stack, TransformableDuniterService} from "../../index"
 
 export interface DuniterModule {
   name: string
@@ -29,7 +29,7 @@ export interface DuniterDependency {
     input?: (server: Server, conf: ConfDTO, logger:any) => ReadableDuniterService
     process?: (server: Server, conf: ConfDTO, logger:any) => TransformableDuniterService
     output?: (server: Server, conf: ConfDTO, logger:any) => TransformableDuniterService
-    neutral?: (server: Server, conf: ConfDTO, logger:any) => TransformableDuniterService
+    neutral?: (server: Server, conf: ConfDTO, logger:any) => DuniterService
   }
 }
 
diff --git a/index.ts b/index.ts
index c8d5db1a2..843cf42a4 100644
--- a/index.ts
+++ b/index.ts
@@ -199,7 +199,7 @@ export class Stack {
     input: ReadableDuniterService[]
     process: TransformableDuniterService[]
     output: TransformableDuniterService[]
-    neutral: TransformableDuniterService[]
+    neutral: DuniterService[]
   } = {
     input: [],
     process: [],
@@ -442,13 +442,13 @@ export class Stack {
 
         // Start services and streaming between them
         async () => {
-          const modules = this.streams.input.concat(this.streams.process).concat(this.streams.output).concat(this.streams.neutral);
+          const modules: DuniterService[] = this.streams.neutral.concat(this.streams.input).concat(this.streams.process).concat(this.streams.output);
           await Promise.all(modules.map((module:DuniterService) => module.startService()))
         },
 
         // Stop services and streaming between them
         async () => {
-          const modules = this.streams.input.concat(this.streams.process).concat(this.streams.output).concat(this.streams.neutral);
+          const modules: DuniterService[] = this.streams.neutral.concat(this.streams.input).concat(this.streams.process).concat(this.streams.output);
           // Any streaming module must implement a `stopService` method
           await Promise.all(modules.map((module:DuniterService) => module.stopService()))
         },
-- 
GitLab