Refactor the Configuration from interface to the open class (which is allowed to be inherited).
Refactor the ConfigurationAndroid from interface to the data class.
Refactor the RudderAnalytics.kt class.
Refactor the ConfigurationAndroidBuilder.java, RudderAnalyticsBuilderCompat.java and ConfigurationBuilder.java classes.
To facilitate the Java interoperability:
Added a @JvmField annotation for the DEFAULT_PROCESS_NAME in the ConfigurationAndroid class.
Added a @JvmField annotation for the DEFAULT_LOG_LEVEL in the Logger class.
Changed the access specifier to protected for jsonAdapter in the ConfigurationBuilder class. This is needed to create the ConfigurationAndroidBuider object.
Use a named argument for jsonAdapter in the sample app.
Fixed failing test cases.
Type of change
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update
Checklist:
[ ] Version upgraded (project, README, gradle, podspec etc)
[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added unit tests for the code
[ ] I have made corresponding changes to the documentation
Description
Configuration
from interface to the open class (which is allowed to be inherited).ConfigurationAndroid
from interface to the data class.RudderAnalytics.kt
class.ConfigurationAndroidBuilder.java
,RudderAnalyticsBuilderCompat.java
andConfigurationBuilder.java
classes.@JvmField
annotation for theDEFAULT_PROCESS_NAME
in theConfigurationAndroid
class.@JvmField
annotation for theDEFAULT_LOG_LEVEL
in theLogger
class.protected
forjsonAdapter
in theConfigurationBuilder
class. This is needed to create theConfigurationAndroidBuider
object.Type of change
Checklist: