class

Watch

const abstract class Watch : Obj

Watch is a subscription to a set of records in a project database. It provides an efficient mechanism to poll for changes. Also see Watches.

fields lease

The lease determines the max duration which may elapse without a renew call before the watch is expired

methods add

Convenience for addAll([id])

toStr

Debug string

rt

Runtime associated with this watch

addGrid

Convenience for addAll for id column of each row

isEmpty

Return if the list of recs currently subscribed is empty

poll

Get all the records which have been modified since the given ticks

list

List the rec ids currently subscribed by this watch

remove

Convenience for removeAll([id])

dis

Debug display string used during watchOpen

removeAll

Remove the given records from this watch

isClosed

Return if this watch has been closed

addAll

Add the given records to this watch

equals

Equality based on reference equality

id

Identifier which uniquely identifies this watch in the project

close

Close this watch and unsubscribe all its records

hash

Identity hash

removeGrid

Convenience for removeAll for id column of each row

add Void add(Ref id)

Convenience for addAll([id])

addAll abstract Void addAll(Ref[] ids)

Add the given records to this watch. Silently ignore any ids already subscribed by this watch, not found in the database, or which are inaccessible to the current user. Raise exception if watch is closed. This call renews the lease.

addGrid Void addGrid(Grid grid)

Convenience for addAll for id column of each row. If any row is missing an id tag then it is silently skipped.

close abstract Void close()

Close this watch and unsubscribe all its records. If watch is already closed, this method is a no op.

dis abstract Str dis()

Debug display string used during watchOpen

equals Bool equals(Obj? that)

Equality based on reference equality

hash Int hash()

Identity hash

id abstract Str id()

Identifier which uniquely identifies this watch in the project

isClosed abstract Bool isClosed()

Return if this watch has been closed

isEmpty abstract Bool isEmpty()

Return if the list of recs currently subscribed is empty.

lease abstract Duration : lease

The lease determines the max duration which may elapse without a renew call before the watch is expired. The default is 1min. Clients can attempt to tune the lease time by setting this field, but no guarantee is made that the framework will honor extremely long lease times.

list abstract Ref[] list()

List the rec ids currently subscribed by this watch. Raise exception if watch is closed.

poll abstract Dict[] poll(Duration ticks)

Get all the records which have been modified since the given ticks. An empty list is returned if no changes have been made to the watched records since ticks. There is no ordering to the resulting list. This method automatically renews the lease and keeps track of the last poll ticks. Also see Watches.

remove Void remove(Ref id)

Convenience for removeAll([id])

removeAll abstract Void removeAll(Ref[] ids)

Remove the given records from this watch. Any ids not currently subscribed by this watch are silently ignored. Raise exception if watch is closed. This call renews the lease.

removeGrid Void removeGrid(Grid grid)

Convenience for removeAll for id column of each row

rt abstract Runtime rt()

Runtime associated with this watch

toStr Str toStr()

Debug string

Haxall 4.0.5 ∙ 24-Feb-2026 14:33 EST