mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 10:22:45 +00:00 
			
		
		
		
	LibIPC: Add IPC::take_over_accepted_client_from_system_server<Client>()
This is an encapsulation of the common work done by all of our
single-client IPC servers on startup:
    1. Create a Core::LocalSocket, taking over an accepted fd.
    2. Create an application-specific ClientConnection object,
       wrapping the socket.
It's not a huge change in terms of lines saved, but I do feel that it
improves expressiveness. :^)
			
			
This commit is contained in:
		
							parent
							
								
									6d0f504822
								
							
						
					
					
						commit
						971b3645ef
					
				
					 18 changed files with 58 additions and 45 deletions
				
			
		|  | @ -14,10 +14,10 @@ namespace LanguageServers { | |||
| 
 | ||||
| static HashMap<int, RefPtr<ClientConnection>> s_connections; | ||||
| 
 | ||||
| ClientConnection::ClientConnection(NonnullRefPtr<Core::LocalSocket> socket, int client_id) | ||||
|     : IPC::ClientConnection<LanguageClientEndpoint, LanguageServerEndpoint>(*this, move(socket), client_id) | ||||
| ClientConnection::ClientConnection(NonnullRefPtr<Core::LocalSocket> socket) | ||||
|     : IPC::ClientConnection<LanguageClientEndpoint, LanguageServerEndpoint>(*this, move(socket), 1) | ||||
| { | ||||
|     s_connections.set(client_id, *this); | ||||
|     s_connections.set(1, *this); | ||||
| } | ||||
| 
 | ||||
| ClientConnection::~ClientConnection() | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling