org.apache.ignite.internal

## Interface IgniteServicesEx

All Superinterfaces:
  IgniteAsyncSupport, IgniteServices

All Known Implementing Classes:
  IgniteServicesImpl

    public interface IgniteServicesEx
    extends IgniteServices

Extended interface that provides additional internal methods for managing services.

### Method Summary

All Methods Instance Methods Abstract Methods
`<T> T` `serviceProxy(String name, Class<? super T> svcItf, boolean sticky, @Nullable Supplier<Map<String,Object>> callAttrsProvider, long timeout)` Gets a remote handle on the service.

### Methods inherited from interface org.apache.ignite.IgniteServices

`cancel, cancelAll, cancelAll, cancelAllAsync, cancelAllAsync, cancelAsync, clusterGroup, deploy, deployAll, deployAllAsync, deployAsync, deployClusterSingleton, deployClusterSingletonAsync, deployKeyAffinitySingleton, deployKeyAffinitySingletonAsync, deployMultiple, deployMultipleAsync, deployNodeSingleton, deployNodeSingletonAsync, service, serviceDescriptors, serviceProxy, serviceProxy, serviceProxy, serviceProxy, services, withAsync`

### Methods inherited from interface org.apache.ignite.lang.IgniteAsyncSupport

`future, isAsync`

### Method Detail

#### serviceProxy

    <T> T serviceProxy(String name,
                       Class<? super T> svcItf,
                       boolean sticky,
                       @Nullable
                       @Nullable Supplier<Map<String,Object>> callAttrsProvider,
                       long timeout)
                throws IgniteException

Gets a remote handle on the service. If service is available locally and no caller context provider is specified, then a local instance is returned and the timeout is ignored, otherwise, a proxy is dynamically created and provided for the specified service.

Type Parameters:
  `T` - Service type.
Parameters:
  `name` - Service name.
  `svcItf` - Interface for the service.
  `sticky` - Whether or not Ignite should always contact the same remote service or try to load-balance between services.
  `callAttrsProvider` - Service call context attributes provider.
  `timeout` - If greater than 0 created proxy will wait for service availability only specified time, and will limit remote service invocation time.
Returns:
  Either proxy over remote service or local service if it is deployed locally and no caller context provider is specified.
Throws:
  `IgniteException` - If failed to create service proxy.

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.13.0
Release Date | : April 20 2022