Skip to content

Commit 1a4d007

Browse files
authored
bypass cache when filter expression is set (#81)
1 parent b1f6404 commit 1a4d007

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

src/main/java/com/aerospike/mapper/tools/AeroMapper.java

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,5 @@
11
package com.aerospike.mapper.tools;
22

3-
import java.io.File;
4-
import java.io.IOException;
5-
import java.io.InputStream;
6-
import java.lang.reflect.Array;
7-
import java.util.ArrayList;
8-
import java.util.List;
9-
import java.util.concurrent.atomic.AtomicBoolean;
10-
import java.util.function.Function;
11-
12-
import javax.validation.constraints.NotNull;
13-
14-
import org.apache.commons.lang3.StringUtils;
15-
163
import com.aerospike.client.AerospikeException;
174
import com.aerospike.client.AerospikeException.ScanTerminated;
185
import com.aerospike.client.Bin;
@@ -39,6 +26,17 @@
3926
import com.fasterxml.jackson.core.JsonProcessingException;
4027
import com.fasterxml.jackson.databind.ObjectMapper;
4128
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
29+
import org.apache.commons.lang3.StringUtils;
30+
31+
import javax.validation.constraints.NotNull;
32+
import java.io.File;
33+
import java.io.IOException;
34+
import java.io.InputStream;
35+
import java.lang.reflect.Array;
36+
import java.util.ArrayList;
37+
import java.util.List;
38+
import java.util.concurrent.atomic.AtomicBoolean;
39+
import java.util.function.Function;
4240

4341
public class AeroMapper implements IAeroMapper {
4442

@@ -321,11 +319,13 @@ public <T> T[] read(BatchPolicy batchPolicy, @NotNull Class<T> clazz, @NotNull O
321319
return readBatch(batchPolicy, clazz, keys, entry);
322320
}
323321

324-
@SuppressWarnings("unchecked")
322+
@SuppressWarnings({"deprecation", "unchecked"})
325323
private <T> T read(Policy readPolicy, @NotNull Class<T> clazz, @NotNull Key key, @NotNull ClassCacheEntry<T> entry, boolean resolveDependencies) {
326-
Object objectForKey = LoadedObjectResolver.get(key);
327-
if (objectForKey != null) {
328-
return (T) objectForKey;
324+
if (readPolicy == null || (readPolicy.filterExp == null && readPolicy.predExp == null)) {
325+
Object objectForKey = LoadedObjectResolver.get(key);
326+
if (objectForKey != null) {
327+
return (T) objectForKey;
328+
}
329329
}
330330
if (readPolicy == null) {
331331
readPolicy = entry.getReadPolicy();

0 commit comments

Comments
 (0)