Package org.yamcs.yarch.rocksdb
Class RdbTagDb
- java.lang.Object
-
- org.yamcs.yarch.rocksdb.RdbTagDb
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
close the database and release resources the object is unusable after this call.org.yamcs.protobuf.Yamcs.ArchiveTag
deleteTag(long tagTime, int tagId)
Deletes the specified tagorg.yamcs.protobuf.Yamcs.ArchiveTag
getTag(long tagTime, int tagId)
Returns a specific tag, or null if the requested tag does not existvoid
getTags(TimeInterval intv, TagReceiver receiver)
Synchonously gets tags, passing every separate one to the providedTagReceiver
.org.yamcs.protobuf.Yamcs.ArchiveTag
insertTag(org.yamcs.protobuf.Yamcs.ArchiveTag tag)
Inserts a new Tag.org.yamcs.protobuf.Yamcs.ArchiveTag
updateTag(long tagTime, int tagId, org.yamcs.protobuf.Yamcs.ArchiveTag tag)
Updates an existing tag.
-
-
-
Method Detail
-
getTags
public void getTags(TimeInterval intv, TagReceiver receiver) throws IOException
Synchonously gets tags, passing every separate one to the providedTagReceiver
.- Specified by:
getTags
in interfaceTagDb
- Throws:
IOException
-
getTag
public org.yamcs.protobuf.Yamcs.ArchiveTag getTag(long tagTime, int tagId) throws IOException
Returns a specific tag, or null if the requested tag does not exist- Specified by:
getTag
in interfaceTagDb
- Throws:
IOException
-
insertTag
public org.yamcs.protobuf.Yamcs.ArchiveTag insertTag(org.yamcs.protobuf.Yamcs.ArchiveTag tag) throws IOException
Inserts a new Tag. No id should be specified. If it is, it will silently be overwritten, and the new tag will be returned.- Specified by:
insertTag
in interfaceTagDb
- Throws:
IOException
-
updateTag
public org.yamcs.protobuf.Yamcs.ArchiveTag updateTag(long tagTime, int tagId, org.yamcs.protobuf.Yamcs.ArchiveTag tag) throws YamcsException, IOException
Updates an existing tag. The tag is fetched by the specified id throws YamcsException if the tag could not be found.Note that both tagId and oldTagStart need to be specified so that a direct lookup in the internal data structure can be made.
- Specified by:
updateTag
in interfaceTagDb
- Returns:
- the updated tag
- Throws:
YamcsException
IOException
-
deleteTag
public org.yamcs.protobuf.Yamcs.ArchiveTag deleteTag(long tagTime, int tagId) throws IOException, YamcsException
Deletes the specified tag- Specified by:
deleteTag
in interfaceTagDb
- Throws:
YamcsException
- if the id was invalid, or if the tag could not be foundIOException
-
-