Package main

Class Musial

java.lang.Object
main.Musial

public final class Musial extends Object
Main class of MUSIAL (MUlti Sample varIant AnaLysis).

MUSIAL is a Java command-line tool designed to analyze and summarize single nucleotide variants (SNVs) and insertions/deletions (indels) across multiple prokaryotic samples. The software aggregates and analyzes variant calls from multiple samples of a prokaryotic species and provides an interface to generate comprehensive statistics and alignments at the genome, gene and protein level. MUSIAL enables a comprehensive assessment of variability within a species at the genome, gene and protein level, providing insights into, for example, conserved and variable regions, diversity at the gene level and common proteoforms among samples.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static String
    Author contact of the software; parsed from `/src/main/resources/info.properties`.
    static String
    License information of the software; parsed from `/src/main/resources/info.properties`.
    static String
    Name of the software; parsed from `/src/main/resources/info.properties`.
    static final String
    File extension used for generated MUSIAL storage files.
    static long
    Start time of the program.
    static MusialTask
    Specifies the task to execute.
    static File
    Temporary directory for intermediate files.
    static String
    Version of the software; parsed from `/src/main/resources/info.properties`.
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    main(String[] args)
    The main entry point of the MUSIAL application.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • name

      public static String name
      Name of the software; parsed from `/src/main/resources/info.properties`.
    • version

      public static String version
      Version of the software; parsed from `/src/main/resources/info.properties`.
    • contact

      public static String contact
      Author contact of the software; parsed from `/src/main/resources/info.properties`.
    • license

      public static String license
      License information of the software; parsed from `/src/main/resources/info.properties`.
    • task

      public static MusialTask task
      Specifies the task to execute.
    • startTime

      public static long startTime
      Start time of the program.
    • tempDir

      public static File tempDir
      Temporary directory for intermediate files.
    • OUTPUT_EXTENSION

      public static final String OUTPUT_EXTENSION
      File extension used for generated MUSIAL storage files.

      This constant specifies the default file extension for storage files created or used by the MUSIAL application. It is marked as `transient` to indicate that it should not be serialized as part of the class state.

      The extension should either be `.json` or `.json.gz` depending on the compression method used. For production, use `.json.gz` for compressed files.

      See Also:
  • Method Details

    • main

      public static void main(String[] args)
      The main entry point of the MUSIAL application.

      This method initializes the program, determines the task to execute based on the provided arguments, and executes the corresponding functionality. It handles errors gracefully and logs relevant information.

      Parameters:
      args - Command-line arguments specifying the task and its parameters.
      • args[0]: The task to execute (e.g., BUILD, UPDATE, VIEW, SEQUENCE).
      • Additional arguments are parsed by implementations of CLI.