Details

    • Type: Epic
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Epic Name:
      Refactor NCBI Primer App

      Description

      Several years ago we wrote an App called "NCBI Primer design" that lets users run a primer design search using a service hosted at NCBI - National Center for Biotechnology Information.

      The source code is located in this repository: https://bitbucket.org/lorainelab/experimental-apps-for-igb

      Recently, we updated the code to use SCR instead of an Activator class to plug into IGB. Now, if you want to use the App, you just install it in the usual way, right-click a gene model, and choose the "NCBI" option from the menu. What happens next is that the App sends a POST query to NCBI with a bunch of parameters. Users within IGB can modify the parameters by selecting File > Preferences > Primer Options. However, the parameters accepted by NCBI have changed, and we need to update them in the Primer Options GUI.

      Please note: Ann Loraine added a number of comments and logging statements to the code.

      Another issue is that we do not yet have good unit test coverage for the App.

      One problem with this is that we have a class/interface called NCBIPrimerBlastOpts that has a single method getOptions that returns a RemotePrimerBlastNCBI.PrimerBlastOptions object. I think it would be better to move PrimerBlastOptions out of the class RemotePrimerBlastNCBI and create an implementation that captures reasonable defaults. Then, the GUI could obtain a reference to such an object and use it to populate default fields for the GUI. We could then use this object in the testing code. Currently, there is no way to do that – at least not as I can see!

      Another issue: There is some older code left over from the Apollo project (now defunct) in which the output of the NCBI tool was parsed and added to the Apollo GUI. Let's get rid of all this old code.

      Another issue: the Activator class needs to be removed now that we are using SCR.

      The GUI should be moved out of the Preferences window into a tabbed panel. I think this is a more natural place for users to find the App. Suggestion: Use the Netbeans GUI builder to design the new GUI. It will likely be easier than coding by hand and will likely produce a more attractive result.

      This is a pretty advanced task because it involves a major re-write and re-factoring of this code. It might make good sense to create an entirely new project in a separate repository for this update.

        Attachments

          Issue Links

            Activity

            Hide
            ann.loraine Ann Loraine added a comment -

            I think we should move all the classes into one package - creating ticket for same and assigning to Pooja.

            Show
            ann.loraine Ann Loraine added a comment - I think we should move all the classes into one package - creating ticket for same and assigning to Pooja.
            Hide
            ann.loraine Ann Loraine added a comment -

            Converting this to an Epic.

            Show
            ann.loraine Ann Loraine added a comment - Converting this to an Epic.

              People

              • Assignee:
                Unassigned
                Reporter:
                ann.loraine Ann Loraine
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: