Skip to content

Commit 1973eb3

Browse files
authored
Merge pull request #6 from bgizdov/master
Fixed where in:[] filter
2 parents a797354 + a8f8208 commit 1973eb3

File tree

4 files changed

+21
-5
lines changed

4 files changed

+21
-5
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<groupId>in.kuros</groupId>
1414
<artifactId>jFirebase</artifactId>
15-
<version>1.0.1</version>
15+
<version>1.0.3</version>
1616

1717

1818
<description>This project aims at building a wrapper over nosql technologies - Firebase</description>

src/main/java/in/kuros/jfirebase/metadata/MetadataProcessor.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ private void initializeMetaModel(final String basePackage) {
3030
final Set<String> classNames = reflections.getStore().get(MetadataScanner.class.getSimpleName()).keySet();
3131

3232
for (String className : classNames) {
33-
final Class<?> type = Class.forName(className);
33+
final Class<?> type = loadClass(className);
3434

3535
final Metadata metadata = type.getAnnotation(Metadata.class);
3636
if (metadata == null) {
@@ -62,4 +62,12 @@ private void initializeMetaModel(final String basePackage) {
6262
throw new EntityDeclarationException(e);
6363
}
6464
}
65+
66+
private Class<?> loadClass(String clf) throws ClassNotFoundException {
67+
try {
68+
return Class.forName(clf);
69+
} catch (ClassNotFoundException e) {
70+
return Thread.currentThread().getContextClassLoader().loadClass(clf);
71+
}
72+
}
6573
}

src/main/java/in/kuros/jfirebase/provider/firebase/query/QueryImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ public <X> Query<T> whereIn(final Attribute<T, X> field, final List<X> values) {
134134

135135
@Override
136136
public Query<T> whereIn(final String field, final List<?> values) {
137-
queries.add(query -> query.whereArrayContainsAny(field, values));
137+
queries.add(query -> query.whereIn(field, values));
138138
return this;
139139
}
140140

@@ -146,7 +146,7 @@ public <X> Query<T> whereNotIn(final Attribute<T, X> field, final List<X> values
146146

147147
@Override
148148
public Query<T> whereNotIn(final String field, final List<?> values) {
149-
queries.add(query -> query.whereArrayContainsAny(field, values));
149+
queries.add(query -> query.whereNotIn(field, values));
150150
return this;
151151
}
152152

src/main/java/in/kuros/jfirebase/reflection/MetadataScanner.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,19 @@ public class MetadataScanner extends AbstractScanner {
99
public void scan(final Object cls) {
1010
final ClassFile clf = (ClassFile) cls;
1111
try {
12-
if (Class.forName(clf.getName()).isAnnotationPresent(Metadata.class)) {
12+
if (loadClass(clf).isAnnotationPresent(Metadata.class)) {
1313
getStore().put(clf.getName(), "");
1414
}
1515
} catch (ClassNotFoundException e) {
1616
e.printStackTrace();
1717
}
1818
}
19+
20+
private Class<?> loadClass(ClassFile clf) throws ClassNotFoundException {
21+
try {
22+
return Class.forName(clf.getName());
23+
} catch (ClassNotFoundException e) {
24+
return Thread.currentThread().getContextClassLoader().loadClass(clf.getName());
25+
}
26+
}
1927
}

0 commit comments

Comments
 (0)