@@ -7,14 +7,28 @@ import { ImagePayload } from '@/Payloads/ImagePayload';
77import { NodeInfoPayload } from '@/Payloads/NodeInfoPayload' ;
88import { NodeMeasurePayload } from '@/Payloads/NodeMeasurePayload' ;
99import { Ray as BaseRay } from '@/Ray' ;
10+ import { Settings } from '@/Settings/Settings' ;
1011import { SettingsFactory } from '@/Settings/SettingsFactory' ;
1112import { NodeStopwatch } from '@/Stopwatch/NodeStopwatch' ;
1213import { existsSync } from 'node:fs' ;
1314
1415// @ts -ignore
1516export class Ray extends BaseRay {
16- public static async create ( client : Client | null = null , uuid : string | null = null ) : Promise < Ray > {
17- const settings = await SettingsFactory . createFromConfigFile ( ) ;
17+ protected static settingsInstance : Settings | null = null ;
18+
19+ public static async initSettings ( ) : Promise < void > {
20+ Ray . settingsInstance = await SettingsFactory . createFromConfigFile ( ) ;
21+ }
22+
23+ public static create ( client : Client | null = null , uuid : string | null = null ) : Ray {
24+ const settings =
25+ Ray . settingsInstance ??
26+ new Settings ( {
27+ host : 'localhost' ,
28+ port : 23517 ,
29+ enable : true ,
30+ always_send_raw_values : false ,
31+ } ) ;
1832
1933 return new this ( settings , client , uuid ) ;
2034 }
@@ -88,5 +102,5 @@ export class Ray extends BaseRay {
88102}
89103
90104export const ray = ( ...args : any [ ] ) => {
91- return Ray . create ( ) . then ( r => r . send ( ...args ) ) ;
105+ return Ray . create ( ) . send ( ...args ) ;
92106} ;
0 commit comments