Package org.yamcs.protobuf
Class AbstractParameterArchiveApi<T>
java.lang.Object
org.yamcs.protobuf.AbstractParameterArchiveApi<T>
- All Implemented Interfaces:
Api<T>
- Direct Known Subclasses:
ParameterArchiveApi
,ParameterArchiveApiClient
@Generated(value="org.yamcs.protoc.ServiceGenerator",
date="2024-03-29T11:06:17.252592251Z")
public abstract class AbstractParameterArchiveApi<T>
extends Object
implements Api<T>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal void
callMethod
(com.google.protobuf.Descriptors.MethodDescriptor method, T ctx, com.google.protobuf.Message request, Observer<com.google.protobuf.Message> future) final Observer<com.google.protobuf.Message>
callMethod
(com.google.protobuf.Descriptors.MethodDescriptor method, T ctx, Observer<com.google.protobuf.Message> future) abstract void
getArchivedParameterGroup
(T ctx, GetArchivedParameterGroupRequest request, Observer<ArchivedParameterGroupResponse> observer) For a given group id, get the list of parameters which are part of the groupabstract void
getArchivedParameterSegments
(T ctx, GetArchivedParameterSegmentsRequest request, Observer<ArchivedParameterSegmentsResponse> observer) For a given parameter id, get the list of segments available for that parameter.abstract void
getArchivedParametersInfo
(T ctx, GetArchivedParametersInfoRequest request, Observer<ArchivedParametersInfoResponse> observer) Get information about the archived parameters.final com.google.protobuf.Descriptors.ServiceDescriptor
abstract void
getParameterRanges
(T ctx, GetParameterRangesRequest request, Observer<Pvalue.Ranges> observer) Get parameter ranges A range is a tuple ``(start, stop, value, count)`` that represents the time interval for which the parameter has been steadily coming in with the same value.abstract void
getParameterSamples
(T ctx, Archive.GetParameterSamplesRequest request, Observer<Pvalue.TimeSeries> observer) Get parameter samples This divides the query interval in a number of intervals and returns aggregated statistics (max, min, avg) about each interval.final com.google.protobuf.Message
getRequestPrototype
(com.google.protobuf.Descriptors.MethodDescriptor method) final com.google.protobuf.Message
getResponsePrototype
(com.google.protobuf.Descriptors.MethodDescriptor method) abstract void
listParameterHistory
(T ctx, Archive.ListParameterHistoryRequest request, Observer<Archive.ListParameterHistoryResponse> observer) List parameter historyabstract void
purge
(T ctx, PurgeRequest request, Observer<com.google.protobuf.Empty> observer) Removes all the parameter archive data and related metadata.abstract void
rebuildRange
(T ctx, RebuildRangeRequest request, Observer<com.google.protobuf.Empty> observer) Rebuild range The back filler has to be enabled for this purpose.
-
Constructor Details
-
AbstractParameterArchiveApi
public AbstractParameterArchiveApi()
-
-
Method Details
-
rebuildRange
public abstract void rebuildRange(T ctx, RebuildRangeRequest request, Observer<com.google.protobuf.Empty> observer) Rebuild range The back filler has to be enabled for this purpose. The back filling process does not remove data but just overwrites it. That means that if the parameter replay returns less parameters than originally stored in the archive, the old parameters will still be found in the archive. It also means that if a replay returns the parameter of a different type than originally stored, the old ones will still be stored. This is because the parameter archive treats parameter with the same name but different type as different parameters. Each of them is given an id and the id is stored in the archive.
-
getParameterSamples
public abstract void getParameterSamples(T ctx, Archive.GetParameterSamplesRequest request, Observer<Pvalue.TimeSeries> observer) Get parameter samples This divides the query interval in a number of intervals and returns aggregated statistics (max, min, avg) about each interval. This operation is useful when making high-level overviews (such as plots) of a parameter's value over large time intervals without having to retrieve each and every individual parameter value. By default this operation fetches data from the parameter archive and/or parameter cache. If these services are not configured, you can still get correct results by specifying the option ``source=replay`` as detailed below.
-
getParameterRanges
public abstract void getParameterRanges(T ctx, GetParameterRangesRequest request, Observer<Pvalue.Ranges> observer) Get parameter ranges A range is a tuple ``(start, stop, value, count)`` that represents the time interval for which the parameter has been steadily coming in with the same value. This request is useful for retrieving an overview for parameters that change unfrequently in a large time interval. For example an on/off status of a device, or some operational status. Two consecutive ranges containing the same value will be returned if there was a gap in the data. The gap is determined according to the parameter expiration time configured in the Mission Database.
-
listParameterHistory
public abstract void listParameterHistory(T ctx, Archive.ListParameterHistoryRequest request, Observer<Archive.ListParameterHistoryResponse> observer) List parameter history
-
getArchivedParametersInfo
public abstract void getArchivedParametersInfo(T ctx, GetArchivedParametersInfoRequest request, Observer<ArchivedParametersInfoResponse> observer) Get information about the archived parameters. Each combination of (parameter name, raw type, engineering type) is assigned a unique parameter id. The parameters are grouped such that the samples of all parameters from one group have the same timestamp. For example all parameters extracted from one TM packet have usually the same timestamp and are part of the same group. Each group is assigned a unique group id. A parameter can be part of multiple groups. For instance a parameter appearing in the header of a packet is part of all groups made by inherited containers (i.e. each packet with that header will compose another group). For each group, the parameter archive stores one common record for the timestamps and individual records for the raw and engineering values of each parameter. If a parameter appears in multiple groups, retrieving its value means combining (time-based merge operation). The records beloging to the groups in which the parameter appears. The response to this method contains the parameter id, name, engineering type, raw type and the groups of which this parameter is part of.
-
getArchivedParameterSegments
public abstract void getArchivedParameterSegments(T ctx, GetArchivedParameterSegmentsRequest request, Observer<ArchivedParameterSegmentsResponse> observer) For a given parameter id, get the list of segments available for that parameter. A segment contains multiple samples (maximum ~70 minutes) of the same parameter.
-
getArchivedParameterGroup
public abstract void getArchivedParameterGroup(T ctx, GetArchivedParameterGroupRequest request, Observer<ArchivedParameterGroupResponse> observer) For a given group id, get the list of parameters which are part of the group
-
purge
public abstract void purge(T ctx, PurgeRequest request, Observer<com.google.protobuf.Empty> observer) Removes all the parameter archive data and related metadata. All the filling operations are stopped before and started after the purge. The rebuild operation has to be called to rebuild the past segments of the archive. Starting with Yamcs 5.9.0 the parameter archive is stored into a different column family paramter_archive. Storing data into a separate column family gives better performance and the parameter archive rebuild operations are less disturbing for the other data (TM, TC, Events...). If the archive is from a previous version of Yamcs, the purge/rebuild can be used to move the parameter archive from the default column family to the separate column family.
-
getDescriptorForType
public final com.google.protobuf.Descriptors.ServiceDescriptor getDescriptorForType()- Specified by:
getDescriptorForType
in interfaceApi<T>
-
getRequestPrototype
public final com.google.protobuf.Message getRequestPrototype(com.google.protobuf.Descriptors.MethodDescriptor method) - Specified by:
getRequestPrototype
in interfaceApi<T>
-
getResponsePrototype
public final com.google.protobuf.Message getResponsePrototype(com.google.protobuf.Descriptors.MethodDescriptor method) - Specified by:
getResponsePrototype
in interfaceApi<T>
-
callMethod
public final void callMethod(com.google.protobuf.Descriptors.MethodDescriptor method, T ctx, com.google.protobuf.Message request, Observer<com.google.protobuf.Message> future) - Specified by:
callMethod
in interfaceApi<T>
-
callMethod
public final Observer<com.google.protobuf.Message> callMethod(com.google.protobuf.Descriptors.MethodDescriptor method, T ctx, Observer<com.google.protobuf.Message> future) - Specified by:
callMethod
in interfaceApi<T>
-