Uploaded image for project: 'User Support'
  1. User Support
  2. HELP-100

External Application Developer Questions about IGB command language

    Details

    • Type: New Feature
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Labels:
      None

      Description

      From: Piero Montanari
      > <piero.montanari5@unibo.it<piero.montanari5@unibo.it>>
      > Date: Friday, December 19, 2014 at 8:22 AM
      > To: "Loraine, Ann" <Ann.Loraine@uncc.edu<Ann.Loraine@uncc.edu>>
      > Cc: "piero-mo@hotmail.com<piero-mo@hotmail.com>"
      > <piero-mo@hotmail.com<piero-mo@hotmail.com>>
      > Subject: Information about IGB
      >
      > Dear Ann,
      >
      > I am Piero Montanari, a researcher of University of Bologna, Italy. We got in touch through BioStars.
      >
      > I will briefly recap my problem: I am writing a desktop application that uses IGB. I want to visualize in IGB some data that are processed by an algorithm of mine. Thanks to your advices I was able to load the genome (genome), load the needed files (load) and visualize the area of interest (goto + refresh). I do that through a http request to the port 7085 and some script files.
      >
      > Now I would like to improve this application. In particular, there are two important aspects I want to add to my application.
      >
      > 1. I want to give the user the opportunity to delete the previous tracks when they load new ones. From what I got, it isn't possible to do it through the script language. Am I correct? Is there a way to do so? Is the correct way to do so use port 7084 and commands?
      >
      > 2. This is much more importante for us. We want to give the user the opportunity of invoking a particular function once they selected some regions in IGB. The idea is that a user selects some genomic regions in IGB and we give them the opportunity to export somehow the information about the selected regions. What is the correct way to do so? Is it possible? Is a plugin the right solution?
      >
      > Thanks,
      > Piero Montanari

        Attachments

          Activity

          Hide
          mason Mason Meyer (Inactive) added a comment -

          From: Piero Montanari [piero-mo@hotmail.com]
          Sent: Thursday, March 26, 2015 11:54 AM
          To: Norris, David
          Subject: RE: Information about IGB

          Hi David,

          that works perfectly. I was able to run my plugin and extract the information I wanted from IGB.
          Now I am working on the GUI to use my application and I will be able to show you how it works (at least through snapshots) shortly.

          I have a doubt: IGB seems to remember my preferences (datasource for quickloads, plugin repositories,...) even if I uninstall the current instance and re-install a new IGB version in a new directory. How is it possible? Where does it store the preferences in my machine? I don't know if I was clear....

          I wanted also to point a minor bug. When you select a local source for the plugin repository and also for the data sources IGB gives the following problem:
          if the address is "C:\Documents", it automatically turns it into "file:\C:\Documents" and it gives an error. The user has to manually delete "C:\" to get "file:\Documents" .
          The same thing happens with the "SOURCE" attribute of regions belonging to a local .gtf file. The "SOURCE" attribute value is "file:\C:\Documents\etc" and it can gives problem if someone wants to use directly that attribute to do something.
          Obviously this is not a big problem, but I thought you wanted to know about it.

          By the way,I will stay tuned waiting for the minor update of this week.
          Thanks again for your help,
          Piero

          Show
          mason Mason Meyer (Inactive) added a comment - From: Piero Montanari [piero-mo@hotmail.com] Sent: Thursday, March 26, 2015 11:54 AM To: Norris, David Subject: RE: Information about IGB Hi David, that works perfectly. I was able to run my plugin and extract the information I wanted from IGB. Now I am working on the GUI to use my application and I will be able to show you how it works (at least through snapshots) shortly. I have a doubt: IGB seems to remember my preferences (datasource for quickloads, plugin repositories,...) even if I uninstall the current instance and re-install a new IGB version in a new directory. How is it possible? Where does it store the preferences in my machine? I don't know if I was clear.... I wanted also to point a minor bug. When you select a local source for the plugin repository and also for the data sources IGB gives the following problem: if the address is "C:\Documents", it automatically turns it into "file:\C:\Documents" and it gives an error. The user has to manually delete "C:\" to get "file:\Documents" . The same thing happens with the "SOURCE" attribute of regions belonging to a local .gtf file. The "SOURCE" attribute value is "file:\C:\Documents\etc" and it can gives problem if someone wants to use directly that attribute to do something. Obviously this is not a big problem, but I thought you wanted to know about it. By the way,I will stay tuned waiting for the minor update of this week. Thanks again for your help, Piero
          Hide
          mason Mason Meyer (Inactive) added a comment -

          > From: dcnorris@uncc.edu
          > To: piero-mo@hotmail.com
          > Subject: RE: Information about IGB
          > Date: Wed, 25 Mar 2015 18:33:26 +0000
          >
          > Hi Piero,
          > No problem at all. What you are seeing is the result of what essentially amounts to a classloading problem. In the custom OSGi classloading model the dependencies specified in your plugins manifest (i.e. the package imports) must be exported by other installed bundles. If you loaded all of your dependencies into the runtime with the proper OSGi manifest information you would not see this error. OSGi is simply telling you that it cannot resolve the necessary classes from what is exported to satisfy your manifest imports.
          >
          > I recommend you not worry about wrapping all of your dependencies and deploying each one and instead simply embed your dependencies into your module.
          >
          > You can use the following in your pom.xml if you are using the bnd plugin.
          >
          > <plugin>
          > <groupId>org.apache.felix</groupId>
          > <artifactId>maven-bundle-plugin</artifactId>
          > <extensions>true</extensions>
          > <configuration>
          > <instructions>
          > <Bundle-SymbolicName>$

          {project.artifactId}

          </Bundle-SymbolicName>
          > <Embed-Dependency>*;scope=compile|runtime;inline=true</Embed-Dependenc
          > y> <Embed-Transitive>true</Embed-Transitive>
          > <Include-Resource>
          >

          {maven-resources}

          > </Include-Resource>
          > <Import-Package>*;resolution:=optional</Import-Package>
          > <Export-Package>
          > com.affymetrix.common
          > </Export-Package>
          > <Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy>
          > </instructions>
          > </configuration>
          >
          > Note these two line
          > <Embed-Dependency>*;scope=compile|runtime;inline=true</Embed-Dependenc
          > y> <Embed-Transitive>true</Embed-Transitive>
          >
          >
          > This will actually "wrap" the dependencies and make them available to your plugin's classloader.
          >
          > Let me know how things work out and don't hesitate to reach out with more questions if they come up.
          >
          > Best Regards,
          > David
          >

          Show
          mason Mason Meyer (Inactive) added a comment - > From: dcnorris@uncc.edu > To: piero-mo@hotmail.com > Subject: RE: Information about IGB > Date: Wed, 25 Mar 2015 18:33:26 +0000 > > Hi Piero, > No problem at all. What you are seeing is the result of what essentially amounts to a classloading problem. In the custom OSGi classloading model the dependencies specified in your plugins manifest (i.e. the package imports) must be exported by other installed bundles. If you loaded all of your dependencies into the runtime with the proper OSGi manifest information you would not see this error. OSGi is simply telling you that it cannot resolve the necessary classes from what is exported to satisfy your manifest imports. > > I recommend you not worry about wrapping all of your dependencies and deploying each one and instead simply embed your dependencies into your module. > > You can use the following in your pom.xml if you are using the bnd plugin. > > <plugin> > <groupId>org.apache.felix</groupId> > <artifactId>maven-bundle-plugin</artifactId> > <extensions>true</extensions> > <configuration> > <instructions> > <Bundle-SymbolicName>$ {project.artifactId} </Bundle-SymbolicName> > <Embed-Dependency>*;scope=compile|runtime;inline=true</Embed-Dependenc > y> <Embed-Transitive>true</Embed-Transitive> > <Include-Resource> > {maven-resources} > </Include-Resource> > <Import-Package>*;resolution:=optional</Import-Package> > <Export-Package> > com.affymetrix.common > </Export-Package> > <Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy> > </instructions> > </configuration> > > Note these two line > <Embed-Dependency>*;scope=compile|runtime;inline=true</Embed-Dependenc > y> <Embed-Transitive>true</Embed-Transitive> > > > This will actually "wrap" the dependencies and make them available to your plugin's classloader. > > Let me know how things work out and don't hesitate to reach out with more questions if they come up. > > Best Regards, > David >
          Hide
          mason Mason Meyer (Inactive) added a comment -

          > From: Piero Montanari [piero-mo@hotmail.com]
          > Sent: Wednesday, March 25, 2015 1:57 PM
          > To: Norris, David
          > Subject: RE: Information about IGB
          >
          > Hi David,
          >
          > I am sorry to bother you continuously, but I have another question. I had to modify the plugin I wrote for IGB to use some external jar libraries. Now when I install it in IGB, it gives me the following error: "error installing plugin... missing requirements".
          >
          > I don't understand where the problem is. All the dependencies are shows correctly in pom.xml of the plugin project and also in the repository.xml directory. Can you help me? Do you have any guess on which the problem is?
          >
          > Thanks,
          > Piero

          Show
          mason Mason Meyer (Inactive) added a comment - > From: Piero Montanari [piero-mo@hotmail.com] > Sent: Wednesday, March 25, 2015 1:57 PM > To: Norris, David > Subject: RE: Information about IGB > > Hi David, > > I am sorry to bother you continuously, but I have another question. I had to modify the plugin I wrote for IGB to use some external jar libraries. Now when I install it in IGB, it gives me the following error: "error installing plugin... missing requirements". > > I don't understand where the problem is. All the dependencies are shows correctly in pom.xml of the plugin project and also in the repository.xml directory. Can you help me? Do you have any guess on which the problem is? > > Thanks, > Piero
          Hide
          mason Mason Meyer (Inactive) added a comment -

          > From: dcnorris@uncc.edu
          > To: piero-mo@hotmail.com; Ann.Loraine@uncc.edu
          > CC: mmeyer20@uncc.edu
          > Subject: RE: Information about IGB
          > Date: Mon 3/23/2015 10:58 AM

          Hi Piero,
          I have put together a quickload directory for your reference and use, which you can download from here (https://dl.dropboxusercontent.com/u/18695961/quickload.tar.gz). You will want to extract this directory somewhere on your local machine and then add it as a "Data Source" (see https://wiki.transvar.org/display/igbman/Adding+and+Managing+Data+Source+Servers). Once you have added this quickload directory, you will notice that on loading the latest human genome version data will load from both the remote igbquickload.org quickload and your new local quickload directory data source. I would suggest that you disable the igbquickload.org data source to avoid this duplication. If you have further questions please let me know.

          As an update, we will be releasing IGB 8.3.2 by the end of the week, and it will include your requested feature of a "delete all tracks" scripting command.

          Best Regards,
          David

          Show
          mason Mason Meyer (Inactive) added a comment - > From: dcnorris@uncc.edu > To: piero-mo@hotmail.com; Ann.Loraine@uncc.edu > CC: mmeyer20@uncc.edu > Subject: RE: Information about IGB > Date: Mon 3/23/2015 10:58 AM Hi Piero, I have put together a quickload directory for your reference and use, which you can download from here ( https://dl.dropboxusercontent.com/u/18695961/quickload.tar.gz ). You will want to extract this directory somewhere on your local machine and then add it as a "Data Source" (see https://wiki.transvar.org/display/igbman/Adding+and+Managing+Data+Source+Servers ). Once you have added this quickload directory, you will notice that on loading the latest human genome version data will load from both the remote igbquickload.org quickload and your new local quickload directory data source. I would suggest that you disable the igbquickload.org data source to avoid this duplication. If you have further questions please let me know. As an update, we will be releasing IGB 8.3.2 by the end of the week, and it will include your requested feature of a "delete all tracks" scripting command. Best Regards, David
          Hide
          mason Mason Meyer (Inactive) added a comment -

          From: Piero Montanari [piero-mo@hotmail.com]
          Sent: Monday, March 23, 2015 8:04 AM
          To: Norris, David; Loraine, Ann
          Cc: Meyer, Mason
          Subject: RE: Information about IGB

          Hi David,

          I have tried to download the files from http://igbquickload.org/<http://igbquickload.org/.> but I don't understand which are the useful files: for each genome version there are a lot of different files.
          Then, when I have downloaded them, how can I generate a personalized genome version with the right name and how I add that to IGB?

          Thanks in advance for your help.
          Piero

          Show
          mason Mason Meyer (Inactive) added a comment - From: Piero Montanari [piero-mo@hotmail.com] Sent: Monday, March 23, 2015 8:04 AM To: Norris, David; Loraine, Ann Cc: Meyer, Mason Subject: RE: Information about IGB Hi David, I have tried to download the files from http://igbquickload.org/ < http://igbquickload.org/ .> but I don't understand which are the useful files: for each genome version there are a lot of different files. Then, when I have downloaded them, how can I generate a personalized genome version with the right name and how I add that to IGB? Thanks in advance for your help. Piero

            People

            • Assignee:
              Unassigned
              Reporter:
              mason Mason Meyer (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: