Add sendMessage method to LocalSocketClient public API
authorClaudio Cambra <claudio.cambra@nextcloud.com>
Wed, 28 Dec 2022 22:44:40 +0000 (23:44 +0100)
committerClaudio Cambra <claudio.cambra@nextcloud.com>
Fri, 12 May 2023 05:21:08 +0000 (13:21 +0800)
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
shell_integration/MacOSX/NextcloudIntegration/NCDesktopClientSocketKit/LocalSocketClient.h
shell_integration/MacOSX/NextcloudIntegration/NCDesktopClientSocketKit/LocalSocketClient.m

index dcecfbd512b62fd4821ba29d72500370d26770e0..208659a6513eb521b38eedd45c8986b296ed601a 100644 (file)
@@ -46,6 +46,7 @@
 - (void)restart;
 - (void)closeConnection;
 
+- (void)sendMessage:(NSString*)message;
 - (void)askOnSocket:(NSString*)path
               query:(NSString*)verb;
 - (void)askForIcon:(NSString*)path
index 16468d8211aed89acefb117d1657719b61485d31..ffd577f93fc569ced1f5c939be4e79170c4f1e15 100644 (file)
     }
 }
 
-- (void)askOnSocket:(NSString *)path query:(NSString *)verb
+- (void)sendMessage:(NSString *)message
 {
-    NSString *line = [NSString stringWithFormat:@"%@:%@\n", verb, path];
     dispatch_async(_localSocketQueue, ^(void) {
         if(![self isConnected]) {
             return;
         }
-        
+
         BOOL writeSourceIsSuspended = [self->_outBuffer length] == 0;
-        
-        [self->_outBuffer appendData:[line dataUsingEncoding:NSUTF8StringEncoding]];
-        
-        NSLog(@"Writing to out buffer: '%@'", line);
+
+        [self->_outBuffer appendData:[message dataUsingEncoding:NSUTF8StringEncoding]];
+
+        NSLog(@"Writing to out buffer: '%@'", message);
         NSLog(@"Out buffer now %li bytes", [self->_outBuffer length]);
-        
+
         if(writeSourceIsSuspended) {
             NSLog(@"Resuming write dispatch source.");
             dispatch_resume(self->_writeSource);
     });
 }
 
+- (void)askOnSocket:(NSString *)path query:(NSString *)verb
+{
+    NSString *line = [NSString stringWithFormat:@"%@:%@\n", verb, path];
+    [self sendMessage:line];
+}
+
 - (void)writeToSocket
 {
     if(![self isConnected]) {