Skip to content

Commit 8c118cc

Browse files
authored
add client id and session id setter (#133)
1 parent bcd584b commit 8c118cc

File tree

3 files changed

+24
-0
lines changed

3 files changed

+24
-0
lines changed

library/src/main/java/io/constructor/core/ConstructorIo.kt

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,11 +126,25 @@ object ConstructorIo {
126126
*/
127127
fun getSessionId() = preferenceHelper.getSessionId()
128128

129+
/**
130+
* Sets the sessionId
131+
*/
132+
fun setSessionId(sessionId: Int) {
133+
preferenceHelper.setSessionId(sessionId);
134+
}
135+
129136
/**
130137
* Returns the current client identifier (a random GUID assigned to the app running on the device)
131138
*/
132139
fun getClientId() = preferenceHelper.id
133140

141+
/**
142+
* Sets the clientId
143+
*/
144+
fun setClientId(clientId: String) {
145+
preferenceHelper.id = clientId;
146+
}
147+
134148
internal fun testInit(context: Context?, constructorIoConfig: ConstructorIoConfig, dataManager: DataManager, preferenceHelper: PreferencesHelper, configMemoryHolder: ConfigMemoryHolder) {
135149
if (context == null) {
136150
throw IllegalStateException("Context is null, please init library using ConstructorIo.with(context)")

library/src/main/java/io/constructor/data/local/PreferencesHelper.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@ constructor(@ConstructorSdk val preferences: SharedPreferences) {
6262
return preferences.getInt(SESSION_ID, 1)
6363
}
6464

65+
fun setSessionId(sessionId: Int) {
66+
preferences.edit().putInt(SESSION_ID, sessionId).apply()
67+
}
68+
6569
internal fun resetSession(sessionIncrementAction: ((String) -> Unit)?): Int {
6670
val sessionId = 1
6771
preferences.edit().putInt(SESSION_ID, sessionId).apply()

library/src/test/java/io/constructor/data/local/PreferencesHelperTest.kt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,12 @@ class PreferencesHelperTest {
5757
assertEquals(1, preferencesHelper.getSessionId())
5858
}
5959

60+
@Test
61+
fun saveAndRetrieveSessionId() {
62+
preferencesHelper.setSessionId(123);
63+
assertEquals(123, preferencesHelper.getSessionId())
64+
}
65+
6066
@Test
6167
fun getSessionIdAfter30Minutes() {
6268
preferencesHelper.resetSession(null)

0 commit comments

Comments
 (0)