From 0bec290d13967c2ee1d7da9ea92177cbf4c9c383 Mon Sep 17 00:00:00 2001 From: chesnokoff Date: Mon, 22 Jun 2026 17:41:01 +0300 Subject: [PATCH] IGNITE-28799 Fix documentation code snippets compilation --- .../clustering/discovery-in-the-cloud.adoc | 4 +- docs/_docs/code-snippets/java/pom.xml | 36 ++++++ .../ignite/snippets/BasicCacheOperations.java | 1 + .../ignite/snippets/DiscoveryInTheCloud.java | 11 +- .../ignite/snippets/IgniteSessionContext.java | 23 +++- .../ignite/snippets/JavaThinClient.java | 12 +- .../org/apache/ignite/snippets/Snapshots.java | 5 +- .../org/apache/ignite/snippets/SqlAPI.java | 3 + .../java/org/apache/ignite/snippets/TDE.java | 1 + .../ignite/snippets/WarmUpStrategy.java | 111 +++++++++++------- .../snippets/WorkingWithBinaryObjects.java | 47 ++++++-- .../org/apache/ignite/snippets/k8s/K8s.java | 4 +- .../ignite/snippets/services/EchoService.java | 2 +- .../snippets/services/EchoServiceImpl.java | 2 +- .../snippets/services/ServiceExample.java | 3 +- 15 files changed, 187 insertions(+), 78 deletions(-) diff --git a/docs/_docs/clustering/discovery-in-the-cloud.adoc b/docs/_docs/clustering/discovery-in-the-cloud.adoc index 9f52c9197750d..8d43a8eeb0c8b 100644 --- a/docs/_docs/clustering/discovery-in-the-cloud.adoc +++ b/docs/_docs/clustering/discovery-in-the-cloud.adoc @@ -273,10 +273,10 @@ tab:C++[unsupported] == Azure Blob Storage Ignite supports automatic node discovery by utilizing Azure Blob Storage. -This mechanism is implemented in `TcpDiscoveryAzureBlobStorageIpFinder`. +This mechanism is implemented in `TcpDiscoveryAzureBlobStoreIpFinder`. On start-up, each node registers its IP address in the storage and discovers other nodes by reading the storage. -IMPORTANT: To use `TcpDiscoveryAzureBlobStorageIpFinder` you must download and link:setup#enabling-modules[enable the 'ignite-azure-ext' extension]. +IMPORTANT: To use `TcpDiscoveryAzureBlobStoreIpFinder` you must download and link:setup#enabling-modules[enable the 'ignite-azure-ext' extension]. Here is an example of how to configure Azure Blob Storage based IP finder: diff --git a/docs/_docs/code-snippets/java/pom.xml b/docs/_docs/code-snippets/java/pom.xml index 990895f58a84b..40d4df04e991b 100644 --- a/docs/_docs/code-snippets/java/pom.xml +++ b/docs/_docs/code-snippets/java/pom.xml @@ -25,6 +25,7 @@ UTF-8 2.19.0-SNAPSHOT + 1.0.0 @@ -67,12 +68,47 @@ ignite-zookeeper ${ignite.version} + + ${project.groupId} + ignite-aws-ext + ${ignite.extensions.version} + + + ${project.groupId} + ignite-azure-ext + ${ignite.extensions.version} + + + ${project.groupId} + ignite-cloud + 2.13.0 + + + ${project.groupId} + ignite-gce-ext + ${ignite.extensions.version} + + + ${project.groupId} + ignite-kubernetes + ${ignite.version} + + + ${project.groupId} + ignite-zookeeper-ip-finder-ext + ${ignite.extensions.version} + ${project.groupId} ignite-opencensus ${ignite.version} + + io.opencensus + opencensus-exporter-trace-zipkin + 0.31.1 + ${project.groupId} diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/BasicCacheOperations.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/BasicCacheOperations.java index 3d445fe453826..60c4023e0d5c2 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/BasicCacheOperations.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/BasicCacheOperations.java @@ -21,6 +21,7 @@ import org.apache.ignite.IgniteCompute; import org.apache.ignite.Ignition; import org.apache.ignite.cache.CacheAtomicityMode; +import org.apache.ignite.cache.ReadRepairStrategy; import org.apache.ignite.configuration.CacheConfiguration; import org.apache.ignite.lang.IgniteFuture; import org.junit.jupiter.api.Test; diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/DiscoveryInTheCloud.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/DiscoveryInTheCloud.java index 607eb5aa2d158..66556c2efe85e 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/DiscoveryInTheCloud.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/DiscoveryInTheCloud.java @@ -25,6 +25,7 @@ import org.apache.ignite.Ignition; import org.apache.ignite.configuration.IgniteConfiguration; import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi; +import org.apache.ignite.spi.discovery.tcp.ipfinder.azure.TcpDiscoveryAzureBlobStoreIpFinder; import org.apache.ignite.spi.discovery.tcp.ipfinder.cloud.TcpDiscoveryCloudIpFinder; import org.apache.ignite.spi.discovery.tcp.ipfinder.elb.TcpDiscoveryElbIpFinder; import org.apache.ignite.spi.discovery.tcp.ipfinder.gce.TcpDiscoveryGoogleStorageIpFinder; @@ -153,13 +154,13 @@ public static void azureBlobStorageExample() { //tag::azureBlobStorage[] TcpDiscoverySpi spi = new TcpDiscoverySpi(); - TcpDiscoveryAzureBlobStorageIpFinder ipFinder = new TcpDiscoveryGoogleStorageIpFinder(); + TcpDiscoveryAzureBlobStoreIpFinder ipFinder = new TcpDiscoveryAzureBlobStoreIpFinder(); - finder.setAccountName("yourAccountName"); - finder.setAccountKey("yourAccountKey"); - finder.setAccountEndpoint("yourEndpoint"); + ipFinder.setAccountName("yourAccountName"); + ipFinder.setAccountKey("yourAccountKey"); + ipFinder.setAccountEndpoint("yourEndpoint"); - finder.setContainerName("yourContainerName"); + ipFinder.setContainerName("yourContainerName"); spi.setIpFinder(ipFinder); diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/IgniteSessionContext.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/IgniteSessionContext.java index a295169cb002b..e9cecdd8c28ea 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/IgniteSessionContext.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/IgniteSessionContext.java @@ -16,16 +16,17 @@ */ package org.apache.ignite.snippets; -import javax.cache.Cache; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.Map; +import javax.cache.Cache; +import org.apache.ignite.Ignite; +import org.apache.ignite.Ignition; +import org.apache.ignite.cache.CacheInterceptor; import org.apache.ignite.cache.query.annotations.QuerySqlFunction; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.cache.CacheInterceptor; import org.apache.ignite.lang.IgniteBiTuple; import org.apache.ignite.resources.SessionContextProviderResource; import org.apache.ignite.session.SessionContextProvider; @@ -75,12 +76,22 @@ public class SessionContextCacheInterceptor implements CacheInterceptor entry) { + // No-op. + } + /** */ @Override public @Nullable IgniteBiTuple onBeforeRemove(Cache.Entry entry) { String ret = sesCtxPrv.getSessionContext().getAttribute("onBeforeRemove"); return new IgniteBiTuple<>(ret != null, entry.getValue()); } + + /** */ + @Override public void onAfterRemove(Cache.Entry entry) { + // No-op. + } } //end::cache-interceptor[] @@ -89,9 +100,9 @@ public void igniteSessContext() { //tag::ignite-context[] try (Ignite ign = Ignition.start(ignCfg)) { - Map appAttrs = F.asMap("SESSION_ID", "1234"); + Map appAttrs = Map.of("SESSION_ID", "1234"); - Ignite app = Ignite.withApplicationAttributes(appAttrs); + Ignite app = ign.withApplicationAttributes(appAttrs); //Your code here... } @@ -113,4 +124,4 @@ public void jdbcSessContext() { throw new RuntimeException(e); } } -} \ No newline at end of file +} diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/JavaThinClient.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/JavaThinClient.java index 50bb9cd3f939a..fa6944098d809 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/JavaThinClient.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/JavaThinClient.java @@ -25,6 +25,8 @@ import javax.cache.event.CacheEntryEvent; import javax.cache.event.CacheEntryListenerException; import javax.cache.event.CacheEntryUpdatedListener; +import javax.cache.processor.EntryProcessor; +import javax.cache.processor.MutableEntry; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteBinary; import org.apache.ignite.Ignition; @@ -32,6 +34,8 @@ import org.apache.ignite.cache.CacheAtomicityMode; import org.apache.ignite.cache.CacheMode; import org.apache.ignite.cache.CacheWriteSynchronizationMode; +import org.apache.ignite.cache.affinity.AffinityFunction; +import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction; import org.apache.ignite.cache.query.ContinuousQuery; import org.apache.ignite.cache.query.FieldsQueryCursor; import org.apache.ignite.cache.query.Query; @@ -47,6 +51,8 @@ import org.apache.ignite.client.ClientConnectionException; import org.apache.ignite.client.ClientDisconnectListener; import org.apache.ignite.client.ClientException; +import org.apache.ignite.client.ClientPartitionAwarenessMapper; +import org.apache.ignite.client.ClientPartitionAwarenessMapperFactory; import org.apache.ignite.client.ClientTransaction; import org.apache.ignite.client.ClientTransactions; import org.apache.ignite.client.IgniteClient; @@ -361,7 +367,7 @@ void partitionAwareness() throws Exception { // Put, get or remove data from the cache... cache.put(0, "Hello, world!"); // The partition number can be specified with IndexQuery#setPartition(Integer) as well. - ScanQuery scanQuery = new ScanQuery().setPartition(part); + ScanQuery scanQuery = new ScanQuery().setPartition(0); } catch (ClientException e) { System.err.println(e.getMessage()); } @@ -380,10 +386,10 @@ void partitionAwarenessWithCustomMapper() throws Exception { return aff::partition; } - }) + }); try (IgniteClient client = Ignition.startClient(cfg)) { - ClientCache cache = client.cache(PART_CUSTOM_AFFINITY_CACHE_NAME); + ClientCache cache = client.cache("partitioned_custom_affinity_cache"); // Put, get or remove data from the cache, partition awarenes will be enabled. } catch (ClientException e) { diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/Snapshots.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/Snapshots.java index 0aa2fb44414b2..feb3e8a5970a1 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/Snapshots.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/Snapshots.java @@ -16,7 +16,10 @@ */ package org.apache.ignite.snippets; +import java.io.File; +import java.util.Collections; import org.apache.ignite.Ignite; +import org.apache.ignite.IgniteCache; import org.apache.ignite.Ignition; import org.apache.ignite.configuration.CacheConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; @@ -28,7 +31,7 @@ void configuration() { //tag::config[] IgniteConfiguration cfg = new IgniteConfiguration(); - File exSnpDir = U.resolveWorkDirectory(U.defaultWorkDirectory(), "ex_snapshots", true); + File exSnpDir = new File("work", "ex_snapshots"); cfg.setSnapshotPath(exSnpDir.getAbsolutePath()); //end::config[] diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/SqlAPI.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/SqlAPI.java index eff7d0376767a..60308e4b392c9 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/SqlAPI.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/SqlAPI.java @@ -17,8 +17,10 @@ package org.apache.ignite.snippets; import java.io.Serializable; +import java.util.Arrays; import java.util.List; import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCache; @@ -26,6 +28,7 @@ import org.apache.ignite.cache.query.SqlFieldsQuery; import org.apache.ignite.cache.query.annotations.QuerySqlField; import org.apache.ignite.cache.query.annotations.QuerySqlFunction; +import org.apache.ignite.cache.query.annotations.QuerySqlTableFunction; import org.apache.ignite.configuration.CacheConfiguration; import org.junit.jupiter.api.Test; diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/TDE.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/TDE.java index d0da94689e128..9391e326e833a 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/TDE.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/TDE.java @@ -16,6 +16,7 @@ */ package org.apache.ignite.snippets; +import java.util.Collections; import org.apache.ignite.Ignite; import org.apache.ignite.Ignition; import org.apache.ignite.configuration.CacheConfiguration; diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/WarmUpStrategy.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/WarmUpStrategy.java index 667b2d4cf55b9..4d5c80f9be282 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/WarmUpStrategy.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/WarmUpStrategy.java @@ -14,70 +14,91 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -//tag::warm-all-regions[] -IgniteConfiguration cfg = new IgniteConfiguration(); +package org.apache.ignite.snippets; -DataStorageConfiguration storageCfg = new DataStorageConfiguration(); +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; +import org.apache.ignite.configuration.IgniteConfiguration; +import org.apache.ignite.configuration.LoadAllWarmUpConfiguration; +import org.apache.ignite.configuration.NoOpWarmUpConfiguration; -//Changing the default warm-up strategy for all data regions -storageCfg.setDefaultWarmUpConfiguration(new LoadAllWarmUpConfiguration()); +public class WarmUpStrategy { + public void warmAllRegions() { + //tag::warm-all-regions[] + IgniteConfiguration cfg = new IgniteConfiguration(); -cfg.setDataStorageConfiguration(storageCfg); -//end::warm-all-regions[] -//tag::warm-specific-region[] -IgniteConfiguration cfg = new IgniteConfiguration(); + DataStorageConfiguration storageCfg = new DataStorageConfiguration(); -DataStorageConfiguration storageCfg = new DataStorageConfiguration(); + //Changing the default warm-up strategy for all data regions + storageCfg.setDefaultWarmUpConfiguration(new LoadAllWarmUpConfiguration()); -//Setting another warm-up strategy for a custom data region -DataRegionConfiguration myNewDataRegion = new DataRegionConfiguration(); + cfg.setDataStorageConfiguration(storageCfg); + //end::warm-all-regions[] + } -myNewDataRegion.setName("NewDataRegion"); + public void warmSpecificRegion() { + //tag::warm-specific-region[] + IgniteConfiguration cfg = new IgniteConfiguration(); -//You can tweak the initial size as well as other settings -myNewDataRegion.setInitialSize(100 * 1024 * 1024); + DataStorageConfiguration storageCfg = new DataStorageConfiguration(); -//Performing data loading from disk in DRAM on restarts. -myNewDataRegion.setWarmUpConfiguration(new LoadAllWarmUpConfiguration()); + //Setting another warm-up strategy for a custom data region + DataRegionConfiguration myNewDataRegion = new DataRegionConfiguration(); -//Enabling Ignite persistence. Ignite reads data from disk when queried for tables/caches from this region. -myNewDataRegion.setPersistenceEnabled(true); + myNewDataRegion.setName("NewDataRegion"); -//Applying the configuration. -storageCfg.setDataRegionConfigurations(myNewDataRegion); + //You can tweak the initial size as well as other settings + myNewDataRegion.setInitialSize(100 * 1024 * 1024); -cfg.setDataStorageConfiguration(storageCfg); -//end::warm-specific-region[] -//tag::disable-all-regions[] -IgniteConfiguration cfg = new IgniteConfiguration(); + //Performing data loading from disk in DRAM on restarts. + myNewDataRegion.setWarmUpConfiguration(new LoadAllWarmUpConfiguration()); -DataStorageConfiguration storageCfg = new DataStorageConfiguration(); + //Enabling Ignite persistence. Ignite reads data from disk when queried for tables/caches from this region. + myNewDataRegion.setPersistenceEnabled(true); -storageCfg.setDefaultWarmUpConfiguration(new NoOpWarmUpConfiguration()); + //Applying the configuration. + storageCfg.setDataRegionConfigurations(myNewDataRegion); -cfg.setDataStorageConfiguration(storageCfg); -//end::disable-all-regions[] -//tag::disable-specific-region[] -IgniteConfiguration cfg = new IgniteConfiguration(); + cfg.setDataStorageConfiguration(storageCfg); + //end::warm-specific-region[] + } -DataStorageConfiguration storageCfg = new DataStorageConfiguration(); + public void disableAllRegions() { + //tag::disable-all-regions[] + IgniteConfiguration cfg = new IgniteConfiguration(); -//Setting another warm-up strategy for a custom data region -DataRegionConfiguration myNewDataRegion = new DataRegionConfiguration(); + DataStorageConfiguration storageCfg = new DataStorageConfiguration(); -myNewDataRegion.setName("NewDataRegion"); + storageCfg.setDefaultWarmUpConfiguration(new NoOpWarmUpConfiguration()); -//You can tweak the initial size as well as other settings -myNewDataRegion.setInitialSize(100 * 1024 * 1024); + cfg.setDataStorageConfiguration(storageCfg); + //end::disable-all-regions[] + } -//Skip data loading from disk in DRAM on restarts. -myNewDataRegion.setWarmUpConfiguration(new NoOpWarmUpConfiguration()); + public void disableSpecificRegion() { + //tag::disable-specific-region[] + IgniteConfiguration cfg = new IgniteConfiguration(); -//Enabling Ignite persistence. Ignite reads data from disk when queried for tables/caches from this region. -myNewDataRegion.setPersistenceEnabled(true); + DataStorageConfiguration storageCfg = new DataStorageConfiguration(); -//Applying the configuration. -storageCfg.setDataRegionConfigurations(myNewDataRegion); + //Setting another warm-up strategy for a custom data region + DataRegionConfiguration myNewDataRegion = new DataRegionConfiguration(); -cfg.setDataStorageConfiguration(storageCfg); -//end::disable-specific-region[] \ No newline at end of file + myNewDataRegion.setName("NewDataRegion"); + + //You can tweak the initial size as well as other settings + myNewDataRegion.setInitialSize(100 * 1024 * 1024); + + //Skip data loading from disk in DRAM on restarts. + myNewDataRegion.setWarmUpConfiguration(new NoOpWarmUpConfiguration()); + + //Enabling Ignite persistence. Ignite reads data from disk when queried for tables/caches from this region. + myNewDataRegion.setPersistenceEnabled(true); + + //Applying the configuration. + storageCfg.setDataRegionConfigurations(myNewDataRegion); + + cfg.setDataStorageConfiguration(storageCfg); + //end::disable-specific-region[] + } +} diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/WorkingWithBinaryObjects.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/WorkingWithBinaryObjects.java index 0c7fc69d3d1c9..63a4f91449570 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/WorkingWithBinaryObjects.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/WorkingWithBinaryObjects.java @@ -19,6 +19,7 @@ import java.util.Arrays; import java.util.Collection; import java.util.Collections; +import javax.cache.Cache; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteBinary; import org.apache.ignite.IgniteCache; @@ -34,8 +35,12 @@ import org.apache.ignite.binary.BinaryTypeConfiguration; import org.apache.ignite.binary.BinaryWriter; import org.apache.ignite.cache.CacheEntryProcessor; +import org.apache.ignite.cache.CacheInterceptor; import org.apache.ignite.configuration.BinaryConfiguration; +import org.apache.ignite.configuration.CacheConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; +import org.apache.ignite.lang.IgniteBiTuple; +import org.jetbrains.annotations.Nullable; public class WorkingWithBinaryObjects { @@ -145,38 +150,56 @@ public static void configuringBinaryObjects() { //tag::keepBinaryWithCacheInterceptor[] public static void cacheWithInterceptorExample() { try (Ignite ignite = Ignition.start()) { - CacheConfiguration specConfig = new CacheConfiguration("personSpecCache"); - ccfg.setInterceptor(new CustomInterceptor(false)); - IgniteCache cache = ignite.createCache(ccfg); + CacheConfiguration specConfig = new CacheConfiguration<>("personSpecCache"); + specConfig.setInterceptor(new CustomInterceptor<>(false)); + IgniteCache cache = ignite.createCache(specConfig); cache.put(1, new Person(1, "FirstPerson")); - CacheConfiguration boConfig = new CacheConfiguration("boSpecCache"); - ccfg.setInterceptor(new CustomInterceptor(true)); - IgniteCache cache = ignite.createCache(ccfg); - cache = cache.withKeepBinary(); - cache.put(1, new Person(1, "FirstPerson")); + CacheConfiguration boConfig = new CacheConfiguration<>("boSpecCache"); + boConfig.setInterceptor(new CustomInterceptor<>(true)); + IgniteCache binaryCache = ignite.createCache(boConfig).withKeepBinary(); + binaryCache.put(1, ignite.binary().toBinary(new Person(1, "FirstPerson"))); } } - private static class CustomInterceptor implements CacheInterceptor { + private static class CustomInterceptor implements CacheInterceptor { boolean keepBinary; CustomInterceptor(boolean keepBinary) { this.keepBinary = keepBinary; } - @Nullable @Override public Object onBeforePut(Cache.Entry entry, Object newVal) { + /** */ + @Nullable @Override public V onGet(K key, @Nullable V val) { + return val; + } + + /** */ + @Nullable @Override public V onBeforePut(Cache.Entry entry, V newVal) { assert keepBinary == newVal instanceof BinaryObject; // do smth. + return newVal; } - @Nullable @Override public IgniteBiTuple onBeforeRemove(Cache.Entry entry) { - Object val = entry.getValue(); + /** */ + @Override public void onAfterPut(Cache.Entry entry) { + // No-op. + } + + /** */ + @Nullable @Override public IgniteBiTuple onBeforeRemove(Cache.Entry entry) { + V val = entry.getValue(); if (val != null) { assert keepBinary == entry.getValue() instanceof BinaryObject; } // do smth. + return new IgniteBiTuple<>(false, val); + } + + /** */ + @Override public void onAfterRemove(Cache.Entry entry) { + // No-op. } } //end::keepBinaryWithCacheInterceptor[] diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/k8s/K8s.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/k8s/K8s.java index 856ac0ec0486e..121ff30265705 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/k8s/K8s.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/k8s/K8s.java @@ -19,7 +19,9 @@ import org.apache.ignite.Ignition; import org.apache.ignite.client.ClientCache; import org.apache.ignite.client.IgniteClient; +import org.apache.ignite.client.ThinClientKubernetesAddressFinder; import org.apache.ignite.configuration.ClientConfiguration; +import org.apache.ignite.kubernetes.configuration.KubernetesConnectionConfiguration; public class K8s { @@ -47,7 +49,7 @@ public static void connectThinClientWithConfiguration() throws Exception { ClientConfiguration ccfg = new ClientConfiguration(); ccfg.setAddressesFinder(new ThinClientKubernetesAddressFinder(kcfg)); - IgniteClient client = Ignition.startClient(cfg); + IgniteClient client = Ignition.startClient(ccfg); ClientCache cache = client.getOrCreateCache("test_cache"); diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/EchoService.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/EchoService.java index 70a7227dc8b36..114680651ad81 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/EchoService.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/EchoService.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.ignite.examples; +package org.apache.ignite.snippets.services; import org.apache.ignite.services.Service; diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/EchoServiceImpl.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/EchoServiceImpl.java index cfa934800e41d..a39cd9cc6f736 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/EchoServiceImpl.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/EchoServiceImpl.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.ignite.examples; +package org.apache.ignite.snippets.services; import org.apache.ignite.resources.ServiceContextResource; import org.apache.ignite.services.ServiceCallContext; diff --git a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/ServiceExample.java b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/ServiceExample.java index cd9218bcf789a..c51b116e07e9e 100644 --- a/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/ServiceExample.java +++ b/docs/_docs/code-snippets/java/src/main/java/org/apache/ignite/snippets/services/ServiceExample.java @@ -23,7 +23,8 @@ import org.apache.ignite.configuration.IgniteConfiguration; import org.apache.ignite.lang.IgnitePredicate; import org.apache.ignite.services.ServiceConfiguration; -import org.junit.Test; +import org.apache.ignite.services.ServiceCallContext; +import org.junit.jupiter.api.Test; public class ServiceExample {