summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--jurt/com/sun/star/comp/servicemanager/ServiceManager.java15
1 files changed, 6 insertions, 9 deletions
diff --git a/jurt/com/sun/star/comp/servicemanager/ServiceManager.java b/jurt/com/sun/star/comp/servicemanager/ServiceManager.java
index a4a5f8d865c8..38e5cb30646d 100644
--- a/jurt/com/sun/star/comp/servicemanager/ServiceManager.java
+++ b/jurt/com/sun/star/comp/servicemanager/ServiceManager.java
@@ -188,15 +188,12 @@ public class ServiceManager implements XMultiServiceFactory,
public String[] getAvailableServiceNames()
throws com.sun.star.uno.RuntimeException
{
- int i = 0;
- String[] availableServiceNames = new String[factoriesByServiceNames.size()];
-
- java.util.Iterator<String> keys = factoriesByServiceNames.keySet().iterator();
-
- while (keys.hasNext())
- availableServiceNames[i++] = keys.next();
-
- return availableServiceNames;
+ try{
+ return factoriesByServiceNames.keySet().toArray(
+ new String[ factoriesByServiceNames.size() ] );
+ } catch(Exception ex) {
+ throw new com.sun.star.uno.RuntimeException(ex.toString());
+ }
}
// XMultiComponentFactory implementation