1
- // Smdn.Net.MuninNode.dll (Smdn.Net.MuninNode-2.4 .0)
1
+ // Smdn.Net.MuninNode.dll (Smdn.Net.MuninNode-2.5 .0)
2
2
// Name: Smdn.Net.MuninNode
3
- // AssemblyVersion: 2.4 .0.0
4
- // InformationalVersion: 2.4 .0+6578cec572157dafbc9518cc746aae28f7f1ce6d
3
+ // AssemblyVersion: 2.5 .0.0
4
+ // InformationalVersion: 2.5 .0+41ff114bf69b864033a05a389896010d3eefe4d5
5
5
// TargetFramework: .NETCoreApp,Version=v8.0
6
6
// Configuration: Release
7
7
// Referenced assemblies:
@@ -71,7 +71,7 @@ protected LocalNode(IMuninNodeListenerFactory? listenerFactory, IAccessRule? acc
71
71
protected override Socket CreateServerSocket ( ) { }
72
72
}
73
73
74
- public sealed class MuninNodeOptions {
74
+ public class MuninNodeOptions {
75
75
public const string DefaultHostName = "munin-node.localhost" ;
76
76
public const int DefaultPort = 4949 ;
77
77
@@ -86,6 +86,7 @@ public MuninNodeOptions() {}
86
86
87
87
public MuninNodeOptions AllowFrom ( IReadOnlyList < IPAddress > addresses , bool shouldConsiderIPv4MappedIPv6Address = true ) { }
88
88
public MuninNodeOptions AllowFromLoopbackOnly ( ) { }
89
+ internal protected virtual void Configure ( MuninNodeOptions baseOptions ) { }
89
90
public MuninNodeOptions UseAnyAddress ( ) { }
90
91
public MuninNodeOptions UseAnyAddress ( int port ) { }
91
92
public MuninNodeOptions UseLoopbackAddress ( ) { }
@@ -128,13 +129,18 @@ public Task RunAsync(CancellationToken cancellationToken) {}
128
129
[ Obsolete ( "This method will be deprecated in the future.Use IMuninNodeListenerFactory and StartAsync instead.Make sure to override CreateServerSocket if you need to use this method." ) ]
129
130
public void Start ( ) { }
130
131
public ValueTask StartAsync ( CancellationToken cancellationToken = default ) { }
132
+ protected virtual ValueTask StartedAsync ( CancellationToken cancellationToken ) { }
133
+ protected virtual ValueTask StartingAsync ( CancellationToken cancellationToken ) { }
131
134
public ValueTask StopAsync ( CancellationToken cancellationToken = default ) { }
135
+ protected virtual ValueTask StoppedAsync ( CancellationToken cancellationToken ) { }
136
+ protected virtual ValueTask StoppingAsync ( CancellationToken cancellationToken ) { }
132
137
protected void ThrowIfDisposed ( ) { }
133
138
protected void ThrowIfPluginProviderIsNull ( ) { }
134
139
}
135
140
}
136
141
137
142
namespace Smdn . Net . MuninNode . DependencyInjection {
143
+ [ Obsolete ( "Use or inherit MuninNodeBuilder instead." ) ]
138
144
public interface IMuninNodeBuilder {
139
145
string ServiceKey { get ; }
140
146
IServiceCollection Services { get ; }
@@ -146,6 +152,7 @@ public interface IMuninServiceBuilder {
146
152
IServiceCollection Services { get ; }
147
153
}
148
154
155
+ [ Obsolete ( "Use MuninNodeBuilderExtensions instead." ) ]
149
156
public static class IMuninNodeBuilderExtensions {
150
157
public static IMuninNodeBuilder AddPlugin ( this IMuninNodeBuilder builder , Func < IServiceProvider , IPlugin > buildPlugin ) { }
151
158
public static IMuninNodeBuilder AddPlugin ( this IMuninNodeBuilder builder , IPlugin plugin ) { }
@@ -162,11 +169,39 @@ public static IMuninNodeBuilder UseSessionCallback(this IMuninNodeBuilder builde
162
169
public static class IMuninServiceBuilderExtensions {
163
170
public static IMuninNodeBuilder AddNode ( this IMuninServiceBuilder builder ) { }
164
171
public static IMuninNodeBuilder AddNode ( this IMuninServiceBuilder builder , Action < MuninNodeOptions > configure ) { }
172
+ public static TMuninNodeBuilder AddNode < TMuninNode , TMuninNodeOptions , TMuninNodeBuilder > ( this IMuninServiceBuilder builder , Action < TMuninNodeOptions > configure , Func < IMuninServiceBuilder , string , TMuninNodeBuilder > createBuilder ) where TMuninNode : class , IMuninNode where TMuninNodeOptions : MuninNodeOptions , new ( ) where TMuninNodeBuilder : MuninNodeBuilder { }
173
+ public static TMuninNodeBuilder AddNode < TMuninNodeOptions , TMuninNodeBuilder > ( this IMuninServiceBuilder builder , Action < TMuninNodeOptions > configure , Func < IMuninServiceBuilder , string , TMuninNodeBuilder > createBuilder ) where TMuninNodeOptions : MuninNodeOptions , new ( ) where TMuninNodeBuilder : MuninNodeBuilder { }
174
+ public static TMuninNodeBuilder AddNode < TMuninNodeService , TMuninNodeImplementation , TMuninNodeOptions , TMuninNodeBuilder > ( this IMuninServiceBuilder builder , Action < TMuninNodeOptions > configure , Func < IMuninServiceBuilder , string , TMuninNodeBuilder > createBuilder ) where TMuninNodeService : class , IMuninNode where TMuninNodeImplementation : class , TMuninNodeService where TMuninNodeOptions : MuninNodeOptions , new ( ) where TMuninNodeBuilder : MuninNodeBuilder { }
165
175
}
166
176
167
177
public static class IServiceCollectionExtensions {
168
178
public static IServiceCollection AddMunin ( this IServiceCollection services , Action < IMuninServiceBuilder > configure ) { }
169
179
}
180
+
181
+ public class MuninNodeBuilder : IMuninNodeBuilder {
182
+ internal protected MuninNodeBuilder ( IMuninServiceBuilder serviceBuilder , string serviceKey ) { }
183
+
184
+ public string ServiceKey { get ; }
185
+ public IServiceCollection Services { get ; }
186
+
187
+ protected virtual IMuninNode Build ( IPluginProvider pluginProvider , IMuninNodeListenerFactory ? listenerFactory , IServiceProvider serviceProvider ) { }
188
+ public IMuninNode Build ( IServiceProvider serviceProvider ) { }
189
+ protected TMuninNodeOptions GetConfiguredOptions < TMuninNodeOptions > ( IServiceProvider serviceProvider ) where TMuninNodeOptions : MuninNodeOptions { }
190
+ }
191
+
192
+ public static class MuninNodeBuilderExtensions {
193
+ public static TMuninNodeBuilder AddPlugin < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , Func < IServiceProvider , IPlugin > buildPlugin ) where TMuninNodeBuilder : MuninNodeBuilder { }
194
+ public static TMuninNodeBuilder AddPlugin < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , IPlugin plugin ) where TMuninNodeBuilder : MuninNodeBuilder { }
195
+ public static TMuninNode Build < TMuninNode > ( this MuninNodeBuilder builder , IServiceProvider serviceProvider ) where TMuninNode : IMuninNode { }
196
+ public static TMuninNodeBuilder UseListenerFactory < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , Func < IServiceProvider , EndPoint , IMuninNode , CancellationToken , ValueTask < IMuninNodeListener > > createListenerAsyncFunc ) where TMuninNodeBuilder : MuninNodeBuilder { }
197
+ public static TMuninNodeBuilder UseListenerFactory < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , Func < IServiceProvider , IMuninNodeListenerFactory > buildListenerFactory ) where TMuninNodeBuilder : MuninNodeBuilder { }
198
+ public static TMuninNodeBuilder UseListenerFactory < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , IMuninNodeListenerFactory listenerFactory ) where TMuninNodeBuilder : MuninNodeBuilder { }
199
+ public static TMuninNodeBuilder UsePluginProvider < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , Func < IServiceProvider , IPluginProvider > buildPluginProvider ) where TMuninNodeBuilder : MuninNodeBuilder { }
200
+ public static TMuninNodeBuilder UsePluginProvider < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , IPluginProvider pluginProvider ) where TMuninNodeBuilder : MuninNodeBuilder { }
201
+ public static TMuninNodeBuilder UseSessionCallback < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , Func < IServiceProvider , INodeSessionCallback > buildSessionCallback ) where TMuninNodeBuilder : MuninNodeBuilder { }
202
+ public static TMuninNodeBuilder UseSessionCallback < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , Func < string , CancellationToken , ValueTask > ? reportSessionStartedAsyncFunc , Func < string , CancellationToken , ValueTask > ? reportSessionClosedAsyncFunc ) where TMuninNodeBuilder : MuninNodeBuilder { }
203
+ public static TMuninNodeBuilder UseSessionCallback < TMuninNodeBuilder > ( this TMuninNodeBuilder builder , INodeSessionCallback sessionCallback ) where TMuninNodeBuilder : MuninNodeBuilder { }
204
+ }
170
205
}
171
206
172
207
namespace Smdn . Net . MuninNode . Protocol {
@@ -475,6 +510,8 @@ public PluginGraphAttributesBuilder WithGraphRigid() {}
475
510
public PluginGraphAttributesBuilder WithGraphUpperLimit ( double @value ) { }
476
511
public PluginGraphAttributesBuilder WithHeight ( int height ) { }
477
512
public PluginGraphAttributesBuilder WithSize ( int width , int height ) { }
513
+ [ MemberNotNull ( "title" ) ]
514
+ public PluginGraphAttributesBuilder WithTitle ( string title ) { }
478
515
public PluginGraphAttributesBuilder WithTotal ( string labelForTotal ) { }
479
516
public PluginGraphAttributesBuilder WithUpdateRate ( TimeSpan updateRate ) { }
480
517
public PluginGraphAttributesBuilder WithVerticalLabel ( string verticalLabel ) { }
0 commit comments