Ticket #9112 (closed: fixed)
Update catalog GUI to support multiple catalogs
Reported by: | Jay Rainey | Owned by: | Jay Rainey |
---|---|---|---|
Priority: | major | Milestone: | Release 3.2 |
Component: | Framework | Keywords: | ICAT |
Cc: | Blocked By: | #9084 | |
Blocking: | #7640 | Tester: | Nick Draper |
Description
In order to support multiple catalogs I will need to update the CatalogSearch interface.
- Create a drop-down that holds information obtained from getActiveSessions from CatalogManager. (Ideally, show the end-point and catalog name on hover, with the facility in the drop-down. meta-data will need to be added to the data of each drop-down that contains the session).
- Update each method in CatalogHelper that will now take a session as a paramter. This allows the search or downloaddatafiles to be executed for a specific catalog (using the related session).
- Update the CatalogPublish dialog and algorithm to work with multiple catalogs.
Change History
comment:3 Changed 7 years ago by Jay Rainey
- Status changed from assigned to inprogress
Add facility to investigation table. Refs #9112.
Changeset: f11ba24604a81908bf1cf0c998de06df819ee60f
comment:4 Changed 7 years ago by Jay Rainey
Update myData query. Refs #9112.
- I updated the query to use the verbose language rather than icat specific one.
Changeset: e84b03eee9c1f6d5ace254ea398fa4182f96808f
comment:5 Changed 7 years ago by Jay Rainey
Remove catalog limit. Refs #9112.
Changeset: 92a82c0e3cb07a934773660c2d900d20fb6836f8
comment:6 Changed 7 years ago by Jay Rainey
Convert getActiveSessions to a vector. Refs #9112.
Changeset: 8d564575b5614832c9f5d9fa437aae30377a0aa9
comment:7 Changed 7 years ago by Jay Rainey
Added facility button to search GUI. Refs #9112.
Changeset: a916098953d546be6a29b162068c51a7031af051
comment:8 Changed 7 years ago by Jay Rainey
Allow multi selection. Refs #9112.
Changeset: 5b8bf30deb97fe81319cfe49cc32787db1857f59
comment:9 Changed 7 years ago by Jay Rainey
Display the facility names of catalogs to search through. Refs #9112.
Changeset: fa50a4f499626b1f7d6eebf39f40f26950a4be9a
comment:10 Changed 7 years ago by Jay Rainey
Add method to get selected session from meta-data. Refs #9112.
Changeset: 9f7b2d3d9f098b1712641cfe261a3edacbdca22b
comment:11 Changed 7 years ago by Jay Rainey
Move update and cancel around on GUI. Refs #9112.
Changeset: a77c0bfb40f1a02c43871722feb728d32ea3b6b4
comment:12 Changed 7 years ago by Jay Rainey
Make population of list public. Refs #9112.
- This allows it to be populated when the button is pressed, so if a user logs in while the search GUI is open then it will work as expected.
Changeset: ff9573024f54f7f743f682b6b89f5cbfed198da4
comment:13 Changed 7 years ago by Jay Rainey
Add openCatalogSelection slot to search GUI. Refs #9112.
Changeset: 760aee50dca0c2f6c19cf6eb1f72ad1abfb8e642
comment:14 Changed 7 years ago by Jay Rainey
Added checkbox connect. Refs #9112.
Changeset: aa51ead36543857deedb3eb506b8774e65b432fb
comment:15 Changed 7 years ago by Jay Rainey
Set facility list as focus. Refs #9112.
Changeset: 0ab262a0122ad5301cad9ce8388e449fc6301461
comment:16 Changed 7 years ago by Jay Rainey
Automatically select facility when logged into catalog. Refs #9112.
Changeset: 58e10f187d2b5033c84a5a7281953fa5a6e3a32c
comment:17 Changed 7 years ago by Jay Rainey
Updated CatalogListInstrument algor to take sessionID. Refs #9112.
Changeset: 4eee3a0251d2971bcba3adc3d27bcce364668a9b
comment:18 Changed 7 years ago by Jay Rainey
Updated search algorithm to take sessionID. Refs #9112.
Changeset: 45e045bad91dedcbbb14e2db6045f6fecce93b1f
comment:19 Changed 7 years ago by Jay Rainey
Simplified instrument algorithm use. Refs #9112.
Changeset: f991b6c4678e89e3d5af33a35b5da92c4b73b540
comment:20 Changed 7 years ago by Jay Rainey
Updated getInvestigationList for sessionIDs. Refs #9112.
Changeset: eddd19ed24dbe9eefde92946666d3a5522f03abb
comment:21 Changed 7 years ago by Jay Rainey
Updated method documentation. Refs #9112.
Changeset: 9c2b4976f0bff2a0b5c3c255df34cc50f32bf950
comment:22 Changed 7 years ago by Jay Rainey
Forgot to pass session to investigation algorithm. Refs #9112.
Changeset: e0635061034a0f53d2230f1f85325237e3e45223
comment:23 Changed 7 years ago by Jay Rainey
Fixed selection of selected catalogs. Refs #9112.
Changeset: 88c045f1e9c7a407d7e53bafdfd8ba92bd34aa1f
comment:24 Changed 7 years ago by Jay Rainey
Add sessionID to investigation table. Refs #9112.
Changeset: b7ee44109f0479f42dc44631a34f2e350fb2100b
comment:25 Changed 7 years ago by Jay Rainey
Use session ID from table in GUI to get datafiles. Refs #9112.
Changeset: dcd3a503a544fe2ea8f8e623def30fa52ca66fc3
comment:26 Changed 7 years ago by Jay Rainey
Forgot to hide sessionID on GUI. Refs #9112.
Changeset: 131b2adc28f808d7ee89c290433be33268f350fa
comment:27 Changed 7 years ago by Jay Rainey
Style update to catalogHelper. Refs #9112.
Changeset: 5450f013054fae40cb554883ac422f79096c3d61
comment:28 Changed 7 years ago by Jay Rainey
Use specific session for external downloading. Refs #9112.
Changeset: 88be4915f49271309fa28b7ce59b2d8f72da35e4
comment:29 Changed 7 years ago by Jay Rainey
Use sessionid of investigation when publishing. Refs #9112.
Changeset: 1de53d79b609d35ce6792e4294db542c02150768
comment:30 Changed 7 years ago by Jay Rainey
Merge remote-tracking branch 'origin/master' into feature/9112_multiple_catalog_support. Refs #9112.
Conflicts:
- Code/Mantid/MantidQt/CustomDialogs/inc/MantidQtCustomDialogs/CatalogPublishDialog.h
- Code/Mantid/MantidQt/CustomDialogs/src/CatalogPublishDialog.cpp
Changeset: 90895d647ff5ba6b91f12acc1e4ca34a1c6e657b
comment:31 Changed 7 years ago by Jay Rainey
Move method to match header order. Refs #9112.
Changeset: b9f775724a52a60a20c5aeb96c3cc9c441d851ed
comment:32 Changed 7 years ago by Jay Rainey
Remove temporary measure from publishing. Refs #9112.
Changeset: ebb1a8c874c7eb5add771e54a97006b9d5dcb242
comment:33 Changed 7 years ago by Jay Rainey
Default selection of first element. Refs #9112.
Changeset: ab96a74e9da33a3a1f33d5a20e480e0fc6c5a25b
comment:34 Changed 7 years ago by Jay Rainey
Search through all active catalogs by default. Refs #9112.
Changeset: f735adc9b8918fbacc2340f26b1f9215f1c145e7
comment:35 Changed 7 years ago by Jay Rainey
Add message to catalogSelector dialog. Refs #9112.
Changeset: 80df3e663468587cb85ebc88d197af45cb45d853
comment:36 Changed 7 years ago by Jay Rainey
Update columns in ICAT3. Refs #9112.
- This allows ICAT3 & ICAT4 catalogs to work together
Changeset: ab6119e1d1dbb3cfc82bcc1038d925e39eae1b64
comment:37 Changed 7 years ago by Jay Rainey
- Status changed from inprogress to verify
- Resolution set to fixed
To test
Disable archives access
This allows the external downloading functionality to work, and can be disabled by:
sudo vim /etc/auto.master comment out line 24 - `/archive /etc/auto.archive sudo service autofs restart
Verify against one catalog
You should verify that the core catalog algorithms work as expected on one catalog. This can be achieved by using the catalog interface:
- Log into a catalog and click Search from the catalog menu.
- Perform a search & double click an investigation that is returned.
- Select a datafile to download.
To verify the publishing functionality:
- Select Publish from the catalog menu. The publishing dialog will be displayed.
- Provide a name for the file to be saved as and copy the filename to your clipboard.
- Select a valid investigation to publish to (1193002 is valid on the test account) and click Run.
To verify the datafile was published to the archives you will need to find the specific investigation it was saved to. To do this:
- Open the search GUI and click Advanced search.
- Select LOQ as your instrument
- In the Datafile name: field enter the name of the file you copied to the clipboard.
- Click Search, and one investigation should be displayed. Click the investigation and the datafiles
Verify against multiple catalog
Once you have verified that the catalog functionality works for one catalog, you should log into the catalog again (using the same credentials). As two of the same catalogs exist you should see double for each result, e.g. when searching or in the instrument dropdown menu.
To verify that the download and publishing functionality works you need to see that each catalog provides and uses a different session id. To do this:
- Set DEBUG as the Log level in Mantid.
- Search for an investigation (e.g. Select MUSR as instrument and click Search).
- Notice that all the investigations are doubled. This is expected as you have logged into the same catalog twice.
- Double click an investigation to its datafiles.
- Select a datafile to download and click Load.
- Note that URL that output contains the session id.
You should then select the duplicate investigation (since you logged into two catalogs that are the same), and perform the same steps. The session id should be different.
Testing different catalogs together
Changes made in comment:35 allow ICat3 and ICat4 catalogs to work together. To test this you should add catalog information to SNS in Facilities.xml. E.g. replace their current catalog information with:
<catalog name="ICat3Catalog"> <soapendpoint url="https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT"></soapendpoint> <externaldownload url="https://isisicatds.stfc.ac.uk/idsbeta/"></externaldownload> <filelocation> <prefix regex="\\\\isis\\inst\$\\Instruments\$"></prefix> <windows replacement=""></windows> <linux replacement="/archive"></linux> <mac replacement="/archive"></mac> </filelocation> </catalog>
This means that if you select Login from the catalog menu and choose SNS from the drop-down then this catalog information will be used. You can then log into ISIS (ICat4Catalog) as usual.
comment:38 Changed 7 years ago by Nick Draper
- Status changed from verify to verifying
- Tester set to Nick Draper
comment:39 Changed 7 years ago by Nick Draper
- Status changed from verifying to closed
Merge remote-tracking branch 'origin/feature/9112_multiple_catalog_support'
Full changeset: 36d78a7d2629d3662289fb480d9416d084c9364e
comment:40 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 9955