fix: bugs with split up classes
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				build-packages / meilisearch-dotnet-packages (push) Successful in 6m3s
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	build-packages / meilisearch-dotnet-packages (push) Successful in 6m3s
				
			This commit is contained in:
		
							parent
							
								
									f21b92bc1f
								
							
						
					
					
						commit
						845d0a332b
					
				| @ -71,8 +71,6 @@ public class test | ||||
|          | ||||
|         service.CreateIndex<document>("test"); | ||||
|          | ||||
|          | ||||
|          | ||||
|         service.AddDocument("test", new document() | ||||
|         { | ||||
|             Id = Guid.NewGuid(), | ||||
|  | ||||
							
								
								
									
										49
									
								
								meilisearch.NET/Extensions/MeilisearchClientExtensions.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								meilisearch.NET/Extensions/MeilisearchClientExtensions.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,49 @@ | ||||
| using Meilisearch; | ||||
| using meilisearch.NET; | ||||
| using meilisearch.NET.Models; | ||||
| 
 | ||||
| public static class MeilisearchClientExtensions | ||||
| { | ||||
|     public static async Task<T> SDK<T>(this MeiliSearchService service, string indexName, Func<MeilisearchClient, Task<T>> action) | ||||
|     { | ||||
|         var client = service.Client; | ||||
|         var indexManager = service.IndexManager; | ||||
|          | ||||
|         if (client == null) | ||||
|             throw new InvalidOperationException("MeilisearchClient is not initialized"); | ||||
| 
 | ||||
|         if (!string.IsNullOrEmpty(indexName)) | ||||
|         { | ||||
|             var index = await client.GetIndexAsync("index_bindings");  | ||||
|             var doc = await index.GetDocumentAsync<meilisearch.NET.Models.Index>(indexName); | ||||
|             if (doc.IsCompressed) | ||||
|             { | ||||
|                 await indexManager.SetIndexEnabledAsync(indexName, true); | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         var result = await action(client); | ||||
|         return result; | ||||
|     } | ||||
| 
 | ||||
|     public static async Task SDK(this MeiliSearchService service, string indexName, Func<MeilisearchClient, Task> action) | ||||
|     { | ||||
|         var client = service.Client; | ||||
|         var indexManager = service.IndexManager; | ||||
|          | ||||
|         if (client == null) | ||||
|             throw new InvalidOperationException("MeilisearchClient is not initialized"); | ||||
| 
 | ||||
|         if (!string.IsNullOrEmpty(indexName)) | ||||
|         { | ||||
|             var index = await client.GetIndexAsync("index_bindings"); | ||||
|             var doc = await index.GetDocumentAsync<meilisearch.NET.Models.Index>(indexName); | ||||
|             if (doc.IsCompressed) | ||||
|             { | ||||
|                 await indexManager.SetIndexEnabledAsync(indexName, true); | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         await action(client); | ||||
|     } | ||||
| } | ||||
| @ -1,4 +1,5 @@ | ||||
| using Meilisearch; | ||||
| using meilisearch.NET; | ||||
| using meilisearch.NET.Configurations; | ||||
| using meilisearch.NET.Services.DocumentManagement; | ||||
| using meilisearch.NET.Services.IndexManagement; | ||||
|  | ||||
| @ -1,52 +1,57 @@ | ||||
| using Meilisearch; | ||||
| using meilisearch.NET.Interfaces; | ||||
| using meilisearch.NET.Services.DocumentManagement; | ||||
| using meilisearch.NET.Services.IndexManagement; | ||||
| using meilisearch.NET.Services.ProcessManagement; | ||||
| 
 | ||||
| namespace meilisearch.NET; | ||||
| 
 | ||||
| public class MeiliSearchService : IDisposable | ||||
| { | ||||
|     private readonly MeiliSearchProcessManager _processManager; | ||||
|     private readonly IIndexManager _indexManager; | ||||
|     private readonly IDocumentManager _documentManager; | ||||
|     internal readonly MeiliSearchProcessManager ProcessManager; | ||||
|     internal readonly IIndexManager IndexManager; | ||||
|     internal readonly IDocumentManager DocumentManager; | ||||
|     internal readonly MeilisearchClient Client; | ||||
|      | ||||
|     public MeiliSearchService( | ||||
|         MeiliSearchProcessManager processManager, | ||||
|         IIndexManager indexManager, | ||||
|         IDocumentManager documentManager) | ||||
|         IDocumentManager documentManager, | ||||
|         MeilisearchClient client) | ||||
|     { | ||||
|         _processManager = processManager; | ||||
|         _indexManager = indexManager; | ||||
|         _documentManager = documentManager; | ||||
|         _processManager.StartProcess(); | ||||
|         Client = client; | ||||
|         ProcessManager = processManager; | ||||
|         IndexManager = indexManager; | ||||
|         DocumentManager = documentManager; | ||||
|         ProcessManager.StartProcess().Wait(); | ||||
|     } | ||||
| 
 | ||||
|     public async Task Start() => await _processManager.StartProcess(); | ||||
|     public async Task Start() => await ProcessManager.StartProcess(); | ||||
|     public long GetTotalStorageUsage(bool useCompressedSize = true)  | ||||
|         => _indexManager.GetTotalStorageUsage(useCompressedSize); | ||||
|         => IndexManager.GetTotalStorageUsage(useCompressedSize); | ||||
|     public long GetIndexStorageUsage(string indexName, bool useCompressedSize = true)  | ||||
|         => _indexManager.GetIndexStorageUsage(indexName, useCompressedSize); | ||||
|     public void Stop() => _processManager.StopProcess(); | ||||
|         => IndexManager.GetIndexStorageUsage(indexName, useCompressedSize); | ||||
|     public void Stop() => ProcessManager.StopProcess(); | ||||
|      | ||||
|     public bool IsRunning() => _processManager.IsProcessRunning(); | ||||
|     public bool IsRunning() => ProcessManager.IsProcessRunning(); | ||||
|      | ||||
|     public Task SetIndexEnabled(string indexName, bool enabled)  | ||||
|         => _indexManager.SetIndexEnabledAsync(indexName, enabled); | ||||
|         => IndexManager.SetIndexEnabledAsync(indexName, enabled); | ||||
|      | ||||
|     public ProcessResourceStats GetResourceUsage() => _processManager.GetResourceUsage(); | ||||
|     public ProcessResourceStats GetResourceUsage() => ProcessManager.GetResourceUsage(); | ||||
|      | ||||
|     public Task<List<string>> GetAllIndexes() => _indexManager.GetAllIndexes(); | ||||
|     public Task<List<string>> GetAllIndexes() => IndexManager.GetAllIndexes(); | ||||
|      | ||||
|     public Task CreateIndex<T>(string indexName) where T : IDocument  | ||||
|         => _indexManager.CreateIndexAsync<T>(indexName); | ||||
|         => IndexManager.CreateIndexAsync<T>(indexName); | ||||
|      | ||||
|     public Task DeleteIndex(string indexName) => _indexManager.DeleteIndexAsync(indexName); | ||||
|     public Task DeleteIndex(string indexName) => IndexManager.DeleteIndexAsync(indexName); | ||||
|      | ||||
|     public void AddDocument(string repositoryId, IDocument document, bool autoCommit = false)  | ||||
|         => _documentManager.AddDocument(repositoryId, document, autoCommit); | ||||
|         => DocumentManager.AddDocument(repositoryId, document, autoCommit); | ||||
| 
 | ||||
|     public void Dispose() | ||||
|     { | ||||
|         _processManager.Dispose(); | ||||
|         ProcessManager.Dispose(); | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user