Package apple.networkextension
Class NWUDPSession
- java.lang.Object
-
- org.moe.natj.general.NativeObject
-
- org.moe.natj.objc.ObjCObject
-
- apple.NSObject
-
- apple.networkextension.NWUDPSession
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceNWUDPSession.Block_setReadHandlerMaxDatagramsstatic interfaceNWUDPSession.Block_writeDatagramCompletionHandlerstatic interfaceNWUDPSession.Block_writeMultipleDatagramsCompletionHandler-
Nested classes/interfaces inherited from class apple.NSObject
NSObject.Function_instanceMethodForSelector_ret, NSObject.Function_methodForSelector_ret
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedNWUDPSession(org.moe.natj.general.Pointer peer)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static booleanaccessInstanceVariablesDirectly()static NWUDPSessionalloc()static java.lang.ObjectallocWithZone(org.moe.natj.general.ptr.VoidPtr zone)static booleanautomaticallyNotifiesObserversForKey(java.lang.String key)voidcancel()cancel Move into the NWUDPSessionStateCancelled state.static voidcancelPreviousPerformRequestsWithTarget(java.lang.Object aTarget)static voidcancelPreviousPerformRequestsWithTargetSelectorObject(java.lang.Object aTarget, org.moe.natj.objc.SEL aSelector, java.lang.Object anArgument)static NSArray<java.lang.String>classFallbacksForKeyedArchiver()static org.moe.natj.objc.ClassclassForKeyedUnarchiver()NWPathcurrentPath()[@property] currentPath The current evaluated path for the resolvedEndpoint.static java.lang.StringdebugDescription_static()static java.lang.Stringdescription_static()NWEndpointendpoint()[@property] endpoint The provided endpoint.booleanhasBetterPath()[@property] hasBetterPath YES if there is another path available that is preferred over the currentPath.static longhash_static()NWUDPSessioninit()NWUDPSessioninitWithUpgradeForSession(NWUDPSession session)initWithUpgradeForSession: This convenience initializer can be used to create a new session based on the original session's endpoint and parameters.static NSObject.Function_instanceMethodForSelector_retinstanceMethodForSelector(org.moe.natj.objc.SEL aSelector)static NSMethodSignatureinstanceMethodSignatureForSelector(org.moe.natj.objc.SEL aSelector)static booleaninstancesRespondToSelector(org.moe.natj.objc.SEL aSelector)static booleanisSubclassOfClass(org.moe.natj.objc.Class aClass)booleanisViable()[@property] viable YES if the connection can read and write data, NO otherwise.static NSSet<java.lang.String>keyPathsForValuesAffectingValueForKey(java.lang.String key)longmaximumDatagramLength()[@property] maximumDatagramLength The maximum size of a datagram to be written currently.static java.lang.Objectnew_objc()static booleanresolveClassMethod(org.moe.natj.objc.SEL sel)NWEndpointresolvedEndpoint()[@property] resolvedEndpoint The currently targeted remote endpoint.static booleanresolveInstanceMethod(org.moe.natj.objc.SEL sel)voidsetReadHandlerMaxDatagrams(NWUDPSession.Block_setReadHandlerMaxDatagrams handler, long maxDatagrams)setReadHandler:maxDatagrams Set a read handler for datagrams.static voidsetVersion_static(long aVersion)longstate()[@property] state The current state of the UDP session.static org.moe.natj.objc.Classsuperclass_static()voidtryNextResolvedEndpoint()tryNextResolvedEndpoint Mark the current value of resolvedEndpoint as unusable, and try to switch to the next available endpoint.static longversion_static()voidwriteDatagramCompletionHandler(NSData datagram, NWUDPSession.Block_writeDatagramCompletionHandler completionHandler)writeDatagram:completionHandler Write a single datagram.voidwriteMultipleDatagramsCompletionHandler(NSArray<? extends NSData> datagramArray, NWUDPSession.Block_writeMultipleDatagramsCompletionHandler completionHandler)writeMultipleDatagrams:completionHandler Write multiple datagrams.-
Methods inherited from class apple.NSObject
accessibilityActivate, accessibilityActivationPoint, accessibilityAssistiveTechnologyFocusedIdentifiers, accessibilityAttributedHint, accessibilityAttributedLabel, accessibilityAttributedUserInputLabels, accessibilityAttributedValue, accessibilityContainerType, accessibilityCustomActions, accessibilityCustomRotors, accessibilityDecrement, accessibilityDragSourceDescriptors, accessibilityDropPointDescriptors, accessibilityElementAtIndex, accessibilityElementCount, accessibilityElementDidBecomeFocused, accessibilityElementDidLoseFocus, accessibilityElementIsFocused, accessibilityElements, accessibilityElementsHidden, accessibilityFrame, accessibilityHint, accessibilityIncrement, accessibilityLabel, accessibilityLanguage, accessibilityNavigationStyle, accessibilityPath, accessibilityPerformEscape, accessibilityPerformMagicTap, accessibilityRespondsToUserInteraction, accessibilityScroll, accessibilityTextualContext, accessibilityTraits, accessibilityUserInputLabels, accessibilityValue, accessibilityViewIsModal, addObserverForKeyPathOptionsContext, attemptRecoveryFromErrorOptionIndex, attemptRecoveryFromErrorOptionIndexDelegateDidRecoverSelectorContextInfo, autoContentAccessingProxy, awakeAfterUsingCoder, awakeFromNib, class_objc, classForCoder, classForKeyedArchiver, copy, dealloc, debugDescription, description, dictionaryWithValuesForKeys, didChangeValueForKey, didChangeValueForKeyWithSetMutationUsingObjects, didChangeValuesAtIndexesForKey, doesNotRecognizeSelector, fileManagerShouldProceedAfterError, fileManagerWillProcessPath, finalize_objc, forwardingTargetForSelector, forwardInvocation, hash, indexOfAccessibilityElement, isAccessibilityElement, isEqual, isKindOfClass, isMemberOfClass, isProxy, methodForSelector, methodSignatureForSelector, mutableArrayValueForKey, mutableArrayValueForKeyPath, mutableCopy, mutableOrderedSetValueForKey, mutableOrderedSetValueForKeyPath, mutableSetValueForKey, mutableSetValueForKeyPath, observationInfo, observeValueForKeyPathOfObjectChangeContext, performSelector, performSelectorInBackgroundWithObject, performSelectorOnMainThreadWithObjectWaitUntilDone, performSelectorOnMainThreadWithObjectWaitUntilDoneModes, performSelectorOnThreadWithObjectWaitUntilDone, performSelectorOnThreadWithObjectWaitUntilDoneModes, performSelectorWithObject, performSelectorWithObjectAfterDelay, performSelectorWithObjectAfterDelayInModes, performSelectorWithObjectWithObject, prepareForInterfaceBuilder, provideImageDataBytesPerRowOrigin_Size_UserInfo, removeObserverForKeyPath, removeObserverForKeyPathContext, replacementObjectForCoder, replacementObjectForKeyedArchiver, respondsToSelector, self, setAccessibilityActivationPoint, setAccessibilityAttributedHint, setAccessibilityAttributedLabel, setAccessibilityAttributedUserInputLabels, setAccessibilityAttributedValue, setAccessibilityContainerType, setAccessibilityCustomActions, setAccessibilityCustomRotors, setAccessibilityDragSourceDescriptors, setAccessibilityDropPointDescriptors, setAccessibilityElements, setAccessibilityElementsHidden, setAccessibilityFrame, setAccessibilityHint, setAccessibilityLabel, setAccessibilityLanguage, setAccessibilityNavigationStyle, setAccessibilityPath, setAccessibilityRespondsToUserInteraction, setAccessibilityTextualContext, setAccessibilityTraits, setAccessibilityUserInputLabels, setAccessibilityValue, setAccessibilityViewIsModal, setIsAccessibilityElement, setNilValueForKey, setObservationInfo, setShouldGroupAccessibilityChildren, setValueForKey, setValueForKeyPath, setValueForUndefinedKey, setValuesForKeysWithDictionary, shouldGroupAccessibilityChildren, superclass, validateValueForKeyError, validateValueForKeyPathError, valueForKey, valueForKeyPath, valueForUndefinedKey, willChangeValueForKey, willChangeValueForKeyWithSetMutationUsingObjects, willChangeValuesAtIndexesForKey
-
-
-
-
Method Detail
-
accessInstanceVariablesDirectly
public static boolean accessInstanceVariablesDirectly()
-
alloc
public static NWUDPSession alloc()
-
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)
-
classFallbacksForKeyedArchiver
public static NSArray<java.lang.String> classFallbacksForKeyedArchiver()
-
classForKeyedUnarchiver
public static org.moe.natj.objc.Class classForKeyedUnarchiver()
-
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()
-
instanceMethodForSelector
public static NSObject.Function_instanceMethodForSelector_ret instanceMethodForSelector(org.moe.natj.objc.SEL aSelector)
-
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)
-
new_objc
public static java.lang.Object new_objc()
-
resolveClassMethod
public static boolean resolveClassMethod(org.moe.natj.objc.SEL sel)
-
resolveInstanceMethod
public static boolean resolveInstanceMethod(org.moe.natj.objc.SEL sel)
-
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()
-
cancel
public void cancel()
cancel Move into the NWUDPSessionStateCancelled state. The connection will be terminated, and all handlers will be cancelled.
-
currentPath
public NWPath currentPath()
[@property] currentPath The current evaluated path for the resolvedEndpoint. Use KVO to watch for changes.
-
endpoint
public NWEndpoint endpoint()
[@property] endpoint The provided endpoint.
-
hasBetterPath
public boolean hasBetterPath()
[@property] hasBetterPath YES if there is another path available that is preferred over the currentPath. To take advantage of this path, create a new UDPSession. Use KVO to watch for changes.
-
init
public NWUDPSession init()
-
initWithUpgradeForSession
public NWUDPSession initWithUpgradeForSession(NWUDPSession session)
initWithUpgradeForSession: This convenience initializer can be used to create a new session based on the original session's endpoint and parameters. The application should create an NWUDPSession and watch the "hasBetterPath" property. When this property is YES, it should call initWithUpgradeForSession: to create a new session, with the goal to start transferring data on the new better path as soon as possible to reduce power and potentially monetary cost. When the new "upgrade" session becomes ready and when the application wraps up the previous application session on the original session, the application can start using the new "upgrade" session and tear down the original one.- Parameters:
session- The original session from which the application will upgrade- Returns:
- An initialized NWUDPSession object.
-
isViable
public boolean isViable()
[@property] viable YES if the connection can read and write data, NO otherwise. Use KVO to watch this property.
-
maximumDatagramLength
public long maximumDatagramLength()
[@property] maximumDatagramLength The maximum size of a datagram to be written currently. If a datagram is written with a longer length, the datagram may be fragmented or encounter an error. Note that this value is not guaranteed to be the maximum datagram length for end-to-end communication across the network. Use KVO to watch for changes.
-
resolvedEndpoint
public NWEndpoint resolvedEndpoint()
[@property] resolvedEndpoint The currently targeted remote endpoint. Use KVO to watch for changes.
-
setReadHandlerMaxDatagrams
public void setReadHandlerMaxDatagrams(NWUDPSession.Block_setReadHandlerMaxDatagrams handler, long maxDatagrams)
setReadHandler:maxDatagrams Set a read handler for datagrams. Reads will be scheduled by the system, so this method only needs to be called once for a session.- Parameters:
handler- A handler called when datagrams have been read, or when an error has occurred.maxDatagrams- The maximum number of datagrams to send to the handler.
-
state
public long state()
[@property] state The current state of the UDP session. If the state is NWUDPSessionStateReady, then the connection is eligible for reading and writing. The state will be NWUDPSessionStateFailed if the endpoint could not be resolved, or all endpoints have been rejected. Use KVO to watch for changes.
-
tryNextResolvedEndpoint
public void tryNextResolvedEndpoint()
tryNextResolvedEndpoint Mark the current value of resolvedEndpoint as unusable, and try to switch to the next available endpoint. This should be used when the caller has attempted to communicate with the current resolvedEndpoint, and the caller has determined that it is unusable. If there are no other resolved endpoints, the session will move to the failed state.
-
writeDatagramCompletionHandler
public void writeDatagramCompletionHandler(NSData datagram, NWUDPSession.Block_writeDatagramCompletionHandler completionHandler)
writeDatagram:completionHandler Write a single datagram. Callers should wait until the completionHandler is executed before issuing another write.- Parameters:
datagram- An NSData containing the datagram to write.completionHandler- A handler called when the write request has either succeeded or failed.
-
writeMultipleDatagramsCompletionHandler
public void writeMultipleDatagramsCompletionHandler(NSArray<? extends NSData> datagramArray, NWUDPSession.Block_writeMultipleDatagramsCompletionHandler completionHandler)
writeMultipleDatagrams:completionHandler Write multiple datagrams. Callers should wait until the completionHandler is executed before issuing another write.- Parameters:
datagramArray- An NSArray of NSData objects, containing the ordered list datagrams to write.completionHandler- A handler called when the write request has either succeeded or failed.
-
-