public class IgniteClientSpringBean extends Object implements IgniteClient, org.springframework.context.SmartLifecycle
ClientConfiguration
to be set before bean use
(see setClientConfiguration(ClientConfiguration)
}).
A note should be taken that Ignite client instance is started after all other
Spring beans have been initialized and right before Spring context is refreshed.
That implies that it's not valid to reference IgniteClientSpringBean
from
any kind of Spring bean init methods like PostConstruct
.
If it's required to reference IgniteClientSpringBean
for other bean
initialization purposes, it should be done from a ContextRefreshedEvent
listener method declared in that bean.
<bean id="igniteClient" class="org.apache.ignite.IgniteClientSpringBean"> <property name="clientConfiguration"> <bean class="org.apache.ignite.configuration.ClientConfiguration"> <property name="addresses"> <list> <value>127.0.0.1:10800</value> </list> </property> </bean> </property> </bean>
Modifier and Type | Field and Description |
---|---|
static int |
DFLT_IGNITE_CLI_LIFECYCLE_PHASE
Default Ignite client
SmartLifecycle phase. |
Constructor and Description |
---|
IgniteClientSpringBean() |
Modifier and Type | Method and Description |
---|---|
IgniteBinary |
binary() |
<K,V> ClientCache<K,V> |
cache(String name)
Get existing cache.
|
Collection<String> |
cacheNames()
Gets the names of all available caches.
|
IgniteClientFuture<Collection<String>> |
cacheNamesAsync()
Gets the names of all available caches.
|
void |
close() |
ClientCluster |
cluster()
Gets client cluster facade.
|
ClientCompute |
compute()
Gets compute facade over all cluster nodes started in server mode.
|
ClientCompute |
compute(ClientClusterGroup grp)
Gets compute facade over the specified cluster group.
|
<K,V> ClientCache<K,V> |
createCache(ClientCacheConfiguration cfg)
Creates a cache with the specified configuration.
|
<K,V> ClientCache<K,V> |
createCache(String name)
Creates a cache with a default configuration.
|
<K,V> IgniteClientFuture<ClientCache<K,V>> |
createCacheAsync(ClientCacheConfiguration cfg)
Creates a cache with the specified configuration.
|
<K,V> IgniteClientFuture<ClientCache<K,V>> |
createCacheAsync(String name)
Creates a cache with a default configuration.
|
void |
destroyCache(String name)
Destroys the cache with the given name.
|
IgniteClientFuture<Void> |
destroyCacheAsync(String name)
Destroys the cache with the given name.
|
ClientConfiguration |
getClientConfiguration()
Gets Ignite client configuration.
|
<K,V> ClientCache<K,V> |
getOrCreateCache(ClientCacheConfiguration cfg)
Gets the existing cache or creates a new cache if it does not exist.
|
<K,V> ClientCache<K,V> |
getOrCreateCache(String name)
Gets the existing cache or creates a new cache with default configuration if it does not exist.
|
<K,V> IgniteClientFuture<ClientCache<K,V>> |
getOrCreateCacheAsync(ClientCacheConfiguration cfg)
Gets the existing cache or creates a new cache if it does not exist.
|
<K,V> IgniteClientFuture<ClientCache<K,V>> |
getOrCreateCacheAsync(String name)
Gets the existing cache or creates a new cache with default configuration if it does not exist.
|
int |
getPhase() |
boolean |
isAutoStartup() |
boolean |
isRunning() |
FieldsQueryCursor<List<?>> |
query(SqlFieldsQuery qry)
Execute SQL query and get cursor to iterate over results.
|
ClientServices |
services()
Gets
services facade over all cluster nodes started in server mode. |
ClientServices |
services(ClientClusterGroup grp)
Gets
services facade over nodes within the cluster group. |
IgniteClientSpringBean |
setClientConfiguration(ClientConfiguration cfg)
Sets Ignite client configuration.
|
IgniteClientSpringBean |
setPhase(int phase)
Sets
SmartLifecycle phase during which the current bean will be initialized. |
void |
start() |
void |
stop() |
void |
stop(Runnable callback) |
ClientTransactions |
transactions()
Gets client transactions facade.
|
public static final int DFLT_IGNITE_CLI_LIFECYCLE_PHASE
SmartLifecycle
phase.public boolean isAutoStartup()
isAutoStartup
in interface org.springframework.context.SmartLifecycle
public void stop(Runnable callback)
stop
in interface org.springframework.context.SmartLifecycle
public void stop()
stop
in interface org.springframework.context.Lifecycle
public boolean isRunning()
isRunning
in interface org.springframework.context.Lifecycle
public void start()
start
in interface org.springframework.context.Lifecycle
public int getPhase()
getPhase
in interface org.springframework.context.Phased
public <K,V> ClientCache<K,V> getOrCreateCache(String name) throws ClientException
getOrCreateCache
in interface IgniteClient
name
- Cache name.ClientException
public <K,V> IgniteClientFuture<ClientCache<K,V>> getOrCreateCacheAsync(String name) throws ClientException
getOrCreateCacheAsync
in interface IgniteClient
name
- Cache name.ClientException
public <K,V> ClientCache<K,V> getOrCreateCache(ClientCacheConfiguration cfg) throws ClientException
getOrCreateCache
in interface IgniteClient
cfg
- Cache configuration. If the cache exists, this configuration is ignored.ClientException
public <K,V> IgniteClientFuture<ClientCache<K,V>> getOrCreateCacheAsync(ClientCacheConfiguration cfg) throws ClientException
getOrCreateCacheAsync
in interface IgniteClient
cfg
- Cache configuration. If the cache exists, this configuration is ignored.ClientException
public <K,V> ClientCache<K,V> cache(String name)
cache
in interface IgniteClient
name
- Cache name.public Collection<String> cacheNames() throws ClientException
cacheNames
in interface IgniteClient
ClientException
public IgniteClientFuture<Collection<String>> cacheNamesAsync() throws ClientException
cacheNamesAsync
in interface IgniteClient
ClientException
public void destroyCache(String name) throws ClientException
ClientException
if the cache does not exist.destroyCache
in interface IgniteClient
ClientException
public IgniteClientFuture<Void> destroyCacheAsync(String name) throws ClientException
ClientException
if the cache does not exist.destroyCacheAsync
in interface IgniteClient
ClientException
public <K,V> ClientCache<K,V> createCache(String name) throws ClientException
createCache
in interface IgniteClient
name
- Cache name.ClientException
public <K,V> IgniteClientFuture<ClientCache<K,V>> createCacheAsync(String name) throws ClientException
createCacheAsync
in interface IgniteClient
name
- Cache name.ClientException
public <K,V> ClientCache<K,V> createCache(ClientCacheConfiguration cfg) throws ClientException
createCache
in interface IgniteClient
cfg
- Cache configuration.ClientException
public <K,V> IgniteClientFuture<ClientCache<K,V>> createCacheAsync(ClientCacheConfiguration cfg) throws ClientException
createCacheAsync
in interface IgniteClient
cfg
- Cache configuration.ClientException
public IgniteBinary binary()
binary
in interface IgniteClient
IgniteBinary
interface.public FieldsQueryCursor<List<?>> query(SqlFieldsQuery qry)
query
in interface IgniteClient
qry
- SQL query.public ClientTransactions transactions()
transactions
in interface IgniteClient
public ClientCompute compute()
compute
in interface IgniteClient
public ClientCompute compute(ClientClusterGroup grp)
ClientCompute
instance will only include nodes from
this cluster group.compute
in interface IgniteClient
grp
- Cluster group.public ClientCluster cluster()
cluster
in interface IgniteClient
public ClientServices services()
services
facade over all cluster nodes started in server mode.services
in interface IgniteClient
public ClientServices services(ClientClusterGroup grp)
services
facade over nodes within the cluster group. All operations
on the returned ClientServices
instance will only include nodes from
the specified cluster group.
Note: In some cases there will be additional requests for each service invocation from client to server
to resolve cluster group.services
in interface IgniteClient
grp
- Cluster group.Services
functionality over given cluster group.public void close() throws Exception
close
in interface AutoCloseable
Exception
public IgniteClientSpringBean setClientConfiguration(ClientConfiguration cfg)
public ClientConfiguration getClientConfiguration()
public IgniteClientSpringBean setPhase(int phase)
SmartLifecycle
phase during which the current bean will be initialized. Note, underlying Ignite
client will be closed during handling of DisposableBean
since IgniteClient
implements AutoCloseable
interface.
Follow @ApacheIgnite
Ignite Database and Caching Platform : ver. 2.11.0 Release Date : September 11 2021