diff --git a/src/main/kotlin/infrastructure/provider/Provider.kt b/src/main/kotlin/infrastructure/provider/Provider.kt index 32d19e79..a9d2b91f 100644 --- a/src/main/kotlin/infrastructure/provider/Provider.kt +++ b/src/main/kotlin/infrastructure/provider/Provider.kt @@ -8,11 +8,14 @@ package infrastructure.provider -import usecase.repository.TrackingDataRepository +import application.controller.manager.StaffTrackingDatabaseManager -/** The provider of the [TrackingDataRepository]. */ +/** + * It's responsible to provide the [StaffTrackingDatabaseManager] + * to Staff Tracking Controller. + */ interface Provider { - /** The manager of staff tracking database operations. */ - val trackingDatabaseManager: TrackingDataRepository + /** The manager of staff tracking inside database. */ + val staffTrackingDatabaseManager: StaffTrackingDatabaseManager } diff --git a/src/main/kotlin/infrastructure/provider/ProviderImpl.kt b/src/main/kotlin/infrastructure/provider/ProviderImpl.kt index 015b2aae..297ae1b2 100644 --- a/src/main/kotlin/infrastructure/provider/ProviderImpl.kt +++ b/src/main/kotlin/infrastructure/provider/ProviderImpl.kt @@ -8,9 +8,12 @@ package infrastructure.provider -import usecase.repository.TrackingDataRepository +import application.controller.manager.StaffTrackingDatabaseManager +import infrastructure.database.MongoClient -/** The implementation of the [Provider] interface. */ +/** + * The implementation of the [Provider] interface. + */ class ProviderImpl : Provider { init { @@ -19,5 +22,7 @@ class ProviderImpl : Provider { } } - override val trackingDatabaseManager: TrackingDataRepository = TODO() // MongoClient + override val staffTrackingDatabaseManager: StaffTrackingDatabaseManager by lazy { + MongoClient(System.getenv("STAFF_TRACKING_MONGODB_URL")) + } }