Begin adding a general purpose handler for telemetry which
extends on the behavior associated with the telemetrySubscriber
by supporting access to historical data as well. WTD-806.
Update spec for TelemetrySubscription to account for the fact
that it initially calls back when the set of telemetry objects
is available (which supports views such as Fixed Position
which want to defer all telemetry-handling responsibility to
the subscription.) WTD-879.
Fire callback from telemetry subscriber when the set of
object references changes. This allows views which use
the subscriber to register one callback, while still
ensuring that they are notified when there is new
information to show. Supports fixed position view, WTD-879.
Merge in work-in-progress for WTD-615 (Fixed Position View)
into topic branch for WTD-889 (a sub-issue of WTD-615, which
has been broken down into discrete chunks to support
development.
Conflicts:
platform/telemetry/src/TelemetrySubscription.js
Implement data structures which support lossless/lossy
behaviors for telemetry subscriptions (that is, allow
users of the telemetrySubscriber to decide whether or not
they are willing to drop updates in favor of only being
notified with the latest available values.) WTD-784.
Add specs for data structures which will support resolution
of WTD-784 by retaining all data not yet received by callbacks
(instead of just the very latest) such that plots can ensure
they do not miss streaming data.
Add a test case for subscriptions which should be handled
losslessly (that is, which should notify subscribers once
per data event, not once per execution cycle.) This
test case reflects the underlying cause for WTD-784.
Allow callback provided when subscribing to telemetry using
telemetrySubscriber to be omitted; this permits usage of
the resulting subscription more directly from controllers,
such as for fixed position view, WTD-615.
Don't try to format non-numeric values; rather, just echo them back
directly. This is to allow simple printing of strings when received
on a telemetry subscription. Performed in the context of WTD-644
(since the WARP Server returns many such strings.)
Add in-line documentation to scripts and methods that
were changed/introduced to support telemetry subscriptions,
which in turn were introduced to support autoflow
tabular views, WTD-614.
Complete test coverage for new scripts added to bundle
platform/telemetry in support of autoflow tabular views,
WTD-614. Specifically, these implement a telemetrySubscriber
service which can be used to watch for updates to telemetry
values associated with a specific domain object.
Add a subscriber service to handle subscribing to
whole sets of telemetry elements via delegation;
this exposes TelemetrySubscription via a service
which can be retrieved via dependency injection.
Supports the use of this variety of subscription
for autoflow tabular views, WTD-614.
Stop polling for updates to telemetry data from
TelemetryController when scope is destroyed.
Addresses some performance issues observed in
WTD-614, autoflow tabular views (although this
view doesn't use TelemetryController directly,
the continuing of this polling in the background
can slow down updates when it is showing.)
Add ability to subscribe/unsubscribe to streaming
telemetry updates. This may be more performant than
polling in some circumstances, and appears necessary
for good performance of autoflow tabular views,
WTD-614.
Move spec for formatting of telemetry values from the
plot bundle to the telemetry bundle, to reflect its
exposure as a reusable service exposed by that bundle.
WTD-599.
Expose telemetryFormatter as a service; additionally, fix
some structural issues to make sure this is passed around
as needed among plot components. WTD-599.
Move implementation of formatter used for display
of domain values out of plot, and into the telemetry
bundle, from which it can be exposed as a general-use
service. WTD-599.
Return the same value from getTelemetryObjects if thes e
haven't changed, to permit this return value to be
watched directly without appearing unstable. Supports
the addition of stacked plot controls, which need
to be conditioned on the number of telemetry objects
present. WTD-625.
Bring in initial state for the platform/telemetry
bundle, which provides general-purpose telemetry
conventions and infrastructure to support creating
domain objects which expose telemetry data.
WTD-575.