Protocols

The following protocols are available globally.

  • Undocumented

    See more

    Declaration

    Objective-C

    @protocol LCSubclassing

    Swift

    protocol LCSubclassing
  • This protocol defines methods to handle the events about client, conversation, message and so on.

    See more

    Declaration

    Objective-C

    @protocol LCIMClientDelegate <NSObject>

    Swift

    protocol LCIMClientDelegate : NSObjectProtocol
  • Undocumented

    See more

    Declaration

    Objective-C

    @protocol LCIMSignatureDataSource <NSObject>
    
    /// Delegate function of the signature action.
    /// @param client The signature action belong to.
    /// @param action See `LCIMSignatureAction`.
    /// @param conversation The signature action belong to.
    /// @param clientIds The targets.
    /// @param handler The handler for the signature.
    - (void)client:(LCIMClient *)client
            action:(LCIMSignatureAction)action
      conversation:(LCIMConversation * _Nullable)conversation
         clientIds:(NSArray<NSString *> * _Nullable)clientIds
    signatureHandler:(void (^)(LCIMSignature * _Nullable))handler;
    
    @end

    Swift

    protocol LCIMSignatureDataSource : NSObjectProtocol
  • Undocumented

    See more

    Declaration

    Objective-C

    @protocol LCIMTypedMessageSubclassing <NSObject>
    
    @required
    
    /// The type of the typed message,
    /// The zero and negative number is reserved for default typed message,
    /// Any other typed message should use positive number.
    + (LCIMMessageMediaType)classMediaType;
    
    @end

    Swift

    protocol LCIMTypedMessageSubclassing : NSObjectProtocol
  • Protocol of delegate that receives live query notifications.

    See more

    Declaration

    Objective-C

    @protocol LCLiveQueryDelegate <NSObject>

    Swift

    protocol LCLiveQueryDelegate : NSObjectProtocol
  • The LCURLRequestSerialization protocol is adopted by an object that encodes parameters for a specified HTTP requests. Request serializers may encode parameters as query strings, HTTP bodies, setting the appropriate HTTP header fields as necessary.

    For example, a JSON request serializer may set the HTTP body of the request to a JSON representation, and set the Content-Type HTTP header field value to application/json.

    See more

    Declaration

    Objective-C

    @protocol LCURLRequestSerialization <NSObject, NSSecureCoding, NSCopying>

    Swift

    protocol LCURLRequestSerialization : NSCopying, NSSecureCoding, NSObjectProtocol
  • The LCMultipartFormData protocol defines the methods supported by the parameter in the block argument of LCHTTPRequestSerializer -multipartFormRequestWithMethod:URLString:parameters:constructingBodyWithBlock:.

    See more

    Declaration

    Objective-C

    @protocol LCMultipartFormData

    Swift

    protocol LCMultipartFormData
  • The LCURLResponseSerialization protocol is adopted by an object that decodes data into a more useful object representation, according to details in the server response. Response serializers may additionally perform validation on the incoming response and data.

    For example, a JSON response serializer may check for an acceptable status code (2XX range) and content type (application/json), decoding a valid JSON response into an object.

    See more

    Declaration

    Objective-C

    @protocol LCURLResponseSerialization <NSObject, NSSecureCoding, NSCopying>

    Swift

    protocol LCURLResponseSerialization : NSCopying, NSSecureCoding, NSObjectProtocol
  • Undocumented

    See more

    Declaration

    Objective-C

    @protocol LCRTMWebSocketDelegate <NSObject>
    
    - (void)LCRTMWebSocket:(LCRTMWebSocket *)socket didOpenWithProtocol:(NSString * _Nullable)protocol;
    
    - (void)LCRTMWebSocket:(LCRTMWebSocket *)socket didCloseWithError:(NSError *)error;
    
    - (void)LCRTMWebSocket:(LCRTMWebSocket *)socket didReceiveMessage:(LCRTMWebSocketMessage *)message;
    
    - (void)LCRTMWebSocket:(LCRTMWebSocket *)socket didReceivePing:(NSData * _Nullable)data;
    
    - (void)LCRTMWebSocket:(LCRTMWebSocket *)socket didReceivePong:(NSData * _Nullable)data;
    
    @end

    Swift

    protocol LCRTMWebSocketDelegate : NSObjectProtocol