Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-4123

Implement Extensible columns in the Genome Dynamic Search UI

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 10.2.0
    • Labels:
      None

      Description

      Make columns extensible so that an app can add additional columns as needed. For example, right now the columns are Common Name, Scientific Name, Assembly Version. For UCSC GenArk we would also like to include Accession, taxonId, and GenArk Clade.

        Attachments

          Issue Links

            Activity

            Hide
            jsirigin Jaya Sravani Sirigineedi (Inactive) added a comment -

            Completed changing the data provider interface to support custom-defined columns by the implementing external data provider. Now, the reusable dynamic UI will display the columns according to the implementation of the external data provider. Tested the changes and able to see the columns exactly like they are defined the ucsc-genark-provider plugin app. Here is the updated code:

            https://bitbucket.org/jaya-sravani/integrated-genome-browser/branch/IGBF-4123
            https://bitbucket.org/jaya-sravani/ucsc-genark-data-provider/branch/IGBF-4123

            Note: There is an issue with translate.bioviz.org (server not responding), one that's fixed will test this end-to-end.

            Show
            jsirigin Jaya Sravani Sirigineedi (Inactive) added a comment - Completed changing the data provider interface to support custom-defined columns by the implementing external data provider. Now, the reusable dynamic UI will display the columns according to the implementation of the external data provider. Tested the changes and able to see the columns exactly like they are defined the ucsc-genark-provider plugin app. Here is the updated code: https://bitbucket.org/jaya-sravani/integrated-genome-browser/branch/IGBF-4123 https://bitbucket.org/jaya-sravani/ucsc-genark-data-provider/branch/IGBF-4123 Note: There is an issue with translate.bioviz.org (server not responding), one that's fixed will test this end-to-end.
            Hide
            jsirigin Jaya Sravani Sirigineedi (Inactive) added a comment -

            As the translate.bioviz.org issue is fixed, tested the ticket end-to-end and everything's working as expected.

            To test:

            • Pull both the branches into your local.
            • Build and run IGB from the given branch.
            • Build the ucsc-genark-data-provider service as well using "mvn clean install"
            • Now add the data provider as a plugin in IGB, while choosing the folder, choose the generated target folder of the ucsc-genark-data-provider service.
            • Check the columns displayed in the table have all the fields from this API https://api.genome.ucsc.edu/list/genarkGenomes except hubUrl that's mapped to the info icon.

            Please review and let me know if there are any issues.

            Show
            jsirigin Jaya Sravani Sirigineedi (Inactive) added a comment - As the translate.bioviz.org issue is fixed, tested the ticket end-to-end and everything's working as expected. To test: Pull both the branches into your local. Build and run IGB from the given branch. Build the ucsc-genark-data-provider service as well using "mvn clean install" Now add the data provider as a plugin in IGB, while choosing the folder, choose the generated target folder of the ucsc-genark-data-provider service. Check the columns displayed in the table have all the fields from this API https://api.genome.ucsc.edu/list/genarkGenomes except hubUrl that's mapped to the info icon. Please review and let me know if there are any issues.
            Hide
            nfreese Nowlan Freese added a comment -

            Tested on Sravani's 4123 branch on Mac.

            • I'm seeing columns for Common Name, Scientific Name, Assembly Version, Taxon Id
            • I am not seeing a clade column (archaea, bacteria, viral, vertebrate, mammal, etc.), but the API response for clade doesn't look right to me
            • Could we add an accession column? This is the key value from the API "GCA_900103655.1" for example
            Show
            nfreese Nowlan Freese added a comment - Tested on Sravani's 4123 branch on Mac. I'm seeing columns for Common Name, Scientific Name, Assembly Version, Taxon Id I am not seeing a clade column (archaea, bacteria, viral, vertebrate, mammal, etc.), but the API response for clade doesn't look right to me Could we add an accession column? This is the key value from the API "GCA_900103655.1" for example
            Hide
            jsirigin Jaya Sravani Sirigineedi (Inactive) added a comment - - edited

            Added accession as well, here is the updated code: https://bitbucket.org/jaya-sravani/ucsc-genark-data-provider/branch/IGBF-4123. As the clade values aren't proper at the moment, we decided not to add it, but in the future, if it has to be added, use the below code to add it:

            In UcscGenArkProviderUtils.java:
            add a constant for the column's name and add it to the String[] COLUMN_NAMES

            public static final String CLADE_COL = "GenArk clade";
            

            Inside the getColumnValueMap() method, add the clade col name and value to the map:

            columnValueMap.put(CLADE_COL, String.valueOf(genArkGenome.getClade()));
            

            In UcscGenArkDataProvider.java:
            add it to the setSorting() method to sort the list using the selected column:

            case CLADE_COL -> sortFunction = genomeData -> genomeData.getColumnValueMap().get(CLADE_COL);
            
            Show
            jsirigin Jaya Sravani Sirigineedi (Inactive) added a comment - - edited Added accession as well, here is the updated code: https://bitbucket.org/jaya-sravani/ucsc-genark-data-provider/branch/IGBF-4123 . As the clade values aren't proper at the moment, we decided not to add it, but in the future, if it has to be added, use the below code to add it: In UcscGenArkProviderUtils.java: add a constant for the column's name and add it to the String[] COLUMN_NAMES public static final String CLADE_COL = "GenArk clade" ; Inside the getColumnValueMap() method, add the clade col name and value to the map: columnValueMap.put(CLADE_COL, String .valueOf(genArkGenome.getClade())); In UcscGenArkDataProvider.java: add it to the setSorting() method to sort the list using the selected column: case CLADE_COL -> sortFunction = genomeData -> genomeData.getColumnValueMap().get(CLADE_COL);
            Hide
            nfreese Nowlan Freese added a comment -

            Reviewed with Sravani.

            Ready for PR.

            Show
            nfreese Nowlan Freese added a comment - Reviewed with Sravani. Ready for PR.
            Hide
            jsirigin Jaya Sravani Sirigineedi (Inactive) added a comment -

            Raised PR for the IGB code: https://bitbucket.org/lorainelab/integrated-genome-browser/pull-requests/1070. For the ucsc-genark-data-provider code, raised the PR and merged it as it is in my workspace only.

            This PR has code for https://jira.bioviz.org/browse/IGBF-4167 and https://jira.bioviz.org/browse/IGBF-4108 as well.

            Please review and let me know if there are any issues.

            Show
            jsirigin Jaya Sravani Sirigineedi (Inactive) added a comment - Raised PR for the IGB code: https://bitbucket.org/lorainelab/integrated-genome-browser/pull-requests/1070 . For the ucsc-genark-data-provider code, raised the PR and merged it as it is in my workspace only. This PR has code for https://jira.bioviz.org/browse/IGBF-4167 and https://jira.bioviz.org/browse/IGBF-4108 as well. Please review and let me know if there are any issues.
            Hide
            ann.loraine Ann Loraine added a comment -

            Merged PR, built installers and deployed to Early Access section of BioViz.org.

            Show
            ann.loraine Ann Loraine added a comment - Merged PR, built installers and deployed to Early Access section of BioViz.org.
            Hide
            ann.loraine Ann Loraine added a comment -

            PR is merged.

            Show
            ann.loraine Ann Loraine added a comment - PR is merged.
            Hide
            nfreese Nowlan Freese added a comment -

            Tested main branch on Mac.

            Common Name, Scientific Name, Assembly Version, Accession, Taxon Id columns all appearing as expected.

            Closing ticket.

            Show
            nfreese Nowlan Freese added a comment - Tested main branch on Mac. Common Name, Scientific Name, Assembly Version, Accession, Taxon Id columns all appearing as expected. Closing ticket.

              People

              • Assignee:
                jsirigin Jaya Sravani Sirigineedi (Inactive)
                Reporter:
                jsirigin Jaya Sravani Sirigineedi (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: