Re: [XMLPipeDB-developer] GM Builder post taxon merge
Brought to you by:
kdahlquist,
zugzugglug
From: Richard B. <rbr...@gm...> - 2011-04-15 01:53:21
|
OK, found the method and reviewed it. It makes sense and I believe it should work as is unless I'm reading the code wrong. I don't see how if the taxon id is included in the Mtuberculosis species profile (which it is) why this shouldn't work? Help please, what am i missing? richard On Thu, Apr 14, 2011 at 11:04 AM, Richard Brous <rbr...@gm...> wrote: > Gotcha, will check it out later today as well as post gdb's up to the wiki. > > Rb > > Sent from my iPhone > > On Apr 13, 2011, at 11:32 AM, "John David N. Dionisio" <do...@lm...> > wrote: > > > Greetings, > > > > Sorry for the delay; I ended up digging through the code a bit so I would > be sure of the response. > > > > getSpeciesProfilesFound does indeed feed the combo box that you want to > touch, but it turns out that the array returned by this method is not built > here. > > > > The code that builds the array returned by getSpeciesProfilesFound is > located in UniProtDatabaseProfile; the method is called checkRequirements. > This is the method that performs the query which retrieves the available > taxon IDs from the relational database. > > > > The intent of the method is this: if a custom species profile is found > that matches the taxon ID, then that species profile is added to the list. > If a custom species profile is *not* found, a generic species profile > initialized to the taxon ID is added instead. > > > > That is the method's intent. As you have seen, it may need some cleanup > and/or fixing. But there it is for you: > UniProtDatabaseProfile.checkRequirements. > > > > John David N. Dionisio, PhD > > Associate Professor, Computer Science > > Loyola Marymount University > > > > > > > > On Apr 12, 2011, at 7:03 PM, Richard Brous wrote: > > > >> OK, in ExportPanel1.java i found the following: > >> > >> 1. COMBOBOX DEFINED ON LINE 59 > >> private > >> > >> JComboBox speciesComboBox; > >> 2. THEN COMBOBOX IS INSTANTIATED AND ACTION LISTENER ASSIGNED STARTING > ON LINE 141 > >> > >> // Species | JComboBox | speciesFound | JLabel | Description > >> > >> > >> // | JTextField | customizable name > >> > >> speciesComboBox = new JComboBox(); > >> > >> speciesComboBox.addActionListener(new ActionListener() { > >> > >> public void actionPerformed(ActionEvent arg0) { > >> speciesProfileSelected( > >> > >> speciesComboBox.getSelectedItem()); > >> } > >> > >> }); > >> > >> 3. NEXT CODE BLOCK ADJUSTS THE DATABASE PROFILE WHICH IS ALWAYS UNIPROT, > THEN BASED ON DATABASE PROFILE > >> IT POPULATES THE SPECIES COMBOBOX STARTING LINE 210 > >> > >> > >> * Adjusts the dynamic content when a database profile is selected. > >> > >> * > >> > >> * > >> > >> @param selectedItem > >> */ > >> > >> > >> protected void databaseProfileSelected(Object selectedItem) { > >> > >> if (selectedItem instanceof DatabaseProfile) { > >> DatabaseProfile selectedProfile = (DatabaseProfile)selectedItem; > >> > >> ExportToGenMAPP.setDatabaseProfile(selectedProfile); > >> > >> > >> profileDescriptionTextArea.setText(selectedProfile.getDescription()); > >> > >> modSystemTextField.setText(selectedProfile.getMODSystem()); > >> > >> > >> //This is populating the list of items in the speciesProfile combobox > >> > >> // based on what database was selected. > >> > >> speciesComboBox.removeAllItems(); > >> > >> for (SpeciesProfile speciesProfile : > selectedProfile.getSpeciesProfilesFound()) { > >> > >> speciesComboBox.addItem(speciesProfile); > >> } > >> > >> } > >> > >> } > >> > >> SO I THINK THE METHOD I NEED TO SOURCE IS: > selectedProfile.getSpeciesProfilesFound()) > >> > >> SOUND GOOD SO FAR?? > >> > >> Richard > >> > >> > >> > >> > >> > >> On Tue, Apr 12, 2011 at 6:18 PM, Richard Brous <rbr...@gm...> > wrote: > >> > >> OK, I'll look around and attempt to sniff out the code regarding > populating the drop down menu on the first export screen. > >> > >> But that said, I was surprised it didn't work since the functionality > 'seemed' to be in place for the two working species (P_a and S_a). And I > noticed that the working species don't always show in the drop down box, so > figured they likely aren't hard coded in. > >> > >> Richard > >> > >> > >> On Tue, Apr 12, 2011 at 6:04 PM, John David N. Dionisio <do...@lm...> > wrote: > >> > >> Greetings, > >> > >> First off, recall that the taxon ID that is given to the species profile > is not involved in building the dropdown menu; it is used to match the > chosen taxon ID from that menu with a species profile to use. That dropdown > menu is built from a database query that retrieves all available taxon IDs > and species names in the PostgreSQL database. > >> > >> With that in mind, I would tackle this as follows: > >> > >> - First, track down the code that builds the data displayed in that > JComboBox. It should be trackable from the wizard panel code. If you're > having trouble finding it, let me know and I can take a stab at following > the breadcrumbs, or you can ask Don. > >> > >> This code should ultimately lead you to the database query that derives > the overall list of available taxon IDs and species names in the PostgreSQL > database. > >> > >> - Now, armed with this database query, you can verify the validity of > this query directly in PostgreSQL. Essentially you need to make sure that > this query does indeed retrieve the list of all taxon IDs and species names > that are present in the PostgreSQL database. > >> > >> If the query is correct, then the issue is in the way the JComboBox is > put together. This may need a little more knowledge of Swing that you have, > in which case send the issue my way and I can take a look. > >> > >> If the query is incorrect, then it should be corrected. If the Swing > code is correct, then things should work. If the Swing code is also > incorrect, then you are at the previous case, and the Swing code now needs > to be addressed (safe in the knowledge that the data part has been fixed). > >> > >> Let me know how that plan sounds to you. > >> > >> John David N. Dionisio, PhD > >> Associate Professor, Computer Science > >> Loyola Marymount University > >> > >> > >> > >> > >> On Apr 12, 2011, at 5:56 PM, Richard Brous wrote: > >> > >>> Great, glad we are on the same page! > >>> > >>> I went ahead and added the taxon id to the Mtuberculosis species > profile, recompiled and initiated an export but the expected taxon id didn't > show in the species drop down box. > >>> > >>> The coded modified is (as shown above): > >>> > >>> > >>> public MycobacteriumTuberculosisUniProtSpeciesProfile() { > >>> > >>> super("Mycobacterium tuberculosis", 83332, > >>> > >>> "This profile customizes the GenMAPP Builder export for Mycobacterium > Tuberculosis data loaded from a UniProt XML file."); > >>> } > >>> > >>> Attached is a ss of the dialog box. > >>> > >>> I also checked to make sure the species was listed in the > UniProtDatabaseProfile and Mtuberculosis and the rest of the newer species > are present. > >>> > >>> Any idea where i should look next aside from assuring that the change > is actually in my working build? > >>> > >>> Thanks! > >>> > >>> Richard > >>> > >>> > >>> > >>> > >>> On Tue, Apr 12, 2011 at 3:40 PM, John David N. Dionisio <do...@lm...> > wrote: > >>> > >>> Hi Rich, > >>> > >>> Thanks for the update. I agree that we can move past the merge stage > now. > >>> > >>> Regarding the species constructor, yes, having the required change > consist solely of the addition of the taxon ID really was the goal. > "Separation of concerns" and "don't repeat yourself" and all that :) Note > how, in the end, the designation of the taxon ID is truly the only piece of > additional information that is required of species profiles in order to get > the work done. So, this ideal is reflected in the code. > >>> > >>> Of course, there is a possibility that certain types of customizations > may require additional work; however that depends on the type of > customization involved and the way the species profile implements it. We > can approach those on a per-species-profile basis. > >>> > >>> John David N. Dionisio, PhD > >>> Associate Professor, Computer Science > >>> Loyola Marymount University > >>> > >>> > >>> > >>> > >>> On Apr 11, 2011, at 11:57 PM, Richard Brous wrote: > >>> > >>>> Hi all, > >>>> > >>>> I recreated a multispecies postgres db for P_aeruginosa and S_aureus > and reimported the species xml files: > >>>> P_aeruginosa UniProtXML > >>>> P_aeruginosa goa > >>>> > >>>> S_aureus UniProtXML > >>>> S_aureus goa > >>>> > >>>> GO xml > >>>> processed go data > >>>> > >>>> I then exported P_aeruginosa .gdb using both Don's name2taxon code > and the new trunk (b64): both gdb's original row counts are identical > >>>> Also exported S_aureus using both Don's name2taxon code and the new > trunk (b64) : both gdb's original row counts are identical > >>>> > >>>> I think we can safely say that Don's name2taxon changes are working at > the point where he left off and the successful merge into the trunk is now > verfied. > >>>> > >>>> > ============================================================================= > >>>> > >>>> Now to move to species I am familiar with and ensure they still match > the base line gdb's generated from b63. > >>>> > >>>> The first species I will work on is Mtuberculosis. From the readme > file of the gdb previously posted, the taxon id is 83332. > >>>> > >>>> I will go ahead and make the change to the Mtuberculosis species > profile which is to add the taxon id in the form: > >>>> > >>>> > >>>> public MycobacteriumTuberculosisUniProtSpeciesProfile() { > >>>> > >>>> super("Mycobacterium tuberculosis", 83332, > >>>> > >>>> "This profile customizes the GenMAPP Builder export for Mycobacterium > Tuberculosis data loaded from a UniProt XML file."); > >>>> } > >>>> > >>>> When comparing to S_aereus species profile, it was the only change to > make in the Mtuberculosis species profile. > >>>> > >>>> I rechecked my notes from this morning and don't see any other changes > needed to enable our newer species to work with the post merge constructor. > >>>> > >>>> I'll attempt an export tomorrow and see what happens. > >>>> > >>>> Richard > >>>> > >>>> On Fri, Apr 1, 2011 at 12:51 PM, John David N. Dionisio < > do...@lm...> wrote: > >>>> Follow the way the name2taxon “branch” was done. Put a gmbuilder/ > directory under tags/ if it is not already there, and make sure that the > copied/tagged/branched subdirectory under that corresponds to the top-level > directory of a gmbuilder project (i.e., it contains the build.xml, other > top-level directories, etc.). > >>>> > >>>> Subversion copies are “cheap:” it is OK to copy deep trees of files. > You only start using additional storage space if the files themselves get > modified. Otherwise, they are just references to their original versions. > >>>> > >>>> John David N. Dionisio, PhD > >>>> Associate Professor, Computer Science > >>>> Loyola Marymount University > >>>> > >>>> > >>>> > >>>> On Apr 1, 2011, at 12:47 PM, Richard Brous wrote: > >>>> > >>>>> ok, so should I start at the gmbuilder directory Or the src > directory? > >>>>> > >>>>> On Fri, Apr 1, 2011 at 11:42 AM, John David N. Dionisio < > do...@lm...> wrote: > >>>>> Yes, in Subversion what they did is collapse both activities into a > single operation called "Copy." Whether you use the copy as a branch for > modifications, or use it as a tag for posterity, is left to the developer > and not the system. > >>>>> > >>>>> This functional change is the subject of some debate in the > community. Some folks still feel that "enforced" tags have their benefits. > But in the end, this is how Subversion conducts things, so we'll just have > to go with it. > >>>>> > >>>>> John David N. Dionisio, PhD > >>>>> Associate Professor, Computer Science > >>>>> Loyola Marymount University > >>>>> > >>>>> > >>>>> On Apr 1, 2011, at 12:38 PM, Richard Brous wrote: > >>>>> > >>>>>> ok, makes sense because when I went through the process (without > clicking finish) there was really no difference between the two... not even > a specification to say this this is a "tag" vs "branch" unless I can only do > that in the comments. > >>>>>> > >>>>>> On Fri, Apr 1, 2011 at 11:35 AM, John David N. Dionisio < > do...@lm...> wrote: > >>>>>> Yes, tags and branches are structurally identical in Subversion. > The only difference between a “tag” and a “branch” is that the developers > have agreed to *not* touch a tag after it has been copied out. > >>>>>> > >>>>>> In other words, “tags” and “branches” are only different in > Subversion by consensus. The distinction is not system-enforced. > >>>>>> > >>>>>> John David N. Dionisio, PhD > >>>>>> Associate Professor, Computer Science > >>>>>> Loyola Marymount University > >>>>>> > >>>>>> > >>>>>> > >>>>>> On Apr 1, 2011, at 12:32 PM, Richard Brous wrote: > >>>>>> > >>>>>>> tagging is really creating a new branch for posterity? > >>>>>>> > >>>>>>> On Fri, Apr 1, 2011 at 10:56 AM, John David N. Dionisio < > do...@lm...> wrote: > >>>>>>> You'll want to tag from the repository, since your local copy has > been modified. If you issue the tag command from the SVN Repository Viewing > perspective, that should happen server-side. > >>>>>>> > >>>>>>> If you want to play it really safe, you can even do the tagging > from a completely separate Eclipse workspace that does not have your local > copies loaded up. > >>>>>>> > >>>>>>> John David N. Dionisio, PhD > >>>>>>> Associate Professor, Computer Science > >>>>>>> Loyola Marymount University > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>> On Apr 1, 2011, at 11:54 AM, Richard Brous wrote: > >>>>>>> > >>>>>>>> Am I tagging in my local project or in the repository? > >>>>>>>> > >>>>>>>> On Fri, Apr 1, 2011 at 10:51 AM, John David N. Dionisio < > do...@lm...> wrote: > >>>>>>>> Hi Rich, > >>>>>>>> > >>>>>>>> I think it's OK to commit to the trunk, with one tweak for easy > management: before committing, copy out ("tag") what is in the trunk right > now, and put it in /tags/gmbuilder/before-name2taxon-merge (or something > like that). This way, you have an easy basis for comparison if you need to > go back to how the trunk was before name2taxon came along. > >>>>>>>> > >>>>>>>> Also, it will save some time if your before- and after- .gdbs are > available. Running our own exports, while of course doable as you said, > would require things like getting old versions, building them, etc. > >>>>>>>> > >>>>>>>> Happy digital forensics... > >>>>>>>> > >>>>>>>> John David N. Dionisio, PhD > >>>>>>>> Associate Professor, Computer Science > >>>>>>>> Loyola Marymount University > >>>>>>>> > >>>>>>>> > >>>>>>>> On Apr 1, 2011, at 11:42 AM, Richard Brous wrote: > >>>>>>>> > >>>>>>>>> Hi all, > >>>>>>>>> > >>>>>>>>> Started a new thread since this is Pfalciparum specific. > >>>>>>>>> > >>>>>>>>> I have double checked my manual merge to confirm that in fact my > edits were correctly included for Mtuberculosis and Pfalciparum. > >>>>>>>>> > >>>>>>>>> So when running gdb exports for each I determined that in fact > something broke in the merge. > >>>>>>>>> > >>>>>>>>> Before I start digging into this further I want to ask a couple > questions: > >>>>>>>>> > >>>>>>>>> 1. Should I commit the changes up to Sourceforge yet or leave > them locally on my laptop while troubleshooting? I know we can revert to > earlier versions if needed but wanted to be sure we were all on same page. > >>>>>>>>> > >>>>>>>>> 2. I have before and after exports of Mtuberculosis and > Pfalciparum on my laptop. Would you like me to post them for review or will > you be running your own anyway? > >>>>>>>>> > >>>>>>>>> Richard > >>>>>>>>> <ATT00001..txt><ATT00002..txt> > >>>>>>>> > >>>>>>>> > >>>>>>>> > ------------------------------------------------------------------------------ > >>>>>>>> Create and publish websites with WebMatrix > >>>>>>>> Use the most popular FREE web apps or write code yourself; > >>>>>>>> WebMatrix provides all the features you need to develop and > >>>>>>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >>>>>>>> _______________________________________________ > >>>>>>>> xmlpipedb-developer mailing list > >>>>>>>> xml...@li... > >>>>>>>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >>>>>>>> > >>>>>>>> <ATT00001..txt><ATT00002..txt> > >>>>>>> > >>>>>>> > >>>>>>> > ------------------------------------------------------------------------------ > >>>>>>> Create and publish websites with WebMatrix > >>>>>>> Use the most popular FREE web apps or write code yourself; > >>>>>>> WebMatrix provides all the features you need to develop and > >>>>>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >>>>>>> _______________________________________________ > >>>>>>> xmlpipedb-developer mailing list > >>>>>>> xml...@li... > >>>>>>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >>>>>>> > >>>>>>> <ATT00001..txt><ATT00002..txt> > >>>>>> > >>>>>> > >>>>>> > ------------------------------------------------------------------------------ > >>>>>> Create and publish websites with WebMatrix > >>>>>> Use the most popular FREE web apps or write code yourself; > >>>>>> WebMatrix provides all the features you need to develop and > >>>>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >>>>>> _______________________________________________ > >>>>>> xmlpipedb-developer mailing list > >>>>>> xml...@li... > >>>>>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >>>>>> > >>>>>> <ATT00001..txt><ATT00002..txt> > >>>>> > >>>>> > >>>>> > ------------------------------------------------------------------------------ > >>>>> Create and publish websites with WebMatrix > >>>>> Use the most popular FREE web apps or write code yourself; > >>>>> WebMatrix provides all the features you need to develop and > >>>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >>>>> _______________________________________________ > >>>>> xmlpipedb-developer mailing list > >>>>> xml...@li... > >>>>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >>>>> > >>>>> <ATT00001..txt><ATT00002..txt> > >>>> > >>>> > >>>> > ------------------------------------------------------------------------------ > >>>> Create and publish websites with WebMatrix > >>>> Use the most popular FREE web apps or write code yourself; > >>>> WebMatrix provides all the features you need to develop and > >>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >>>> _______________________________________________ > >>>> xmlpipedb-developer mailing list > >>>> xml...@li... > >>>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >>>> > >>> > >>>> <ATT00001..txt><ATT00002..txt> > >>> > >>> > >>> > ------------------------------------------------------------------------------ > >>> Forrester Wave Report - Recovery time is now measured in hours and > minutes > >>> not days. Key insights are discussed in the 2010 Forrester Wave Report > as > >>> part of an in-depth evaluation of disaster recovery service providers. > >>> Forrester found the best-in-class provider in terms of services and > vision. > >>> Read this report now! http://p.sf.net/sfu/ibm-webcastpromo > >>> > >>> _______________________________________________ > >>> xmlpipedb-developer mailing list > >>> xml...@li... > >>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >>> > >>> > >> > >>> <Tb_export_screen.jpg><ATT00001..txt><ATT00002..txt> > >> > >> > >> > ------------------------------------------------------------------------------ > >> Forrester Wave Report - Recovery time is now measured in hours and > minutes > >> not days. Key insights are discussed in the 2010 Forrester Wave Report > as > >> part of an in-depth evaluation of disaster recovery service providers. > >> Forrester found the best-in-class provider in terms of services and > vision. > >> Read this report now! http://p.sf.net/sfu/ibm-webcastpromo > >> _______________________________________________ > >> xmlpipedb-developer mailing list > >> xml...@li... > >> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> > >> > >> > >> <ATT00001..txt><ATT00002..txt> > > > > > > > ------------------------------------------------------------------------------ > > Forrester Wave Report - Recovery time is now measured in hours and > minutes > > not days. Key insights are discussed in the 2010 Forrester Wave Report as > > part of an in-depth evaluation of disaster recovery service providers. > > Forrester found the best-in-class provider in terms of services and > vision. > > Read this report now! http://p.sf.net/sfu/ibm-webcastpromo > > _______________________________________________ > > xmlpipedb-developer mailing list > > xml...@li... > > https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > |