Package apple.networkextension
Class NEFilterDataProvider
- java.lang.Object
-
- org.moe.natj.general.NativeObject
-
- org.moe.natj.objc.ObjCObject
-
- apple.NSObject
-
- apple.networkextension.NEProvider
-
- apple.networkextension.NEFilterProvider
-
- apple.networkextension.NEFilterDataProvider
-
- All Implemented Interfaces:
NSObject
public class NEFilterDataProvider extends NEFilterProvider
[@interface] NEFilterDataProvider The NEFilterDataProvider class declares the programmatic interface for an object that evaluates network data flows based on a set of locally-available rules and makes decisions about whether to block or allow the flows.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class apple.networkextension.NEFilterProvider
NEFilterProvider.Block_startFilterWithCompletionHandler, NEFilterProvider.Block_stopFilterWithReasonCompletionHandler
-
Nested classes/interfaces inherited from class apple.networkextension.NEProvider
NEProvider.Block_displayMessageCompletionHandler, NEProvider.Block_sleepWithCompletionHandler
-
Nested classes/interfaces inherited from class apple.NSObject
NSObject.Function_instanceMethodForSelector_ret, NSObject.Function_methodForSelector_ret
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedNEFilterDataProvider(org.moe.natj.general.Pointer peer)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static booleanaccessInstanceVariablesDirectly()static NEFilterDataProvideralloc()static java.lang.ObjectallocWithZone(org.moe.natj.general.ptr.VoidPtr zone)static booleanautomaticallyNotifiesObserversForKey(java.lang.String key)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()static java.lang.StringdebugDescription_static()static java.lang.Stringdescription_static()NEFilterDataVerdicthandleInboundDataCompleteForFlow(NEFilterFlow flow)handleInboundDataCompleteForFlow: This function is called by the framework after all of the inbound data for a flow has been seen by the filter.NEFilterDataVerdicthandleInboundDataFromFlowReadBytesStartOffsetReadBytes(NEFilterFlow flow, long offset, NSData readBytes)handleInboundDataFromFlow:readBytesStartOffset:readBytes: This function is called by the framework when a filtering decision needs to be made about some inbound data that the filter previously requested access to via the NEFilterFlowDataVerdict or the NEFilterNewFlowVerdict.NEFilterNewFlowVerdicthandleNewFlow(NEFilterFlow flow)handleNewFlow: This function is called by the framework when a filtering decision needs to be made about a new network data flow.NEFilterDataVerdicthandleOutboundDataCompleteForFlow(NEFilterFlow flow)handleOutboundDataCompleteForFlow: This function is called by the framework after all of the outbound data for a flow has been seen by the filter.NEFilterDataVerdicthandleOutboundDataFromFlowReadBytesStartOffsetReadBytes(NEFilterFlow flow, long offset, NSData readBytes)handleOutboundDataFromFlow:readBytesStartOffset:readBytes: This function is called by the framework when a filtering decision needs to be made about some outbound data that the filter previously requested access to via the NEFilterFlowDataVerdict or the NEFilterNewFlowVerdict.NEFilterRemediationVerdicthandleRemediationForFlow(NEFilterFlow flow)handleRemediationForFlow: This function is called by the framework after the user requests remediation for a blocked flow.voidhandleRulesChanged()handleRulesChanged This function is called by the framework when -[NEFilterControlProvider notifyRulesChanged] is called.static longhash_static()NEFilterDataProviderinit()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)static NSSet<java.lang.String>keyPathsForValuesAffectingValueForKey(java.lang.String key)static java.lang.Objectnew_objc()static booleanresolveClassMethod(org.moe.natj.objc.SEL sel)static booleanresolveInstanceMethod(org.moe.natj.objc.SEL sel)static voidsetVersion_static(long aVersion)static org.moe.natj.objc.Classsuperclass_static()static longversion_static()-
Methods inherited from class apple.networkextension.NEFilterProvider
filterConfiguration, handleReport, startFilterWithCompletionHandler, stopFilterWithReasonCompletionHandler
-
Methods inherited from class apple.networkextension.NEProvider
createTCPConnectionToEndpointEnableTLSTLSParametersDelegate, createUDPSessionToEndpointFromEndpoint, defaultPath, displayMessageCompletionHandler, sleepWithCompletionHandler, wake
-
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 NEFilterDataProvider 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()
-
handleInboundDataCompleteForFlow
public NEFilterDataVerdict handleInboundDataCompleteForFlow(NEFilterFlow flow)
handleInboundDataCompleteForFlow: This function is called by the framework after all of the inbound data for a flow has been seen by the filter. Subclasses must override this method to return an appropriate pass/block result.- Parameters:
flow- The flow- Returns:
- The final NEFilterFlowDataVerdict verdict for the flow.
-
handleInboundDataFromFlowReadBytesStartOffsetReadBytes
public NEFilterDataVerdict handleInboundDataFromFlowReadBytesStartOffsetReadBytes(NEFilterFlow flow, long offset, NSData readBytes)
handleInboundDataFromFlow:readBytesStartOffset:readBytes: This function is called by the framework when a filtering decision needs to be made about some inbound data that the filter previously requested access to via the NEFilterFlowDataVerdict or the NEFilterNewFlowVerdict. Subclasses must override this method.- Parameters:
flow- The NEFilterFlow from which the data was read.offset- The offset in bytes from the start of the flow's inbound data at which readBytes begins.readBytes- The data that was read. For non-UDP/TCP flows, since data may optionally include the IP header, readBytes includes a 4-bytes NEFilterDataAttribute field preceding the user data. Handler must examine the NEFilterDataAttribute field and handle the data accordingly.- Returns:
- An NEFilterFlowDataVerdict containing the verdict for the flow.
-
handleNewFlow
public NEFilterNewFlowVerdict handleNewFlow(NEFilterFlow flow)
handleNewFlow: This function is called by the framework when a filtering decision needs to be made about a new network data flow. Subclasses must override this method to implement the steps necessary to match the flow against some locally stored rules and return an appropriate verdict.- Parameters:
flow- An NEFilterFlow object containing details about the new flow.- Returns:
- An NEFilterNewFlowVerdict object containing the veridct for the new flow.
-
handleOutboundDataCompleteForFlow
public NEFilterDataVerdict handleOutboundDataCompleteForFlow(NEFilterFlow flow)
handleOutboundDataCompleteForFlow: This function is called by the framework after all of the outbound data for a flow has been seen by the filter. Subclasses must override this method to return an appropriate pass/block result.- Parameters:
flow- The flow- Returns:
- The final NEFilterFlowDataVerdict verdict for the flow.
-
handleOutboundDataFromFlowReadBytesStartOffsetReadBytes
public NEFilterDataVerdict handleOutboundDataFromFlowReadBytesStartOffsetReadBytes(NEFilterFlow flow, long offset, NSData readBytes)
handleOutboundDataFromFlow:readBytesStartOffset:readBytes: This function is called by the framework when a filtering decision needs to be made about some outbound data that the filter previously requested access to via the NEFilterFlowDataVerdict or the NEFilterNewFlowVerdict. Subclasses must override this method.- Parameters:
flow- The NEFilterFlow from which the data was read.offset- The offset in bytes from the start of the flow's outbound data at which readBytes begins.readBytes- The data that was read. For non-UDP/TCP flows, since data may optionally include the IP header, readBytes includes a 4-bytes NEFilterDataAttribute field preceding the user data. Handler must examine the NEFilterDataAttribute field and handle the data accordingly.- Returns:
- An NEFilterFlowDataVerdict containing the verdict for the flow.
-
handleRemediationForFlow
public NEFilterRemediationVerdict handleRemediationForFlow(NEFilterFlow flow)
handleRemediationForFlow: This function is called by the framework after the user requests remediation for a blocked flow. Subclasses must override this method to return an appropriate pass/block result.- Parameters:
flow- The flow- Returns:
- The final NEFilterRemediationVerdict verdict for the flow.
-
handleRulesChanged
public void handleRulesChanged()
handleRulesChanged This function is called by the framework when -[NEFilterControlProvider notifyRulesChanged] is called. Subclasses should override this method to reload new rules from disk.
-
init
public NEFilterDataProvider init()
- Overrides:
initin classNEFilterProvider
-
-