Class V7Loader

  • All Implemented Interfaces:
    SpaceSystemLoader

    public class V7Loader
    extends V7LoaderBase
    This class loads database from excel spreadsheets.

    Note about handling of data types: before Yamcs 5, the parameter and argument types were created anonymous. They were not stored into the XtceDb structures. An attempt to do so has failed because in XTCE the data types include the alarms and command argument validity whereas in the XTCE they are not defined in the DataType sheets. In addition in the spreadhseet we have one definition which can be shared between TC and TM.

    Starting with Yamcs 5, we do register the types in the XtceDb and we duplicate them for each parameter/command that defines alarms or validity ranges.

    The name of the duplicated types is <type_name_from_DataTypes_sheet>_<parameter_name> for parameters and <type_name_from_DataTypes_sheet>_<command_name>_<argument_name> for command arguments.

    • Constructor Detail

      • V7Loader

        public V7Loader​(String filename)
      • V7Loader

        public V7Loader​(YConfiguration config,
                        jxl.Workbook workbook)
    • Method Detail

      • getConfigName

        public String getConfigName()
        Description copied from interface: SpaceSystemLoader
        The filename used to save the database after all the loaders have loaded it, is based on a concatenation of the config names returned by the loaders. Thus if a loader can have multiple versions of the database, they should be saved in multiple files.
        Specified by:
        getConfigName in interface SpaceSystemLoader
        Overrides:
        getConfigName in class AbstractFileLoader
        Returns:
        a string to be used as the filename where the serialised instance will be stored.
      • load

        public SpaceSystem load()
        Description copied from interface: SpaceSystemLoader
        loads the SpaceSystem database in memory. Some references may be unresolved
      • loadSpaceSystem

        protected void loadSpaceSystem​(String sheetNamePrefix,
                                       SpaceSystem spaceSystem)
      • loadGeneralSheet

        protected void loadGeneralSheet​(boolean required)
      • loadCalibrationSheet

        protected void loadCalibrationSheet​(SpaceSystem spaceSystem,
                                            String sheetName)
      • loadDataTypesSheet

        protected void loadDataTypesSheet​(SpaceSystem spaceSystem,
                                          String sheetName)
      • getOrCreateDataType

        protected DataType getOrCreateDataType​(SpaceSystem spaceSystem,
                                               org.yamcs.xtce.xlsv7.V7LoaderBase.DataTypeRecord dtr,
                                               boolean param)
      • loadContainersSheet

        protected void loadContainersSheet​(SpaceSystem spaceSystem,
                                           String sheetName)
      • loadCommandSheet

        protected void loadCommandSheet​(SpaceSystem spaceSystem,
                                        String sheetName)
      • loadCommandOptionsSheet

        protected void loadCommandOptionsSheet​(SpaceSystem spaceSystem,
                                               String sheetName)
      • loadCommandVerificationSheet

        protected void loadCommandVerificationSheet​(SpaceSystem spaceSystem,
                                                    String sheetName)
      • loadChangelogSheet

        protected void loadChangelogSheet​(boolean required)
      • loadAlgorithmsSheet

        protected void loadAlgorithmsSheet​(SpaceSystem spaceSystem,
                                           String sheetName)
      • loadAlarmsSheet

        protected void loadAlarmsSheet​(SpaceSystem spaceSystem,
                                       String sheetName)