Class NSURLSessionWebSocketTask

  • All Implemented Interfaces:
    NSCopying, NSProgressReporting, NSObject

    public class NSURLSessionWebSocketTask
    extends NSURLSessionTask
    A WebSocket task can be created with a ws or wss url. A client can also provide a list of protocols it wishes to advertise during the WebSocket handshake phase. Once the handshake is successfully completed the client will be notified through an optional delegate. All reads and writes enqueued before the completion of the handshake will be queued up and executed once the hanshake succeeds. Before the handshake completes, the client can be called to handle redirection or authentication using the same delegates as NSURLSessionTask. WebSocket task will also provide support for cookies and will store cookies to the cookie storage on the session and will attach cookies to outgoing HTTP handshake requests.
    • Constructor Detail

      • NSURLSessionWebSocketTask

        protected NSURLSessionWebSocketTask​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • allocWithZone

        public static java.lang.Object allocWithZone​(org.moe.natj.general.ptr.VoidPtr zone)
      • automaticallyNotifiesObserversForKey

        public static boolean automaticallyNotifiesObserversForKey​(java.lang.String key)
      • cancelPreviousPerformRequestsWithTarget

        public static void cancelPreviousPerformRequestsWithTarget​(java.lang.Object aTarget)
      • cancelPreviousPerformRequestsWithTargetSelectorObject

        public static void cancelPreviousPerformRequestsWithTargetSelectorObject​(java.lang.Object aTarget,
                                                                                 org.moe.natj.objc.SEL aSelector,
                                                                                 java.lang.Object anArgument)
      • cancelWithCloseCodeReason

        public void cancelWithCloseCodeReason​(long closeCode,
                                              NSData reason)
        Sends a close frame with the given closeCode. An optional reason can be provided while sending the close frame. Simply calling cancel on the task will result in a cancellation frame being sent without any reason.
      • classFallbacksForKeyedArchiver

        public static NSArray<java.lang.String> classFallbacksForKeyedArchiver()
      • classForKeyedUnarchiver

        public static org.moe.natj.objc.Class classForKeyedUnarchiver()
      • closeCode

        public long closeCode()
        A task can be queried for it's close code at any point. When the task is not closed, it will be set to NSURLSessionWebSocketCloseCodeInvalid
      • closeReason

        public NSData closeReason()
        A task can be queried for it's close reason at any point. A nil value indicates no closeReason or that the task is still running
      • debugDescription_static

        public static java.lang.String debugDescription_static()
      • description_static

        public static java.lang.String description_static()
      • hash_static

        public static long hash_static()
      • instanceMethodSignatureForSelector

        public static NSMethodSignature instanceMethodSignatureForSelector​(org.moe.natj.objc.SEL aSelector)
      • instancesRespondToSelector

        public static boolean instancesRespondToSelector​(org.moe.natj.objc.SEL aSelector)
      • isSubclassOfClass

        public static boolean isSubclassOfClass​(org.moe.natj.objc.Class aClass)
      • keyPathsForValuesAffectingValueForKey

        public static NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(java.lang.String key)
      • maximumMessageSize

        public long maximumMessageSize()
        The maximum number of bytes to be buffered before erroring out. This includes the sum of all bytes from continuation frames. Recieve calls will error out if this value is reached
      • new_objc

        public static java.lang.Object new_objc()
      • receiveMessageWithCompletionHandler

        public void receiveMessageWithCompletionHandler​(NSURLSessionWebSocketTask.Block_receiveMessageWithCompletionHandler completionHandler)
        Reads a WebSocket message once all the frames of the message are available. If the maximumMessage size is hit while buffering the frames, the receiveMessage call will error out and all outstanding work will also fail resulting in the end of the task.
      • resolveClassMethod

        public static boolean resolveClassMethod​(org.moe.natj.objc.SEL sel)
      • resolveInstanceMethod

        public static boolean resolveInstanceMethod​(org.moe.natj.objc.SEL sel)
      • sendMessageCompletionHandler

        public void sendMessageCompletionHandler​(NSURLSessionWebSocketMessage message,
                                                 NSURLSessionWebSocketTask.Block_sendMessageCompletionHandler completionHandler)
        Sends a WebSocket message. If an error occurs, any outstanding work will also fail. Note that invocation of the completion handler does not guarantee that the remote side has received all the bytes, only that they have been written to the kernel.
      • sendPingWithPongReceiveHandler

        public void sendPingWithPongReceiveHandler​(NSURLSessionWebSocketTask.Block_sendPingWithPongReceiveHandler pongReceiveHandler)
        Sends a ping frame from the client side. The pongReceiveHandler is invoked when the client receives a pong from the server endpoint. If a connection is lost or an error occurs before receiving the pong from the endpoint, the pongReceiveHandler block will be invoked with an error. Note - the pongReceiveHandler will always be called in the order in which the pings were sent.
      • setMaximumMessageSize

        public void setMaximumMessageSize​(long value)
        The maximum number of bytes to be buffered before erroring out. This includes the sum of all bytes from continuation frames. Recieve calls will error out if this value is reached
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • superclass_static

        public static org.moe.natj.objc.Class superclass_static()
      • version_static

        public static long version_static()