Locate which streams a changeset is on using RTC API.
Accepted answer
As of RTC 4.0, you would want to take a look at the following:
List<IChangeSetHandle> changeSets = new ArrayList<IChangeSetHandle>();
changeSets.add({change_set_I_care_about}); // Note you can add multiple change sets here...
List<IWorkspaceHandle> streams = ... {this is the list of streams you want to look in, for example, prior to this you might want to run a query to find all the streams in a given project area, etc.}
ILocateChangeSetsSearchCriteria scope = ILocateChangeSetsSearchCriteria.FACTORY.create(changeSets , streams, Collections.EMPTY_LIST, Collections.EMPTY_LIST);
IWorkspaceManager workspaceManager = SCMPlatform.getWorkspaceManager(repository);
List<ILocateChangeSetsSearchResult> result = workspaceManager.locateChangeSets(scope, monitor);
Note: On the server, this ends up calling: IScmQueryService.findLocateChangeSets(ILocateChangeSetsSearchCriteria scope, IRepositoryProgressMonitorHandle repoMonitor)
Note: On the server, this ends up calling: IScmQueryService.findLocateChangeSets(ILocateChangeSetsSearchCriteria scope, IRepositoryProgressMonitorHandle repoMonitor)