/******************************************************************************* * Copyright (c) 2010 Markus Alexander Kuppe. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Markus Alexander Kuppe (ecf-dev_eclipse.org <at> lemmster <dot> de) - initial API and implementation ******************************************************************************/ package org.eclipse.ecf.remoteservice; import java.util.Dictionary; import org.osgi.framework.ServiceReference; /** * @since 5.0 */ public interface IOSGiRemoteServiceContainerAdapter extends IRemoteServiceContainerAdapter { /** * Register a new remote service. This method is to be called by the service * server...i.e. the client that wishes to make available a service to other * client within this container. * * @param clazzes * The class names under which the service will be remoted. * The array must match or be a subset of the service's * properties under the key Constants.OBJECTCLASS. * Must not be <code>null</code> and must not be an * empty array. * @param aServiceReference * a <code>ServiceRefenrence</code>. This object must * <ul> * <li>not be <code>null</code></li> * </ul> * @param properties * to be associated with the service reference (replaces * servicereference's properties) * @return IRemoteServiceRegistration the service registration. Will not * return <code>null</code> . */ public IRemoteServiceRegistration registerRemoteService(String[] clazzes, ServiceReference aServiceReference, Dictionary properties); }