Skip to content

Commit 1f2778d

Browse files
committed
NPE fix
1 parent f4ea567 commit 1f2778d

File tree

2 files changed

+14
-9
lines changed

2 files changed

+14
-9
lines changed

resource/src/main/kotlin/com/neva/javarel/resource/impl/BundleResourceProvider.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class BundleResourceProvider : ResourceProvider {
4040

4141
var resource: Resource? = null
4242
if (url != null) {
43-
resource = UrlResource(resolver, descriptor, url)
43+
resource = BundleResource(resolver, descriptor, url)
4444
}
4545

4646
return resource

storage/repository/src/main/kotlin/com/neva/javarel/storage/repository/api/repository/DomainRepository.kt

+13-8
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,13 @@ package com.neva.javarel.storage.repository.api.repository
22

33
import com.neva.javarel.storage.repository.api.Repository
44
import org.mongodb.morphia.Key
5+
import org.mongodb.morphia.query.Query
56
import kotlin.reflect.KClass
67

78
abstract class DomainRepository<T : Any>(protected val base: Repository, protected val domainClass: KClass<T>) {
89

910
val all: List<T>
10-
get() {
11-
val entities = base.dataStore.createQuery(domainClass.java).asList()
12-
13-
entities.forEach { lookup(it) }
14-
15-
return entities
16-
}
11+
get() = fetchQuery(createQuery())
1712

1813
fun save(entity: T): Key<T> {
1914
val result = base.dataStore.save(entity)
@@ -23,8 +18,18 @@ abstract class DomainRepository<T : Any>(protected val base: Repository, protect
2318
return result
2419
}
2520

21+
protected fun createQuery() = base.dataStore.createQuery(domainClass.java)
22+
23+
protected fun fetchQuery(query: Query<T>): List<T> {
24+
val entities = query.asList()
25+
26+
entities.forEach { lookup(it) }
27+
28+
return entities
29+
}
30+
2631
open protected fun lookup(entity: T) {
27-
// load file related data into entities...
32+
// use file storage to post construct entity
2833
}
2934

3035
}

0 commit comments

Comments
 (0)