-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathPushIntegrationEnhancerFactory.kt
31 lines (25 loc) · 1.1 KB
/
PushIntegrationEnhancerFactory.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package org.radarbase.gateway.inject
import okhttp3.internal.toImmutableList
import org.radarbase.gateway.Config
import org.radarbase.jersey.config.ConfigLoader
import org.radarbase.jersey.enhancer.Enhancers
import org.radarbase.jersey.enhancer.EnhancerFactory
import org.radarbase.jersey.enhancer.JerseyResourceEnhancer
import org.radarbase.push.integration.GarminPushIntegrationResourceEnhancer
import org.radarbase.push.integration.common.inject.PushIntegrationResourceEnhancer
class PushIntegrationEnhancerFactory(private val config: Config) : EnhancerFactory {
override fun createEnhancers(): List<JerseyResourceEnhancer> {
val enhancersList = mutableListOf(
GatewayResourceEnhancer(config),
Enhancers.health,
Enhancers.exception,
RadarResourceEnhancer(),
PushIntegrationResourceEnhancer()
)
if (config.pushIntegration.garmin.enabled) {
enhancersList.add(GarminPushIntegrationResourceEnhancer(config))
}
// Add more enhancers as services are added
return enhancersList.toImmutableList()
}
}