Skip to content

Commit

Permalink
refactor: move the session module to core module
Browse files Browse the repository at this point in the history
  • Loading branch information
fractalwrench committed Aug 19, 2024
1 parent 4980619 commit 3a03203
Show file tree
Hide file tree
Showing 9 changed files with 28 additions and 23 deletions.
7 changes: 7 additions & 0 deletions embrace-android-core/config/detekt/baseline.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version="1.0" ?>
<SmellBaseline>
<ManuallySuppressedIssues></ManuallySuppressedIssues>
<CurrentIssues>
<ID>LongParameterList:SessionOrchestrationModuleSupplier.kt$( initModule: InitModule, openTelemetryModule: OpenTelemetryModule, androidServicesModule: AndroidServicesModule, essentialServiceModule: EssentialServiceModule, configModule: ConfigModule, deliveryModule: DeliveryModule, workerThreadModule: WorkerThreadModule, dataSourceModule: DataSourceModule, payloadSourceModule: PayloadSourceModule, startupDurationProvider: (coldStart: Boolean) -&gt; Long?, momentsModule: MomentsModule, logModule: LogModule )</ID>
</CurrentIssues>
</SmellBaseline>
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@ import io.embrace.android.embracesdk.internal.session.message.PayloadMessageColl
import io.embrace.android.embracesdk.internal.session.orchestrator.SessionOrchestrator
import io.embrace.android.embracesdk.internal.session.orchestrator.SessionSpanAttrPopulator

internal interface SessionOrchestrationModule {
val payloadFactory: PayloadFactory
val payloadMessageCollatorImpl: PayloadMessageCollatorImpl
val sessionOrchestrator: SessionOrchestrator
val periodicSessionCacher: PeriodicSessionCacher
val periodicBackgroundActivityCacher: PeriodicBackgroundActivityCacher
val sessionSpanAttrPopulator: SessionSpanAttrPopulator
val memoryCleanerService: MemoryCleanerService
val gatingService: GatingService
public interface SessionOrchestrationModule {
public val payloadFactory: PayloadFactory
public val payloadMessageCollatorImpl: PayloadMessageCollatorImpl
public val sessionOrchestrator: SessionOrchestrator
public val periodicSessionCacher: PeriodicSessionCacher
public val periodicBackgroundActivityCacher: PeriodicBackgroundActivityCacher
public val sessionSpanAttrPopulator: SessionSpanAttrPopulator
public val memoryCleanerService: MemoryCleanerService
public val gatingService: GatingService
}
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ internal class SessionOrchestrationModuleImpl(
workerThreadModule: WorkerThreadModule,
dataSourceModule: DataSourceModule,
payloadSourceModule: PayloadSourceModule,
dataCaptureServiceModule: DataCaptureServiceModule,
startupDurationProvider: (coldStart: Boolean) -> Long?,
momentsModule: MomentsModule,
logModule: LogModule
) : SessionOrchestrationModule {
Expand Down Expand Up @@ -88,7 +88,7 @@ internal class SessionOrchestrationModuleImpl(
SessionSpanAttrPopulatorImpl(
openTelemetryModule.currentSessionSpan,
momentsModule.eventService,
dataCaptureServiceModule.startupService::getSdkStartupDuration,
startupDurationProvider,
logModule.logService,
payloadSourceModule.metadataService
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package io.embrace.android.embracesdk.internal.injection
/**
* Function that returns an instance of [SessionOrchestrationModule]. Matches the signature of the constructor for [SessionOrchestrationModuleImpl]
*/
internal typealias SessionOrchestrationModuleSupplier = (
public typealias SessionOrchestrationModuleSupplier = (
initModule: InitModule,
openTelemetryModule: OpenTelemetryModule,
androidServicesModule: AndroidServicesModule,
Expand All @@ -13,12 +13,12 @@ internal typealias SessionOrchestrationModuleSupplier = (
workerThreadModule: WorkerThreadModule,
dataSourceModule: DataSourceModule,
payloadSourceModule: PayloadSourceModule,
dataCaptureServiceModule: DataCaptureServiceModule,
startupDurationProvider: (coldStart: Boolean) -> Long?,
momentsModule: MomentsModule,
logModule: LogModule
) -> SessionOrchestrationModule

internal fun createSessionOrchestrationModule(
public fun createSessionOrchestrationModule(
initModule: InitModule,
openTelemetryModule: OpenTelemetryModule,
androidServicesModule: AndroidServicesModule,
Expand All @@ -28,7 +28,7 @@ internal fun createSessionOrchestrationModule(
workerThreadModule: WorkerThreadModule,
dataSourceModule: DataSourceModule,
payloadSourceModule: PayloadSourceModule,
dataCaptureServiceModule: DataCaptureServiceModule,
startupDurationProvider: (coldStart: Boolean) -> Long?,
momentsModule: MomentsModule,
logModule: LogModule
): SessionOrchestrationModule = SessionOrchestrationModuleImpl(
Expand All @@ -41,7 +41,7 @@ internal fun createSessionOrchestrationModule(
workerThreadModule,
dataSourceModule,
payloadSourceModule,
dataCaptureServiceModule,
startupDurationProvider,
momentsModule,
logModule
)
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package io.embrace.android.embracesdk.internal.session
import io.embrace.android.embracesdk.fakes.FakeConfigModule
import io.embrace.android.embracesdk.fakes.FakeConfigService
import io.embrace.android.embracesdk.fakes.injection.FakeAndroidServicesModule
import io.embrace.android.embracesdk.fakes.injection.FakeDataCaptureServiceModule
import io.embrace.android.embracesdk.fakes.injection.FakeDeliveryModule
import io.embrace.android.embracesdk.fakes.injection.FakeEssentialServiceModule
import io.embrace.android.embracesdk.fakes.injection.FakeInitModule
Expand Down Expand Up @@ -44,7 +43,7 @@ internal class SessionOrchestrationModuleImplTest {
workerThreadModule,
dataSourceModule,
FakePayloadSourceModule(),
FakeDataCaptureServiceModule(),
{ 0L },
FakeMomentsModule(),
FakeLogModule()
)
Expand Down Expand Up @@ -78,7 +77,7 @@ internal class SessionOrchestrationModuleImplTest {
workerThreadModule,
dataSourceModule,
FakePayloadSourceModule(),
FakeDataCaptureServiceModule(),
{ 0L },
FakeMomentsModule(),
FakeLogModule()
)
Expand Down
1 change: 0 additions & 1 deletion embrace-android-sdk/config/detekt/baseline.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
<CurrentIssues>
<ID>CyclomaticComplexMethod:ModuleInitBootstrapper.kt$ModuleInitBootstrapper$@JvmOverloads fun init( context: Context, appFramework: AppFramework, sdkStartTimeMs: Long, customAppId: String? = null, configServiceProvider: (framework: AppFramework) -&gt; ConfigService? = { null }, versionChecker: VersionChecker = BuildVersionChecker, ): Boolean</ID>
<ID>LongParameterList:PayloadModuleSupplier.kt$( initModule: InitModule, coreModule: CoreModule, workerThreadModule: WorkerThreadModule, systemServiceModule: SystemServiceModule, androidServicesModule: AndroidServicesModule, essentialServiceModule: EssentialServiceModule, configModule: ConfigModule, nativeCoreModuleProvider: Provider&lt;NativeCoreModule?&gt;, nativeFeatureModuleProvider: Provider&lt;NativeFeatureModule?&gt;, otelModule: OpenTelemetryModule, anrModule: AnrModule, )</ID>
<ID>LongParameterList:SessionOrchestrationModuleSupplier.kt$( initModule: InitModule, openTelemetryModule: OpenTelemetryModule, androidServicesModule: AndroidServicesModule, essentialServiceModule: EssentialServiceModule, configModule: ConfigModule, deliveryModule: DeliveryModule, workerThreadModule: WorkerThreadModule, dataSourceModule: DataSourceModule, payloadSourceModule: PayloadSourceModule, dataCaptureServiceModule: DataCaptureServiceModule, momentsModule: MomentsModule, logModule: LogModule )</ID>
<ID>MaxLineLength:FakeModuleInitBootstrapper.kt$sessionOrchestrationModuleSupplier: SessionOrchestrationModuleSupplier = { _, _, _, _, _, _, _, _, _, _, _, _ -&gt; FakeSessionOrchestrationModule() }</ID>
<ID>MaximumLineLength:FakeModuleInitBootstrapper.kt$ </ID>
</CurrentIssues>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -468,7 +468,7 @@ internal class ModuleInitBootstrapper(
workerThreadModule,
dataSourceModule,
payloadSourceModule,
dataCaptureServiceModule,
dataCaptureServiceModule.startupService::getSdkStartupDuration,
momentsModule,
logModule
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import io.embrace.android.embracesdk.internal.network.logging.NetworkLoggingServ
import io.embrace.android.embracesdk.internal.serialization.EmbraceSerializer
import io.embrace.android.embracesdk.internal.worker.BackgroundWorker

internal class FakeLogModule(
public class FakeLogModule(
override val networkLoggingService: NetworkLoggingService = FakeNetworkLoggingService(),

override val logService: LogService = EmbraceLogService(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ import io.embrace.android.embracesdk.fakes.FakeEventService
import io.embrace.android.embracesdk.internal.event.EventService
import io.embrace.android.embracesdk.internal.injection.MomentsModule

internal class FakeMomentsModule(
public class FakeMomentsModule(
override val eventService: EventService = FakeEventService()
) : MomentsModule

0 comments on commit 3a03203

Please sign in to comment.