Summary
CyNDEx-2 needs initial support for NDEx 3 folders so Cytoscape users can browse their NDEx account folder hierarchy, import networks from folders, choose a destination folder when uploading a network, and create folders from the upload/browse workflows.
CyNDEx-2 currently uses ndex-java-client for NDEx network import/export/search operations. To avoid duplicating NDEx REST logic inside CyNDEx-2, the Java client should expose the needed NDEx 3 folder/file APIs first.
Motivation
CyNDEx-2 should not implement a separate long-lived NDEx V3 REST adapter for folders. Folder behavior, authentication, base URL handling, paging, request serialization, response parsing, user agent handling, and NDEx error handling should stay centralized in ndex-java-client.
The current ndex-object-model already appears to include useful model classes such as:
NdexFolder
FolderRequest
NdexShortcut
ShortcutRequest
NetworkSummary.getFolderId()
But NdexRestClientModelAccessLayer does not currently expose folder/shortcut/file methods needed by CyNDEx-2.
Needed Client Methods
Please add Java client methods for the NDEx 3 APIs needed by the CyNDEx-2 folder MVP.
Suggested methods on NdexRestClientModelAccessLayer:
UserHomeContent getUserHome(UUID userId)
List<NdexFolder> listFolders()
NdexFolder getFolder(UUID folderId)
FolderContents listFolderContents(UUID folderId, int start, int size)
FolderItemCounts getFolderItemCounts(UUID folderId)
UUID createFolder(FolderRequest request)
MoveNetworksResult moveNetworksToFolder(UUID folderId, Collection<UUID> networkIds)
List<NdexShortcut> listShortcuts()
NdexShortcut getShortcut(UUID shortcutId)
FileSearchResult searchFiles(SimpleFileQuery query, int start, int size)
Summary
CyNDEx-2 needs initial support for NDEx 3 folders so Cytoscape users can browse their NDEx account folder hierarchy, import networks from folders, choose a destination folder when uploading a network, and create folders from the upload/browse workflows.
CyNDEx-2 currently uses
ndex-java-clientfor NDEx network import/export/search operations. To avoid duplicating NDEx REST logic inside CyNDEx-2, the Java client should expose the needed NDEx 3 folder/file APIs first.Motivation
CyNDEx-2 should not implement a separate long-lived NDEx V3 REST adapter for folders. Folder behavior, authentication, base URL handling, paging, request serialization, response parsing, user agent handling, and NDEx error handling should stay centralized in
ndex-java-client.The current
ndex-object-modelalready appears to include useful model classes such as:NdexFolderFolderRequestNdexShortcutShortcutRequestNetworkSummary.getFolderId()But
NdexRestClientModelAccessLayerdoes not currently expose folder/shortcut/file methods needed by CyNDEx-2.Needed Client Methods
Please add Java client methods for the NDEx 3 APIs needed by the CyNDEx-2 folder MVP.
Suggested methods on
NdexRestClientModelAccessLayer: