Class XTCETelecommandContentModel


  • public class XTCETelecommandContentModel
    extends XTCEContainerContentModelBase
    The telecommand content model class encapsulates the pre-processing of an XTCE MetaCommand/BlockMetaCommand into a series of rows suitable for a simple iterator.
    Author:
    David Overeem
    • Constructor Detail

      • XTCETelecommandContentModel

        public XTCETelecommandContentModel​(XTCETelecommand tcObject,
                                           List<XTCESpaceSystem> spaceSystems,
                                           List<XTCEContainerEntryValue> userValues,
                                           boolean showAllConditions)
                                    throws XTCEDatabaseException
        Constructor This constructor creates the telecommand content model object with some optional user values provided in a list. Major problems processing the container will result in an exception, but many problems encountered do not inhibit continuation. These can be inspected by calling getWarnings() after this method to retrieve any non-blocking issue descriptions.
        Parameters:
        tcObject - XTCETelecommand from the database object that contains all the needed entry list items.
        spaceSystems - List of XTCESpaceSystem objects to search for entries on the entry list.
        userValues - List of XTCEContainerEntryValue objects for TC Parameters and/or Arguments that are within the container. This can be null if no values are needed to be passed into conditional processing.
        showAllConditions - boolean indicating if unsatisfied conditional includes should be pursued at depth. This can be a performance hit if there are a large number of conditionals nested.
        Throws:
        XTCEDatabaseException - in the event that the telecommand cannot be completely processed.
      • XTCETelecommandContentModel

        public XTCETelecommandContentModel​(XTCETelecommand tcObject,
                                           List<XTCESpaceSystem> spaceSystems,
                                           BitSet binaryData)
                                    throws XTCEDatabaseException
        Constructor This constructor creates the telecommand content model object with TC argument values evaluated from the binary provided in a BitSet. Major problems processing the container will result in an exception, but many problems encountered do not inhibit continuation. These can be inspected by calling getWarnings() after this method to retrieve any non-blocking issue descriptions.
        Parameters:
        tcObject - XTCETelecommand from the database object that contains all the needed entry list items.
        spaceSystems - List of XTCESpaceSystem objects to search for entries on the entry list.
        binaryData - BitSet containing a map of the binary data that makes up a binary instance of the container. The first bit in the set should be the zeroth bit of the telecommand binary (start bit 0) and may be short in the event that there are trailing zeros.
        Throws:
        XTCEDatabaseException - in the event that the telecommand cannot be completely processed.
    • Method Detail

      • getTelecommandReference

        public XTCETelecommand getTelecommandReference()
        Accessor to get the reference to the XTCETelecommand object that this model represents.
        Returns:
        XTCETelecommand that is represented by this model object.
      • getContainerReference

        public XTCETCContainer getContainerReference()
        Accessor to get the reference to the XTCETCContainer object that this model represents.
        Returns:
        XTCETCContainer that is represented by this model object.
      • processTelecommand

        public final long processTelecommand()
                                      throws XTCEDatabaseException
        This method processes the contents of the entire telecommand into a List of XTCEContainerContentEntry objects.
        Returns:
        long containing the total length of this content/container entry.
        Throws:
        XTCEDatabaseException - thrown in the event that this container cannot be processed.