Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.mylyn.oslc.ui/src/org/eclipse/mylyn/internal/oslc/ui/OslcServiceDiscoveryProvider.java')
-rw-r--r--org.eclipse.mylyn.oslc.ui/src/org/eclipse/mylyn/internal/oslc/ui/OslcServiceDiscoveryProvider.java34
1 files changed, 18 insertions, 16 deletions
diff --git a/org.eclipse.mylyn.oslc.ui/src/org/eclipse/mylyn/internal/oslc/ui/OslcServiceDiscoveryProvider.java b/org.eclipse.mylyn.oslc.ui/src/org/eclipse/mylyn/internal/oslc/ui/OslcServiceDiscoveryProvider.java
index 7e78208b3..fff36ea63 100644
--- a/org.eclipse.mylyn.oslc.ui/src/org/eclipse/mylyn/internal/oslc/ui/OslcServiceDiscoveryProvider.java
+++ b/org.eclipse.mylyn.oslc.ui/src/org/eclipse/mylyn/internal/oslc/ui/OslcServiceDiscoveryProvider.java
@@ -102,24 +102,26 @@ public class OslcServiceDiscoveryProvider implements ITreeContentProvider {
public void fetchDeferredChildren(Object object, IElementCollector collector, IProgressMonitor monitor) {
try {
- monitor.beginTask("Loading...", IProgressMonitor.UNKNOWN); //$NON-NLS-1$
- ServiceProviderCatalogWrapper wrapper = (ServiceProviderCatalogWrapper) object;
- Object parentElement = wrapper.getServiceObject();
- if (parentElement instanceof OslcServiceProviderCatalog) {
- OslcServiceProviderCatalog remoteFolder = (OslcServiceProviderCatalog) parentElement;
- List<OslcServiceProvider> providers = connector.getAvailableServices(repository,
- remoteFolder.getUrl(), monitor);
- for (OslcServiceProvider oslcServiceProvider : providers) {
- collector.add(new ServiceProviderCatalogWrapper(oslcServiceProvider), monitor);
- }
- } else if (parentElement instanceof OslcServiceProvider) {
- selectedPovider = (OslcServiceProvider) parentElement;
- OslcServiceDescriptor serviceDescriptor = connector.getServiceDescriptor(repository,
- selectedPovider, monitor);
- collector.add(new ServiceProviderCatalogWrapper(serviceDescriptor), monitor);
+ if (!monitor.isCanceled()) {
+ monitor.beginTask("Loading...", IProgressMonitor.UNKNOWN); //$NON-NLS-1$
+ ServiceProviderCatalogWrapper wrapper = (ServiceProviderCatalogWrapper) object;
+ Object parentElement = wrapper.getServiceObject();
+ if (parentElement instanceof OslcServiceProviderCatalog) {
+ OslcServiceProviderCatalog remoteFolder = (OslcServiceProviderCatalog) parentElement;
+ List<OslcServiceProvider> providers = connector.getAvailableServices(repository,
+ remoteFolder.getUrl(), monitor);
+ for (OslcServiceProvider oslcServiceProvider : providers) {
+ collector.add(new ServiceProviderCatalogWrapper(oslcServiceProvider), monitor);
+ }
+ } else if (parentElement instanceof OslcServiceProvider) {
+ selectedPovider = (OslcServiceProvider) parentElement;
+ OslcServiceDescriptor serviceDescriptor = connector.getServiceDescriptor(repository,
+ selectedPovider, monitor);
+ collector.add(new ServiceProviderCatalogWrapper(serviceDescriptor), monitor);
// for (OslcCreationDialogDescriptor oslcRecordType : serviceDescriptor.getCreationDialogs()) {
// collector.add(new ServiceProviderCatalogWrapper(oslcRecordType), monitor);
// }
+ }
}
} catch (CoreException e) {
StatusHandler.log(new Status(IStatus.ERROR, IOslcCoreConstants.ID_PLUGIN,
@@ -147,7 +149,7 @@ public class OslcServiceDiscoveryProvider implements ITreeContentProvider {
}
public String getLabel(Object o) {
- return null;
+ return element.toString();
}
public Object getParent(Object o) {

Back to the top