View | Details | Raw Unified | Return to bug 249240 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/ecf/remoteservice/IRemoteServiceReference.java (+8 lines)
Lines 23-28 Link Here
23
 */
23
 */
24
public interface IRemoteServiceReference {
24
public interface IRemoteServiceReference {
25
	/**
25
	/**
26
	 * Get the remote service ID for this reference.  Will not return <code>null</code>.
27
	 * 
28
	 * @return IRemoteServiceID the id for the remote service associated with this
29
	 * reference.
30
	 */
31
	public IRemoteServiceID getID();
32
33
	/**
26
	 * Get container ID for remote service
34
	 * Get container ID for remote service
27
	 * 
35
	 * 
28
	 * @return ID the containerID for this reference (where the service is
36
	 * @return ID the containerID for this reference (where the service is
(-)src/org/eclipse/ecf/remoteservice/IRemoteServiceRegistration.java (-1 / +9 lines)
Lines 12-18 Link Here
12
package org.eclipse.ecf.remoteservice;
12
package org.eclipse.ecf.remoteservice;
13
13
14
import java.util.Dictionary;
14
import java.util.Dictionary;
15
16
import org.eclipse.ecf.core.identity.ID;
15
import org.eclipse.ecf.core.identity.ID;
17
16
18
/**
17
/**
Lines 23-28 Link Here
23
 * 
22
 * 
24
 */
23
 */
25
public interface IRemoteServiceRegistration {
24
public interface IRemoteServiceRegistration {
25
26
	/**
27
	 * Get the remote service ID for this registration.  Will not return <code>null</code>.
28
	 * 
29
	 * @return IRemoteServiceID the id for the remote service associated with this
30
	 * registration.
31
	 */
32
	public IRemoteServiceID getID();
33
26
	/**
34
	/**
27
	 * Get the container ID for the registration
35
	 * Get the container ID for the registration
28
	 * 
36
	 * 
(-)src/org/eclipse/ecf/remoteservice/IRemoteServiceContainerAdapter.java (-10 / +28 lines)
Lines 13-20 Link Here
13
13
14
import java.util.Dictionary;
14
import java.util.Dictionary;
15
import org.eclipse.core.runtime.IAdaptable;
15
import org.eclipse.core.runtime.IAdaptable;
16
import org.eclipse.ecf.core.identity.ID;
16
import org.eclipse.ecf.core.identity.*;
17
import org.eclipse.ecf.core.identity.Namespace;
18
import org.eclipse.equinox.concurrent.future.IFuture;
17
import org.eclipse.equinox.concurrent.future.IFuture;
19
import org.osgi.framework.*;
18
import org.osgi.framework.*;
20
19
Lines 161-166 Link Here
161
	public IFuture asyncGetRemoteServiceReferences(ID[] idFilter, String clazz, String filter);
160
	public IFuture asyncGetRemoteServiceReferences(ID[] idFilter, String clazz, String filter);
162
161
163
	/**
162
	/**
163
	 * Get namespace to use for this remote service provider.
164
	 * @return Namespace to use for creating IRemoteServiceID for this remote service provider.  Will
165
	 * not return <code>null</code>.
166
	 * @since 3.0
167
	 */
168
	public Namespace getRemoteServiceNamespace();
169
170
	/**
171
	 * Create a remote service ID from a containerID and a containerRelative identifier.
172
	 * 
173
	 * @param containerID the containerID to use to create the IRemoteServiceID.  Cannot be <code>null</code>.
174
	 * @param containerRelativeID the containerRelativeID to use to create the IRemoteServiceID.
175
	 * @return IRemoteServiceID created
176
	 */
177
	public IRemoteServiceID createRemoteServiceID(ID containerID, int containerRelativeID) throws IDCreateException;
178
179
	/**
180
	 * Get the remote service reference known to this container for the given IRemoteServiceID.  Note that
181
	 * this method must be guaranteed not to block by the provider implementation.
182
	 * 
183
	 * @param serviceID the serviceID to retrieve the IRemoteServiceReference for.
184
	 * @return IRemoteServiceReference the remote service reference associated with the given serviceID.
185
	 * Will return <code>null</code> if no IRemoteServiceReference found for the given serviceID.
186
	 */
187
	public IRemoteServiceReference getRemoteServiceReference(IRemoteServiceID serviceID);
188
189
	/**
164
	 * Get remote service for given IRemoteServiceReference. Note that clients
190
	 * Get remote service for given IRemoteServiceReference. Note that clients
165
	 * that call this method successfully should later call
191
	 * that call this method successfully should later call
166
	 * {@link IRemoteServiceContainerAdapter#ungetRemoteService(IRemoteServiceReference)}
192
	 * {@link IRemoteServiceContainerAdapter#ungetRemoteService(IRemoteServiceReference)}
Lines 197-210 Link Here
197
	public boolean ungetRemoteService(IRemoteServiceReference reference);
223
	public boolean ungetRemoteService(IRemoteServiceReference reference);
198
224
199
	/**
225
	/**
200
	 * Get namespace to use for this remote service provider.
201
	 * @return Namespace to use for creating IDs for this remote service provider.  Will
202
	 * not return <code>null</code>.
203
	 * @since 3.0
204
	 */
205
	public Namespace getRemoteServiceNamespace();
206
207
	/**
208
	 * Creates a <code>IRemoteFilter</code> object. This <code>IRemoteFilter</code> object may
226
	 * Creates a <code>IRemoteFilter</code> object. This <code>IRemoteFilter</code> object may
209
	 * be used to match a <code>IRemoteServiceReference</code> object or a
227
	 * be used to match a <code>IRemoteServiceReference</code> object or a
210
	 * <code>Dictionary</code> object.
228
	 * <code>Dictionary</code> object.
(-)src/org/eclipse/ecf/remoteservice/IRemoteServiceID.java (+26 lines)
Added Link Here
1
/*******************************************************************************
2
* Copyright (c) 2009 EclipseSource and others. All rights reserved. This
3
* program and the accompanying materials are made available under the terms of
4
* the Eclipse Public License v1.0 which accompanies this distribution, and is
5
* available at http://www.eclipse.org/legal/epl-v10.html
6
*
7
* Contributors:
8
*   EclipseSource - initial API and implementation
9
******************************************************************************/
10
package org.eclipse.ecf.remoteservice;
11
12
import org.eclipse.ecf.core.identity.ID;
13
14
public interface IRemoteServiceID extends ID {
15
	/**
16
	 * Get the container ID for this remote service.  Will not return <code>null</code>.
17
	 * @return ID the ID for the container associated with this remote service.  Will not return <code>null</code>.
18
	 */
19
	public ID getContainerID();
20
21
	/**
22
	 * Get container-relative ID for the remote service identified
23
	 * @return int the container-relative ID.  
24
	 */
25
	public int getContainerRelativeID();
26
}

Return to bug 249240