Package apple.homekit

Class HMTimerTrigger

  • All Implemented Interfaces:
    NSObject

    public class HMTimerTrigger
    extends HMTrigger
    Timer based trigger. This class represents a trigger that is based on timers.
    • Constructor Detail

      • HMTimerTrigger

        protected HMTimerTrigger​(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)
      • 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()
      • 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()
      • fireDate

        public NSDate fireDate()
        Specifies when, in an absolute time, the trigger should fire the first time. Timer triggers are only set at the top of the minute. When the timer trigger fires, it will typically fire within 1 minute of the scheduled fire date or calculated recurrence fire date, depending on how the system is managing its resources.
      • initWithNameFireDateTimeZoneRecurrenceRecurrenceCalendar

        public HMTimerTrigger initWithNameFireDateTimeZoneRecurrenceRecurrenceCalendar​(java.lang.String name,
                                                                                       NSDate fireDate,
                                                                                       NSTimeZone timeZone,
                                                                                       NSDateComponents recurrence,
                                                                                       NSCalendar recurrenceCalendar)
        Initialize a new HMTimerTrigger object. Validity checks are performed when the trigger is added to the home and the NSError in the completion block for addTrigger: method indicates the reason for the failure: HMErrorCodeDateMustBeOnSpecifiedBoundaries is returned if the seconds/nanoseconds fields in recurrence interval or seconds field in fireDate have a value other than 0. HMErrorCodeRecurrenceTooSmall is returned if recurrence interval is less than 5 minutes. HMErrorCodeRecurrenceTooLarge is returned if recurrence interval is greater than 5 weeks. HMErrorCodeFireDateInPast is returned if recurrence is nil and fireDate is in the past.
        Parameters:
        name - Name for the trigger.
        fireDate - The initial fire date for the timer trigger. The seconds value must be zero. HMErrorCodeDateMustBeOnSpecifiedBoundaries will be returned when adding the trigger to a home if the fireDate includes a seconds value other than 0.
        timeZone - The time zone of the initial fire date. A value of nil indicates default timezone.
        recurrence - The recurrence interval to fire the trigger. A value of nil indicates that the trigger is non-repeating. The minimum reccurence interval is 5 minutes, maximum recurrence interval is 5 weeks and the recurrence interval must be specified in multiples of whole minutes.
        recurrenceCalendar - The calendar corresponding to a recurring timer trigger. May be nil.
      • recurrence

        public NSDateComponents recurrence()
        The date components that specify how a trigger is to be repeated. This value must be nil if the trigger should not repeat. The date component values are relative to the initial fire date of the trigger. If the calendar value of the recurrence is nil, the current calendar will be used to calculate the recurrence interval. Recurrence example: if a trigger should repeat every hour, set the 'hour' property of the recurrence to 1. The minimum recurrence interval is 5 minutes, maximum recurrence interval is 5 weeks and the recurrence interval must be specified in multiples of whole minutes. Examples are 5 minutes, 6 minutes, 1 day, 2 weeks.
      • recurrenceCalendar

        public NSCalendar recurrenceCalendar()
        The calendar corresponding to a recurring timer trigger.
      • timeZone

        public NSTimeZone timeZone()
        Set the time zone to interpret the fire date in. If this value is nil and the user switches time zones, the time the trigger is fired will be adjusted to account for the time zone change. If this value is non-nil, the trigger will fire at the specified time in the specific time zone.
      • updateFireDateCompletionHandler

        public void updateFireDateCompletionHandler​(NSDate fireDate,
                                                    HMTimerTrigger.Block_updateFireDateCompletionHandler completion)
        This method is used to change the fire date of a timer trigger.
        Parameters:
        fireDate - New fire date for the trigger. The seconds value must be zero.
        completion - Block that is invoked once the request is processed. The NSError provides more information on the status of the request, error will be nil on success. HMErrorCodeDateMustBeOnSpecifiedBoundaries will be returned if the fireDate includes a seconds value other than 0.
      • updateRecurrenceCompletionHandler

        public void updateRecurrenceCompletionHandler​(NSDateComponents recurrence,
                                                      HMTimerTrigger.Block_updateRecurrenceCompletionHandler completion)
        This method is used to change the recurrence interval for a timer trigger.
        Parameters:
        recurrence - New recurrence interval for the trigger. Passing a nil indicates that the trigger is non-repeating. The minimum recurrence interval is 5 minutes, maximum recurrence interval is 5 weeks and the recurrence interval must be specified in multiples of whole minutes.
        completion - Block that is invoked once the request is processed. The NSError provides more information on the status of the request: HMErrorCodeDateMustBeOnSpecifiedBoundaries is returned if the seconds/nanoseconds fields have a value other than 0; HMErrorCodeRecurrenceTooSmall is returned if the recurrence interval is less than 5 minutes; HMErrorCodeRecurrenceTooLarge is returned if the recurrence interval is greater than 5 weeks. * error will be nil on success.
      • updateTimeZoneCompletionHandler

        public void updateTimeZoneCompletionHandler​(NSTimeZone timeZone,
                                                    HMTimerTrigger.Block_updateTimeZoneCompletionHandler completion)
        This method is used to change the time zone of the fire date of a timer trigger.
        Parameters:
        timeZone - New time zone for the trigger. Passing a nil indicates that the default (system) timezone is used.
        completion - Block that is invoked once the request is processed. The NSError provides more information on the status of the request, error will be nil on success.