@@ -12,18 +12,6 @@ public class RuntimeConfig
12
12
{
13
13
public List < RunningProcess > Processes { get ; set ; }
14
14
15
- public class RunningProcess
16
- {
17
- public RunningProcess ( int iD , int listeningPort )
18
- {
19
- ID = iD ;
20
- ListeningPort = listeningPort ;
21
- }
22
-
23
- public int ID { get ; }
24
- public int ListeningPort { get ; }
25
- }
26
-
27
15
public static string GetDefaultFileName ( )
28
16
{
29
17
var path = InjectedConstants . RuntimeConfigOutputPath ;
@@ -41,7 +29,9 @@ public static void Update(int port)
41
29
{
42
30
var path = GetDefaultFileName ( ) ;
43
31
var runtimeConfig = Load ( path ) ;
44
- runtimeConfig . Processes . Add ( new RunningProcess ( Process . GetCurrentProcess ( ) . Id , port ) ) ;
32
+ var id = Process . GetCurrentProcess ( ) . Id ;
33
+ runtimeConfig . Processes . RemoveAll ( p => p . ID == id ) ;
34
+ runtimeConfig . Processes . Add ( new RunningProcess ( id , port ) ) ;
45
35
runtimeConfig . Save ( path ) ;
46
36
}
47
37
@@ -93,5 +83,17 @@ private static void ThrowInvalidFormat()
93
83
{
94
84
throw new Exception ( "Invalid file format." ) ;
95
85
}
86
+
87
+ public class RunningProcess
88
+ {
89
+ public RunningProcess ( int iD , int listeningPort )
90
+ {
91
+ ID = iD ;
92
+ ListeningPort = listeningPort ;
93
+ }
94
+
95
+ public int ID { get ; }
96
+ public int ListeningPort { get ; }
97
+ }
96
98
}
97
99
}
0 commit comments