| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| package com.sun.star.comp.test.deployment.passive_java; |
| |
| import com.sun.star.frame.DispatchDescriptor; |
| import com.sun.star.frame.XDispatch; |
| import com.sun.star.frame.XDispatchProvider; |
| import com.sun.star.lang.XServiceInfo; |
| import com.sun.star.lib.uno.helper.WeakBase; |
| import com.sun.star.uno.UnoRuntime; |
| import com.sun.star.uno.XComponentContext; |
| import com.sun.star.util.URL; |
| |
| public final class Provider extends WeakBase |
| implements XServiceInfo, XDispatchProvider |
| { |
| public Provider(XComponentContext context) { |
| this.context = context; |
| } |
| |
| public String getImplementationName() { return implementationName; } |
| |
| public boolean supportsService(String ServiceName) { |
| return ServiceName.equals(getSupportedServiceNames()[0]); //TODO |
| } |
| |
| public String[] getSupportedServiceNames() { |
| return serviceNames; |
| } |
| |
| public XDispatch queryDispatch( |
| URL URL, String TargetFrameName, int SearchFlags) |
| { |
| return UnoRuntime.queryInterface( |
| XDispatch.class, |
| context.getValueByName( |
| "/singletons/" + |
| "com.sun.star.test.deployment.passive_java_singleton")); |
| } |
| |
| public XDispatch[] queryDispatches(DispatchDescriptor[] Requests) { |
| XDispatch[] s = new XDispatch[Requests.length]; |
| for (int i = 0; i < s.length; ++i) { |
| s[i] = queryDispatch( |
| Requests[i].FeatureURL, Requests[i].FrameName, |
| Requests[i].SearchFlags); |
| } |
| return s; |
| } |
| |
| private final XComponentContext context; |
| |
| static final String implementationName = |
| "com.sun.star.comp.test.deployment.passive_java"; |
| |
| static final String[] serviceNames = new String[] { |
| "com.sun.star.test.deployment.passive_java" }; |
| } |