66
77namespace ES . Kubernetes . Reflector . Core ;
88
9- public class ConfigMapMirror : ResourceMirror < V1ConfigMap >
9+ public class ConfigMapMirror ( ILogger < ConfigMapMirror > logger , IServiceProvider serviceProvider )
10+ : ResourceMirror < V1ConfigMap > ( logger , serviceProvider )
1011{
11- public ConfigMapMirror ( ILogger < ConfigMapMirror > logger , IKubernetes client ) : base ( logger , client )
12- {
13- }
12+ private readonly IServiceProvider _serviceProvider = serviceProvider ;
1413
1514 protected override async Task < V1ConfigMap [ ] > OnResourceWithNameList ( string itemRefName )
1615 {
17- return ( await Client . CoreV1 . ListConfigMapForAllNamespacesAsync ( fieldSelector : $ "metadata.name={ itemRefName } ") ) . Items
16+ using var client = _serviceProvider . GetRequiredService < IKubernetes > ( ) ;
17+ return ( await client . CoreV1 . ListConfigMapForAllNamespacesAsync ( fieldSelector : $ "metadata.name={ itemRefName } ") )
18+ . Items
1819 . ToArray ( ) ;
1920 }
2021
21- protected override Task OnResourceApplyPatch ( V1Patch patch , KubeRef refId )
22+ protected override async Task OnResourceApplyPatch ( V1Patch patch , KubeRef refId )
2223 {
23- return Client . CoreV1 . PatchNamespacedConfigMapAsync ( patch , refId . Name , refId . Namespace ) ;
24+ using var client = _serviceProvider . GetRequiredService < IKubernetes > ( ) ;
25+ await client . CoreV1 . PatchNamespacedConfigMapAsync ( patch , refId . Name , refId . Namespace ) ;
2426 }
2527
2628 protected override Task OnResourceConfigurePatch ( V1ConfigMap source , JsonPatchDocument < V1ConfigMap > patchDoc )
@@ -30,9 +32,10 @@ protected override Task OnResourceConfigurePatch(V1ConfigMap source, JsonPatchDo
3032 return Task . CompletedTask ;
3133 }
3234
33- protected override Task OnResourceCreate ( V1ConfigMap item , string ns )
35+ protected override async Task OnResourceCreate ( V1ConfigMap item , string ns )
3436 {
35- return Client . CoreV1 . CreateNamespacedConfigMapAsync ( item , ns ) ;
37+ using var client = _serviceProvider . GetRequiredService < IKubernetes > ( ) ;
38+ await client . CoreV1 . CreateNamespacedConfigMapAsync ( item , ns ) ;
3639 }
3740
3841 protected override Task < V1ConfigMap > OnResourceClone ( V1ConfigMap sourceResource )
@@ -46,13 +49,15 @@ protected override Task<V1ConfigMap> OnResourceClone(V1ConfigMap sourceResource)
4649 } ) ;
4750 }
4851
49- protected override Task OnResourceDelete ( KubeRef resourceId )
52+ protected override async Task OnResourceDelete ( KubeRef resourceId )
5053 {
51- return Client . CoreV1 . DeleteNamespacedConfigMapAsync ( resourceId . Name , resourceId . Namespace ) ;
54+ using var client = _serviceProvider . GetRequiredService < IKubernetes > ( ) ;
55+ await client . CoreV1 . DeleteNamespacedConfigMapAsync ( resourceId . Name , resourceId . Namespace ) ;
5256 }
5357
54- protected override Task < V1ConfigMap > OnResourceGet ( KubeRef refId )
58+ protected override async Task < V1ConfigMap > OnResourceGet ( KubeRef refId )
5559 {
56- return Client . CoreV1 . ReadNamespacedConfigMapAsync ( refId . Name , refId . Namespace ) ;
60+ using var client = _serviceProvider . GetRequiredService < IKubernetes > ( ) ;
61+ return await client . CoreV1 . ReadNamespacedConfigMapAsync ( refId . Name , refId . Namespace ) ;
5762 }
5863}
0 commit comments