Class BlastInput.Builder

java.lang.Object
uk.ac.ebi.uniprot.dataservice.client.alignment.blast.BlastInput.Builder
Enclosing class:
BlastInput

public static class BlastInput.Builder extends Object
  • Constructor Details

  • Method Details

    • withSequenceType

      public BlastInput.Builder withSequenceType(SequenceTypeOption sequenceType)
      Indicate whether the sequence to blast is from DNA/RNA or a protein.
      Parameters:
      sequenceType - the chosen sequence type
      Returns:
      the Builder
    • usingBlastVersion

      public BlastInput.Builder usingBlastVersion(BlastVersionOption blastVersion)
      The BLAST program to be used for the blast.
      Parameters:
      blastVersion - the chosen blast version
      Returns:
      the Builder
    • withMatrix

      public BlastInput.Builder withMatrix(MatrixOption matrix)
      Enumeration for all possible selections for similarity matrizes used for the BLAST service.
      Parameters:
      matrix - the chosen matrix algorithm
      Returns:
      the Builder
    • withMaximumNumberOfAlignments

      public BlastInput.Builder withMaximumNumberOfAlignments(AlignmentCutoffOption cutoff)
      Maximum number of match alignments reported in the result output.
      Parameters:
      cutoff - the chosen maximum number of alignments
      Returns:
      the Builder
    • withMaximumNumberOfScores

      public BlastInput.Builder withMaximumNumberOfScores(ScoreCutoffOption cutoff)
      Maximum number of match alignments reported in the result output.
      Parameters:
      cutoff - the chosen maximum number of scores
      Returns:
      the builder
    • withExpectation

      public BlastInput.Builder withExpectation(ExpectationOption expectation)
      Limits the number of scores and alignments reported based on the expectation value. This is the maximum number of times the match is expected to occur by chance.
      Parameters:
      expectation - the chosen expectation value
      Returns:
      the Builder
    • withDropOff

      public BlastInput.Builder withDropOff(DropOffOption dropOff)
      The amount a score can drop before gapped extension of word hits is halted.
      Parameters:
      dropOff - the chosen drop off value
      Returns:
      the Builder
    • withFilter

      public BlastInput.Builder withFilter(FilterOption filter)
      Filter regions of low sequence complexity. This can avoid issues with low complexity sequences where matches are found due to composition rather than meaningful sequence similarity. However in some cases filtering also masks regions of interest and so should be used with caution.
      Parameters:
      filter - the chosen filter option
      Returns:
      the Builder
    • withGapAlign

      public BlastInput.Builder withGapAlign(boolean gapAlign)
      This is a true/false setting that tells the program the perform optimised alignments within regions involving gaps. If set to true, the program will perform an alignment using gaps. Otherwise, if it is set to false, it will report only individual HSP where two sequence match each other, and thus will not produce alignments with gaps.
      Parameters:
      gapAlign - the chosen gap align option
      Returns:
      the Builder
    • withGapOpen

      public BlastInput.Builder withGapOpen(int gapOpen)
      Penalty taken away from the score when a gap is created in sequence. Increasing the gap opening penalty will decrease the number of gaps in the final alignment.
      Parameters:
      gapOpen - the chosen gap open value
      Returns:
      the Builder
    • withGapExt

      public BlastInput.Builder withGapExt(int gapExt)
      Penalty taken away from the score for each base or residue in the gap. Increasing the gap extension penalty favors short gaps in the final alignment, conversly decreasing the gap extension penalty favors long gaps in the final alignment.
      Parameters:
      gapExt - the chosen gap extension value
      Returns:
      the Builder
    • withSequenceRange

      public BlastInput.Builder withSequenceRange(int start, int stop)
      Specify a range or section of the input sequence to use in the search. Example: Specifying '34-89' in an input sequence of total length 100, will tell BLAST to only use residues 34 to 89, inclusive.
      Parameters:
      start - amino acid start position
      stop - amino acid stop position
      Returns:
      the Builder
    • addDatabase

      public BlastInput.Builder addDatabase(DatabaseOption database)
      Add an extra blast database to blast against.
      Parameters:
      database - the extra database to add
      Returns:
      the Builder
    • email

      public BlastInput.Builder email(String email)
    • build

      public BlastInput build()
      Takes all of the configured parameters and builds a valid BlastInput.
      Returns:
      a valid input parameter to submit a blast job