diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml
deleted file mode 100644
index fff364f..0000000
--- a/.github/workflows/documentation.yml
+++ /dev/null
@@ -1,93 +0,0 @@
-name: Documentation
-
-on:
- pull_request:
- branches: [ "main" ]
- types: [opened, synchronize]
-
-jobs:
- documentation:
- runs-on: ubuntu-latest
- permissions:
- contents: write
- packages: write
- pull-requests: write
- repository-projects: write
- id-token: write
- steps:
- - uses: actions/checkout@v4
- with:
- ref: ${{ github.event.pull_request.head.ref }}
- - name: Set up JDK 17
- uses: actions/setup-java@v4
- with:
- java-version: '17'
- distribution: 'zulu'
- cache: gradle
-
- - name: Checkout external template repository
- uses: actions/checkout@v4
- env:
- GITHUB_TOKEN: ${{ secrets.REPO_TOKEN }}
- with:
- repository: HARMAN-Automotive/CSP-Documentation
- path: CSP-Documentation
- token: ${{ secrets.REPO_TOKEN }}
-
- - name: Check files in the working directory
- run: |
- pwd
- ls
-
- - name: Configure Git
- id: git
- run: |
- git config user.name "$GITHUB_ACTOR"
- git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
-
- - name: Grant execute permission for gradlew
- run: chmod +x gradlew
-
- - name: Build
- run: ./gradlew cyclonedxBom
- env:
- GITHUB_TOKEN: ${{ secrets.REPO_TOKEN }}
-
- - name: Set up Python
- uses: actions/setup-python@v5
- with:
- python-version: '3.10'
-
- - name: Install dependencies
- run: |
- python -m pip install --upgrade pip
- if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
-
- - name: Archive SBOM
- run: cp ${{ github.workspace }}/app/build/reports/bom.xml ./bom.xml
-
- - name: Download templates
- run: |
- cp ./CSP-Documentation/scripts/notice-generator.py ./notice-generator.py
- cp ./CSP-Documentation/template/NOTICE.template.md ./NOTICE.template
- cp ./CSP-Documentation/template/CODE_OF_CONDUCT.template.md ./CODE_OF_CONDUCT.md
- cp ./CSP-Documentation/template/SECURITY.template.md ./SECURITY.md
- cp ./CSP-Documentation/template/CONTRIBUTING.template.md ./CONTRIBUTING.md
- sed -i "s|{{repository}}|${{ github.repository }}|g" ./NOTICE.template
- sed -i "s|{{repository}}|${{ github.repository }}|g" ./CONTRIBUTING.md
-
- - name: Allow notice script to be executed
- run: chmod +x ./notice-generator.py
-
- - name: Execute script
- run: python ./notice-generator.py
-
- - name: Commit NOTICE
- env:
- GITHUB_TOKEN: ${{ secrets.REPO_TOKEN }}
- run: |
- git add NOTICE.md CODE_OF_CONDUCT.md CONTRIBUTING.md SECURITY.md
- git diff-index --quiet HEAD || git commit -am "Generate Documentation"
- git push
-
-
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 3ae1717..7c7266f 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -2,22 +2,21 @@ plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
id("kotlin-android")
- id("kotlin-kapt")
id("com.google.gms.google-services")
id("kotlin-parcelize")
id("org.cyclonedx.bom")
}
android {
- namespace = "com.harman.vehicleconnects"
+ namespace = "org.eclipse.ecsp"
compileSdk = 35
defaultConfig {
- applicationId = "com.harman.vehicleconnects"
+ applicationId = "org.eclipse.ecsp"
minSdk = 24
targetSdk = 35
- versionCode = 13
- versionName = "2.5"
+ versionCode = 16
+ versionName = "3.3"
multiDexEnabled = true
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
@@ -28,14 +27,14 @@ android {
buildTypes {
release {
- isMinifyEnabled = false
+ isMinifyEnabled = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro",
)
}
debug {
- isMinifyEnabled = false
+ isMinifyEnabled = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro",
@@ -45,7 +44,7 @@ android {
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
- group = "com.harman.vehicleconnects"
+ group = "org.eclipse.ecsp"
version = 1.0
}
kotlinOptions {
@@ -69,8 +68,7 @@ android {
dependencies {
- implementation(files("libs/androidVehicleConnectSDK.aar"))
-
+ implementation("org.eclipse.ecsp:vehicleconnectsdk:1.1.5")
implementation("androidx.core:core-ktx:1.15.0")
implementation("androidx.activity:activity-compose:1.8.0")
implementation("androidx.compose.ui:ui:1.5.0")
@@ -99,29 +97,12 @@ dependencies {
implementation("androidx.multidex:multidex:2.0.1")
implementation("com.google.dagger:dagger:2.55")
- implementation("com.google.dagger:dagger-android:2.55")
- implementation("com.google.dagger:dagger-android-support:2.55")
- kapt("com.google.dagger:dagger-android-processor:2.55")
- kapt("com.google.dagger:dagger-compiler:2.55")
+ annotationProcessor("com.google.dagger:dagger-compiler:2.55")
implementation("com.squareup.retrofit2:retrofit:2.11.0")
implementation("com.squareup.retrofit2:converter-gson:2.11.0")
implementation("com.squareup.okhttp3:logging-interceptor:4.12.0")
implementation(kotlin("reflect"))
- implementation("com.google.firebase:firebase-messaging:24.0.0"){
- exclude(group ="com.google.firebase", module="firebase-iid-interop")
- exclude(group ="com.google.firebase", module="firebase-measurement-connector")
- exclude(group ="com.google.firebase", module="firebase-core")
- exclude(group ="com.google.firebase", module="firebase-annotations")
- exclude(group ="com.google.firebase", module="firebase-installations-interop")
- exclude(group ="com.google.firebase", module="firebase-installations")
-// exclude(group ="com.google.android.gms", module="play-services-tasks")
- exclude(group ="com.google.android.gms", module="play-services-stats")
- exclude(group ="com.google.android.gms", module="play-services-cloud-messaging")
-// exclude(group ="com.google.android.gms", module="play-services-basement")
- exclude(group ="com.google.android.gms", module="play-services-base")
- exclude(group ="com.google.android.datatransport", module="transport-api")
-
- }
+ implementation("com.google.firebase:firebase-messaging:24.0.0")
}
diff --git a/app/google-services.json b/app/google-services.json
index ff271f9..cd1ae09 100644
--- a/app/google-services.json
+++ b/app/google-services.json
@@ -9,7 +9,7 @@
"client_info": {
"mobilesdk_app_id": "1:104347266266:android:a6d53d6921e6443bb289e3",
"android_client_info": {
- "package_name": "com.harman.vehicleconnects"
+ "package_name": "org.eclipse.ecsp"
}
},
"oauth_client": [],
diff --git a/app/libs/androidVehicleConnectSDK.aar b/app/libs/androidVehicleConnectSDK.aar
deleted file mode 100644
index 3e1b08f..0000000
Binary files a/app/libs/androidVehicleConnectSDK.aar and /dev/null differ
diff --git a/app/src/androidTest/java/com/harman/vehicleconnects/ExampleInstrumentedTest.kt b/app/src/androidTest/java/org/eclipse/ecsp/ExampleInstrumentedTest.kt
similarity index 84%
rename from app/src/androidTest/java/com/harman/vehicleconnects/ExampleInstrumentedTest.kt
rename to app/src/androidTest/java/org/eclipse/ecsp/ExampleInstrumentedTest.kt
index e8f1cc4..7830ebb 100644
--- a/app/src/androidTest/java/com/harman/vehicleconnects/ExampleInstrumentedTest.kt
+++ b/app/src/androidTest/java/org/eclipse/ecsp/ExampleInstrumentedTest.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects
+package org.eclipse.ecsp
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.platform.app.InstrumentationRegistry
@@ -17,6 +17,6 @@ class ExampleInstrumentedTest {
fun useAppContext() {
// Context of the app under test.
val appContext = InstrumentationRegistry.getInstrumentation().targetContext
- assertEquals("com.harman.vehicleconnects", appContext.packageName)
+ assertEquals("org.eclipse.ecsp", appContext.packageName)
}
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 3ce8ffe..caf9fe1 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -17,7 +17,7 @@
android:theme="@style/Theme.AppCompat"
tools:targetApi="31">
@@ -26,11 +26,12 @@
-
-
-
Unit
-) {
- val colorScheme = when {
- dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {
- val context = LocalContext.current
- if (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context)
- }
-
- darkTheme -> DarkColorScheme
- else -> LightColorScheme
- }
- val view = LocalView.current
- if (!view.isInEditMode) {
- SideEffect {
- val window = (view.context as Activity).window
- window.statusBarColor = colorScheme.primary.toArgb()
- WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = darkTheme
- }
- }
-
- MaterialTheme(
- colorScheme = colorScheme,
- typography = Typography,
- content = content
- )
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/harman/vehicleconnects/helper/AppConstants.kt b/app/src/main/java/org/eclipse/ecsp/helper/AppConstants.kt
similarity index 83%
rename from app/src/main/java/com/harman/vehicleconnects/helper/AppConstants.kt
rename to app/src/main/java/org/eclipse/ecsp/helper/AppConstants.kt
index 267de49..60c5255 100644
--- a/app/src/main/java/com/harman/vehicleconnects/helper/AppConstants.kt
+++ b/app/src/main/java/org/eclipse/ecsp/helper/AppConstants.kt
@@ -1,9 +1,9 @@
-package com.harman.vehicleconnects.helper
+package org.eclipse.ecsp.helper
import android.app.Activity
import android.content.Context
-import com.harman.vehicleconnects.models.dataclass.RemoteOperationItem
-import com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose.setStateIcon
+import org.eclipse.ecsp.models.dataclass.RemoteOperationItem
+import org.eclipse.ecsp.ui.view.composes.remoteoperationcompose.setStateIcon
/********************************************************************************
* Copyright (c) 2023-24 Harman International
@@ -24,7 +24,7 @@ import com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose.setSta
object AppConstants {
const val DEVICE_ID = "DeviceId"
const val DEVICE_ASSOCIATION = "Device Installation"
- const val ENTER_IMEI = "Enter IMEI"
+ const val ENTER_SERIAL_NUM = "Enter Serial Number"
const val ASSOCIATION_INITIATED = "ASSOCIATION_INITIATED"
const val ASSOCIATED = "ASSOCIATED"
const val SUSPENDED = "SUSPENDED"
@@ -101,12 +101,42 @@ object AppConstants {
val defaultRoValuesList =
listOf(
- RemoteOperationItem.Window(CLOSED, WINDOWS, setStateIcon(CLOSED, WINDOWS)),
- RemoteOperationItem.Light(OFF, LIGHT, setStateIcon(OFF, LIGHT)),
- RemoteOperationItem.Alarm(OFF, ALARM, setStateIcon(OFF, ALARM)),
- RemoteOperationItem.Door(LOCKED, DOOR, setStateIcon(LOCKED, DOOR)),
- RemoteOperationItem.Engine(STOPPED, ENGINE, setStateIcon(STOPPED, ENGINE)),
- RemoteOperationItem.Trunk(LOCKED, TRUNK, setStateIcon(LOCKED, TRUNK)),
+ RemoteOperationItem.Window(
+ CLOSED,
+ WINDOWS, setStateIcon(
+ CLOSED,
+ WINDOWS
+ )),
+ RemoteOperationItem.Light(
+ OFF,
+ LIGHT, setStateIcon(
+ OFF,
+ LIGHT
+ )),
+ RemoteOperationItem.Alarm(
+ OFF,
+ ALARM, setStateIcon(
+ OFF,
+ ALARM
+ )),
+ RemoteOperationItem.Door(
+ LOCKED,
+ DOOR, setStateIcon(
+ LOCKED,
+ DOOR
+ )),
+ RemoteOperationItem.Engine(
+ STOPPED,
+ ENGINE, setStateIcon(
+ STOPPED,
+ ENGINE
+ )),
+ RemoteOperationItem.Trunk(
+ LOCKED,
+ TRUNK, setStateIcon(
+ LOCKED,
+ TRUNK
+ )),
)
val ALERT_TYPES =
diff --git a/app/src/main/java/com/harman/vehicleconnects/helper/Helper.kt b/app/src/main/java/org/eclipse/ecsp/helper/AppHelper.kt
similarity index 99%
rename from app/src/main/java/com/harman/vehicleconnects/helper/Helper.kt
rename to app/src/main/java/org/eclipse/ecsp/helper/AppHelper.kt
index 7315da4..1dc6ca1 100644
--- a/app/src/main/java/com/harman/vehicleconnects/helper/Helper.kt
+++ b/app/src/main/java/org/eclipse/ecsp/helper/AppHelper.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.helper
+package org.eclipse.ecsp.helper
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
diff --git a/app/src/main/java/com/harman/vehicleconnects/helper/FcmNotificationService.kt b/app/src/main/java/org/eclipse/ecsp/helper/FcmNotificationService.kt
similarity index 89%
rename from app/src/main/java/com/harman/vehicleconnects/helper/FcmNotificationService.kt
rename to app/src/main/java/org/eclipse/ecsp/helper/FcmNotificationService.kt
index 60ce5cd..dcb1511 100644
--- a/app/src/main/java/com/harman/vehicleconnects/helper/FcmNotificationService.kt
+++ b/app/src/main/java/org/eclipse/ecsp/helper/FcmNotificationService.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.helper
+package org.eclipse.ecsp.helper
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -25,15 +25,15 @@ import androidx.compose.ui.graphics.toArgb
import androidx.core.app.NotificationCompat
import com.google.firebase.messaging.FirebaseMessagingService
import com.google.firebase.messaging.RemoteMessage
-import com.harman.androidvehicleconnectsdk.helper.AppManager
-import com.harman.androidvehicleconnectsdk.notificationservice.model.AlertData
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.helper.AppConstants.EXTRA_ALERT
-import com.harman.vehicleconnects.helper.AppConstants.EXTRA_MESSAGE
-import com.harman.vehicleconnects.helper.AppConstants.EXTRA_VEHICLE_ID
-import com.harman.vehicleconnects.ui.theme.LightBlue
-import com.harman.vehicleconnects.ui.view.activities.DashboardActivity
-import com.harman.vehicleconnects.ui.view.activities.LoginActivity
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.helper.AppConstants.EXTRA_ALERT
+import org.eclipse.ecsp.helper.AppConstants.EXTRA_MESSAGE
+import org.eclipse.ecsp.helper.AppConstants.EXTRA_VEHICLE_ID
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.view.activities.DashboardActivity
+import org.eclipse.ecsp.ui.view.activities.LoginActivity
+import org.eclipse.ecsp.helper.AppManager
+import org.eclipse.ecsp.notificationservice.model.AlertData
/**
* Represents the notification service listener, using firebase messaging service.
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/dataclass/EnvironmentListData.kt b/app/src/main/java/org/eclipse/ecsp/models/dataclass/EnvironmentListData.kt
similarity index 89%
rename from app/src/main/java/com/harman/vehicleconnects/models/dataclass/EnvironmentListData.kt
rename to app/src/main/java/org/eclipse/ecsp/models/dataclass/EnvironmentListData.kt
index 93ce952..b71b64b 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/dataclass/EnvironmentListData.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/dataclass/EnvironmentListData.kt
@@ -1,4 +1,7 @@
-package com.harman.vehicleconnects.models.dataclass
+package org.eclipse.ecsp.models.dataclass
+
+import org.eclipse.ecsp.environment.Environment
+
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -15,7 +18,6 @@ package com.harman.vehicleconnects.models.dataclass
*
* SPDX-License-Identifier: Apache-2.0
********************************************************************************/
-import com.harman.androidvehicleconnectsdk.environment.Environment
/**
* Data Class represents to hold the environment data list
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/dataclass/ROErrorMessage.kt b/app/src/main/java/org/eclipse/ecsp/models/dataclass/ROErrorMessage.kt
similarity index 95%
rename from app/src/main/java/com/harman/vehicleconnects/models/dataclass/ROErrorMessage.kt
rename to app/src/main/java/org/eclipse/ecsp/models/dataclass/ROErrorMessage.kt
index d16e40d..8f8273f 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/dataclass/ROErrorMessage.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/dataclass/ROErrorMessage.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.dataclass
+package org.eclipse.ecsp.models.dataclass
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/dataclass/RemoteOperationItem.kt b/app/src/main/java/org/eclipse/ecsp/models/dataclass/RemoteOperationItem.kt
similarity index 98%
rename from app/src/main/java/com/harman/vehicleconnects/models/dataclass/RemoteOperationItem.kt
rename to app/src/main/java/org/eclipse/ecsp/models/dataclass/RemoteOperationItem.kt
index 97391dc..c297d35 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/dataclass/RemoteOperationItem.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/dataclass/RemoteOperationItem.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.dataclass
+package org.eclipse.ecsp.models.dataclass
/********************************************************************************
* Copyright (c) 2023-24 Harman International
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/dataclass/VehicleProfileModel.kt b/app/src/main/java/org/eclipse/ecsp/models/dataclass/VehicleProfileModel.kt
similarity index 84%
rename from app/src/main/java/com/harman/vehicleconnects/models/dataclass/VehicleProfileModel.kt
rename to app/src/main/java/org/eclipse/ecsp/models/dataclass/VehicleProfileModel.kt
index a3f8cf0..da0c6d2 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/dataclass/VehicleProfileModel.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/dataclass/VehicleProfileModel.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.dataclass
+package org.eclipse.ecsp.models.dataclass
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -16,9 +16,9 @@ package com.harman.vehicleconnects.models.dataclass
* SPDX-License-Identifier: Apache-2.0
********************************************************************************/
import android.os.Parcelable
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.AssociatedDevice
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.vehicleprofile.VehicleDetailData
import kotlinx.parcelize.Parcelize
+import org.eclipse.ecsp.vehicleservice.model.AssociatedDevice
+import org.eclipse.ecsp.vehicleservice.model.vehicleprofile.VehicleDetailData
/**
* Parcelize Data class used to hold the Vehicle profile details
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/routes/BottomNavItem.kt b/app/src/main/java/org/eclipse/ecsp/models/routes/BottomNavItem.kt
similarity index 94%
rename from app/src/main/java/com/harman/vehicleconnects/models/routes/BottomNavItem.kt
rename to app/src/main/java/org/eclipse/ecsp/models/routes/BottomNavItem.kt
index b424ab5..6671ffb 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/routes/BottomNavItem.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/routes/BottomNavItem.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.routes
+package org.eclipse.ecsp.models.routes
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -15,7 +15,7 @@ package com.harman.vehicleconnects.models.routes
*
* SPDX-License-Identifier: Apache-2.0
********************************************************************************/
-import com.harman.vehicleconnects.R
+import org.eclipse.ecsp.R
/**
* Sealed class used to handle the Bottom navigation item
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/routes/DeviceAssociationRoute.kt b/app/src/main/java/org/eclipse/ecsp/models/routes/DeviceAssociationRoute.kt
similarity index 80%
rename from app/src/main/java/com/harman/vehicleconnects/models/routes/DeviceAssociationRoute.kt
rename to app/src/main/java/org/eclipse/ecsp/models/routes/DeviceAssociationRoute.kt
index 6a372c9..72af6cf 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/routes/DeviceAssociationRoute.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/routes/DeviceAssociationRoute.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.routes
+package org.eclipse.ecsp.models.routes
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -15,8 +15,8 @@ package com.harman.vehicleconnects.models.routes
*
* SPDX-License-Identifier: Apache-2.0
********************************************************************************/
-import com.harman.vehicleconnects.helper.AppConstants.DEVICE_ASSOCIATION
-import com.harman.vehicleconnects.helper.AppConstants.ENTER_IMEI
+import org.eclipse.ecsp.helper.AppConstants.DEVICE_ASSOCIATION
+import org.eclipse.ecsp.helper.AppConstants.ENTER_SERIAL_NUM
/**
* Sealed class used to handle the Device association screen
@@ -28,5 +28,5 @@ import com.harman.vehicleconnects.helper.AppConstants.ENTER_IMEI
sealed class DeviceAssociationRoute(route: String) {
data object InstallDeviceScreen : DeviceAssociationRoute(DEVICE_ASSOCIATION)
- data object EnterIMEIScreen : DeviceAssociationRoute(ENTER_IMEI)
+ data object EnterIMEIScreen : DeviceAssociationRoute(ENTER_SERIAL_NUM)
}
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/routes/VehicleProfileRoute.kt b/app/src/main/java/org/eclipse/ecsp/models/routes/VehicleProfileRoute.kt
similarity index 81%
rename from app/src/main/java/com/harman/vehicleconnects/models/routes/VehicleProfileRoute.kt
rename to app/src/main/java/org/eclipse/ecsp/models/routes/VehicleProfileRoute.kt
index c53c5ec..3001cb3 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/routes/VehicleProfileRoute.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/routes/VehicleProfileRoute.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.routes
+package org.eclipse.ecsp.models.routes
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -15,9 +15,9 @@ package com.harman.vehicleconnects.models.routes
*
* SPDX-License-Identifier: Apache-2.0
********************************************************************************/
-import com.harman.vehicleconnects.helper.AppConstants.VEHICLE_EDIT_COLOR
-import com.harman.vehicleconnects.helper.AppConstants.VEHICLE_EDIT_NAME
-import com.harman.vehicleconnects.helper.AppConstants.VEHICLE_PROFILE
+import org.eclipse.ecsp.helper.AppConstants.VEHICLE_EDIT_COLOR
+import org.eclipse.ecsp.helper.AppConstants.VEHICLE_EDIT_NAME
+import org.eclipse.ecsp.helper.AppConstants.VEHICLE_PROFILE
/**
* Sealed class used to handle the Vehicle profile screen
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/AppViewModelFactory.kt b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/AppViewModelFactory.kt
similarity index 97%
rename from app/src/main/java/com/harman/vehicleconnects/models/viewmodels/AppViewModelFactory.kt
rename to app/src/main/java/org/eclipse/ecsp/models/viewmodels/AppViewModelFactory.kt
index bed5b8d..0e8c790 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/AppViewModelFactory.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/AppViewModelFactory.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.viewmodels
+package org.eclipse.ecsp.models.viewmodels
/********************************************************************************
* Copyright (c) 2023-24 Harman International
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/DashboardVM.kt b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/DashboardVM.kt
similarity index 66%
rename from app/src/main/java/com/harman/vehicleconnects/models/viewmodels/DashboardVM.kt
rename to app/src/main/java/org/eclipse/ecsp/models/viewmodels/DashboardVM.kt
index 2e53475..ecd5f65 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/DashboardVM.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/DashboardVM.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.viewmodels
+package org.eclipse.ecsp.models.viewmodels
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -16,15 +16,20 @@ package com.harman.vehicleconnects.models.viewmodels
* SPDX-License-Identifier: Apache-2.0
********************************************************************************/
import android.app.Activity
+import android.util.Log
import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
+import androidx.lifecycle.viewModelScope
import com.google.firebase.messaging.FirebaseMessaging
-import com.harman.androidvehicleconnectsdk.notificationservice.model.ChannelData
-import com.harman.androidvehicleconnectsdk.notificationservice.model.NotificationConfigData
-import com.harman.androidvehicleconnectsdk.userservice.service.UserServiceInterface
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.repository.DashboardRepository
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.repository.DashboardRepository
+import kotlinx.coroutines.CoroutineExceptionHandler
+import kotlinx.coroutines.launch
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.notificationservice.model.ChannelData
+import org.eclipse.ecsp.notificationservice.model.NotificationConfigData
+import org.eclipse.ecsp.userservice.service.UserServiceInterface
/**
* Represents the Dashboard ViewModel
@@ -35,14 +40,13 @@ import com.harman.vehicleconnects.repository.DashboardRepository
*/
class DashboardVM(activity: Activity) : AndroidViewModel(activity.application) {
private var topBarTitle = MutableLiveData("")
- private var _associatedDeviceList = MutableLiveData>()
+ private var _associatedDeviceList = MutableLiveData>>()
private val dashboardRepository: DashboardRepository by lazy {
DashboardRepository()
}
- private val userServiceInterface: UserServiceInterface by lazy {
- UserServiceInterface.authService(activity)
- }
private var isSignOutClicked = MutableLiveData(false)
+ private var _isPasswordChangeTriggered = MutableLiveData(false)
+ private var passwordChangeStatus = MutableLiveData>()
/**
* Represents to get the title value of the screens
@@ -67,7 +71,7 @@ class DashboardVM(activity: Activity) : AndroidViewModel(activity.application) {
*
* @return [HashMap] of [VehicleProfileModel] LiveData
*/
- fun getAssociatedDeviceList(): LiveData> {
+ fun getAssociatedDeviceList(): LiveData>> {
return _associatedDeviceList
}
@@ -83,9 +87,9 @@ class DashboardVM(activity: Activity) : AndroidViewModel(activity.application) {
* Represents to do SIGN_OUT
*
*/
- fun signOutClick() {
- userServiceInterface.signOutWithAppAuth {
- isSignOutClicked.postValue(it.status.requestStatus)
+ fun signOutClick(userServiceInterface: UserServiceInterface) {
+ dashboardRepository.doSignOut(userServiceInterface) {
+ isSignOutClicked.postValue(it)
}
}
@@ -124,4 +128,21 @@ class DashboardVM(activity: Activity) : AndroidViewModel(activity.application) {
}
}
}
+
+ fun isPasswordChangeTriggered(): LiveData = _isPasswordChangeTriggered
+
+ fun setPasswordChangeTriggerValue(value: Boolean){
+ _isPasswordChangeTriggered.value = value
+ }
+
+ fun changePasswordApiCall(userServiceInterface: UserServiceInterface): LiveData>{
+ val exception =
+ CoroutineExceptionHandler { _, exception ->
+ Log.e("Password change request API failed: ", exception.cause.toString())
+ }
+ viewModelScope.launch(exception) {
+ passwordChangeStatus.postValue(dashboardRepository.requestForChangePassword(userServiceInterface))
+ }
+ return passwordChangeStatus
+ }
}
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/DeviceAssociationVM.kt b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/DeviceAssociationVM.kt
similarity index 82%
rename from app/src/main/java/com/harman/vehicleconnects/models/viewmodels/DeviceAssociationVM.kt
rename to app/src/main/java/org/eclipse/ecsp/models/viewmodels/DeviceAssociationVM.kt
index a6aff45..dc688f9 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/DeviceAssociationVM.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/DeviceAssociationVM.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.viewmodels
+package org.eclipse.ecsp.models.viewmodels
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -20,11 +20,11 @@ import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.viewModelScope
-import com.harman.androidvehicleconnectsdk.helper.response.CustomMessage
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.DeviceVerificationData
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.deviceassociation.AssociatedDeviceInfo
-import com.harman.androidvehicleconnectsdk.vehicleservice.service.VehicleServiceInterface
import kotlinx.coroutines.launch
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.vehicleservice.model.DeviceVerificationData
+import org.eclipse.ecsp.vehicleservice.model.deviceassociation.AssociatedDeviceInfo
+import org.eclipse.ecsp.vehicleservice.service.VehicleServiceInterface
/**
* View Model class to handle the Device association screen
@@ -38,7 +38,7 @@ class DeviceAssociationVM(activity: Activity) : AndroidViewModel(activity.applic
private var isLoading = MutableLiveData(false)
private val _verifyDeviceIMEI = MutableLiveData>()
private val _associateDevice = MutableLiveData>()
- private var verifyImei = MutableLiveData()
+ private var serialNumberValue = MutableLiveData()
/**
* Represents to get the [MutableLiveData] of title
@@ -81,14 +81,14 @@ class DeviceAssociationVM(activity: Activity) : AndroidViewModel(activity.applic
*
* @return IMEI string value as [LiveData]
*/
- fun clickedOnVerifyImei(): LiveData = verifyImei
+ fun clickedOnSerialNumberSubmission(): LiveData = serialNumberValue
/**
* Function to set the IMEI value
*
- * @param imeiString as [String]
+ * @param serialNumString as [String]
*/
- fun triggerImeiVerification(imeiString: String) = verifyImei.postValue(imeiString)
+ fun triggerSerialNumberVerification(serialNumString: String) = serialNumberValue.postValue(serialNumString)
/**
* Function is to call IMEI Verification API
@@ -113,15 +113,15 @@ class DeviceAssociationVM(activity: Activity) : AndroidViewModel(activity.applic
* Function is to call association API to associate a device using IMEI
*
* @param vehicleServiceInterface SDK interface used to trigger the API call
- * @param imeiString IMEI value in [String] format
+ * @param serialString IMEI value in [String] format
* @return [MutableLiveData] of SDK [CustomMessage] with [AssociatedDeviceInfo]
*/
fun associateDevice(
vehicleServiceInterface: VehicleServiceInterface,
- imeiString: String,
+ serialString: String,
): MutableLiveData> {
viewModelScope.launch {
- vehicleServiceInterface.associateDevice(imeiString) {
+ vehicleServiceInterface.associateDevice(serialString) {
_associateDevice.value = it
}
}
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/LoginActivityVM.kt b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/LoginActivityVM.kt
similarity index 79%
rename from app/src/main/java/com/harman/vehicleconnects/models/viewmodels/LoginActivityVM.kt
rename to app/src/main/java/org/eclipse/ecsp/models/viewmodels/LoginActivityVM.kt
index 4bb4bab..a61bd47 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/LoginActivityVM.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/LoginActivityVM.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.viewmodels
+package org.eclipse.ecsp.models.viewmodels
/********************************************************************************
* Copyright (c) 2023-24 Harman International
@@ -23,14 +23,14 @@ import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.MutableLiveData
import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
-import com.harman.androidvehicleconnectsdk.environment.Environment
-import com.harman.androidvehicleconnectsdk.environment.EnvironmentManager
-import com.harman.androidvehicleconnectsdk.helper.response.CustomMessage
-import com.harman.androidvehicleconnectsdk.userservice.model.UserProfile
-import com.harman.androidvehicleconnectsdk.userservice.service.UserServiceInterface
-import com.harman.vehicleconnects.models.dataclass.EnvironmentListData
-import com.harman.vehicleconnects.repository.LoginRepository
+import org.eclipse.ecsp.models.dataclass.EnvironmentListData
+import org.eclipse.ecsp.repository.LoginRepository
import kotlinx.coroutines.runBlocking
+import org.eclipse.ecsp.environment.Environment
+import org.eclipse.ecsp.environment.EnvironmentManager
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.userservice.model.UserProfile
+import org.eclipse.ecsp.userservice.service.UserServiceInterface
import java.lang.ref.WeakReference
/**
@@ -56,22 +56,28 @@ class LoginActivityVM(activity: Activity) : AndroidViewModel(activity.applicatio
requestCode: Int,
launcher: ActivityResultLauncher?,
) {
- userServiceInterface.signInWithAppAuth(requestCode, launcher!!)
+ userServiceInterface.signInWithAppAuth(
+ requestCode,
+ launcher!!
+ )
}
/**
+ * Function is to do SIGN UP / User creation
*
- *
- * @param userServiceInterface
- * @param requestCode
- * @param launcher
+ * @param userServiceInterface SDK interface to call SIGN UP API
+ * @param requestCode Activity result request code
+ * @param launcher [ActivityResultLauncher] reference object
*/
fun signUpRequest(
userServiceInterface: UserServiceInterface,
requestCode: Int,
launcher: ActivityResultLauncher?,
) {
- userServiceInterface.signUpWithAppAuth(requestCode, launcher!!)
+ userServiceInterface.signUpWithAppAuth(
+ requestCode,
+ launcher!!
+ )
}
/**
@@ -129,7 +135,7 @@ class LoginActivityVM(activity: Activity) : AndroidViewModel(activity.applicatio
* @param activity Application activity obejct
* @return [MutableLiveData] of [CustomMessage]
*/
- fun fetchUserProfileData(activity: Activity): MutableLiveData> {
- return LoginRepository(activity).fetchUserProfileData()
+ fun fetchUserProfileData(userServiceInterface: UserServiceInterface): MutableLiveData> {
+ return LoginRepository().fetchUserProfileData(userServiceInterface)
}
}
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/NotificationVM.kt b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/NotificationVM.kt
similarity index 93%
rename from app/src/main/java/com/harman/vehicleconnects/models/viewmodels/NotificationVM.kt
rename to app/src/main/java/org/eclipse/ecsp/models/viewmodels/NotificationVM.kt
index 645e589..2cbc7af 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/NotificationVM.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/NotificationVM.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.viewmodels
+package org.eclipse.ecsp.models.viewmodels
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -20,10 +20,10 @@ import androidx.compose.runtime.MutableState
import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.LifecycleOwner
import androidx.navigation.NavHostController
-import com.harman.androidvehicleconnectsdk.notificationservice.model.AlertData
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.models.routes.BottomNavItem
-import com.harman.vehicleconnects.repository.DashboardRepository
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.models.routes.BottomNavItem
+import org.eclipse.ecsp.repository.DashboardRepository
+import org.eclipse.ecsp.notificationservice.model.AlertData
/**
* Represents the View Model class used for Notification screen
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/RemoteOperationVM.kt b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/RemoteOperationVM.kt
similarity index 93%
rename from app/src/main/java/com/harman/vehicleconnects/models/viewmodels/RemoteOperationVM.kt
rename to app/src/main/java/org/eclipse/ecsp/models/viewmodels/RemoteOperationVM.kt
index c550608..1fb4b21 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/RemoteOperationVM.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/RemoteOperationVM.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.viewmodels
+package org.eclipse.ecsp.models.viewmodels
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -22,21 +22,21 @@ import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import com.google.gson.Gson
-import com.harman.androidvehicleconnectsdk.helper.response.CustomMessage
-import com.harman.androidvehicleconnectsdk.roservice.model.RemoteOperationState
-import com.harman.androidvehicleconnectsdk.roservice.model.RoEventHistoryResponse
-import com.harman.androidvehicleconnectsdk.roservice.model.RoStatusResponse
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.AppConstants.FORCED_FAILURE
-import com.harman.vehicleconnects.helper.AppConstants.PENDING
-import com.harman.vehicleconnects.helper.fromJson
-import com.harman.vehicleconnects.helper.isRequestPendingLong
-import com.harman.vehicleconnects.helper.toastError
-import com.harman.vehicleconnects.models.dataclass.ROErrorMessage
-import com.harman.vehicleconnects.models.dataclass.RemoteOperationItem
-import com.harman.vehicleconnects.repository.DashboardRepository
-import com.harman.vehicleconnects.services.RemoteOperationService
-import com.harman.vehicleconnects.services.RoRequestLoopService
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.roservice.model.RemoteOperationState
+import org.eclipse.ecsp.roservice.model.RoEventHistoryResponse
+import org.eclipse.ecsp.roservice.model.RoStatusResponse
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.AppConstants.FORCED_FAILURE
+import org.eclipse.ecsp.helper.AppConstants.PENDING
+import org.eclipse.ecsp.helper.fromJson
+import org.eclipse.ecsp.helper.isRequestPendingLong
+import org.eclipse.ecsp.helper.toastError
+import org.eclipse.ecsp.models.dataclass.ROErrorMessage
+import org.eclipse.ecsp.models.dataclass.RemoteOperationItem
+import org.eclipse.ecsp.repository.DashboardRepository
+import org.eclipse.ecsp.services.RemoteOperationService
+import org.eclipse.ecsp.services.RoRequestLoopService
/**
* Represents the View Model class used by Remote operation screen
diff --git a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/VehicleProfileVM.kt b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/VehicleProfileVM.kt
similarity index 89%
rename from app/src/main/java/com/harman/vehicleconnects/models/viewmodels/VehicleProfileVM.kt
rename to app/src/main/java/org/eclipse/ecsp/models/viewmodels/VehicleProfileVM.kt
index 72d23ad..2d1302c 100644
--- a/app/src/main/java/com/harman/vehicleconnects/models/viewmodels/VehicleProfileVM.kt
+++ b/app/src/main/java/org/eclipse/ecsp/models/viewmodels/VehicleProfileVM.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.models.viewmodels
+package org.eclipse.ecsp.models.viewmodels
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -19,12 +19,12 @@ import android.app.Activity
import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
-import com.harman.androidvehicleconnectsdk.helper.response.CustomMessage
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.TerminateDeviceData
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.vehicleprofile.PostVehicleAttributeData
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.vehicleprofile.VehicleAttributeDetail
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.repository.VehicleProfileRepository
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.vehicleservice.model.TerminateDeviceData
+import org.eclipse.ecsp.vehicleservice.model.vehicleprofile.PostVehicleAttributeData
+import org.eclipse.ecsp.vehicleservice.model.vehicleprofile.VehicleAttributeDetail
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.repository.VehicleProfileRepository
/**
* ViewModel class for Vehicle profile screen
diff --git a/app/src/main/java/com/harman/vehicleconnects/repository/DashboardRepository.kt b/app/src/main/java/org/eclipse/ecsp/repository/DashboardRepository.kt
similarity index 73%
rename from app/src/main/java/com/harman/vehicleconnects/repository/DashboardRepository.kt
rename to app/src/main/java/org/eclipse/ecsp/repository/DashboardRepository.kt
index 87c197e..b842986 100644
--- a/app/src/main/java/com/harman/vehicleconnects/repository/DashboardRepository.kt
+++ b/app/src/main/java/org/eclipse/ecsp/repository/DashboardRepository.kt
@@ -1,4 +1,5 @@
-package com.harman.vehicleconnects.repository
+package org.eclipse.ecsp.repository
+
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -17,24 +18,25 @@ package com.harman.vehicleconnects.repository
********************************************************************************/
import android.util.Log
import androidx.lifecycle.MutableLiveData
-import com.harman.androidvehicleconnectsdk.helper.response.CustomMessage
-import com.harman.androidvehicleconnectsdk.notificationservice.model.AlertAnalysisData
-import com.harman.androidvehicleconnectsdk.notificationservice.model.NotificationConfigData
-import com.harman.androidvehicleconnectsdk.notificationservice.service.NotificationServiceInterface
-import com.harman.androidvehicleconnectsdk.roservice.model.RemoteOperationState
-import com.harman.androidvehicleconnectsdk.roservice.model.RoEventHistoryResponse
-import com.harman.androidvehicleconnectsdk.roservice.model.RoStatusResponse
-import com.harman.androidvehicleconnectsdk.roservice.service.RoServiceInterface
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.AssociatedDevice
-import com.harman.androidvehicleconnectsdk.vehicleservice.service.VehicleServiceInterface
-import com.harman.vehicleconnects.helper.AppConstants.DISASSOCIATED
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.helper.AppConstants.DISASSOCIATED
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
import kotlinx.coroutines.CoroutineExceptionHandler
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Deferred
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.async
import kotlinx.coroutines.launch
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.notificationservice.model.AlertAnalysisData
+import org.eclipse.ecsp.notificationservice.model.NotificationConfigData
+import org.eclipse.ecsp.notificationservice.service.NotificationServiceInterface
+import org.eclipse.ecsp.roservice.model.RemoteOperationState
+import org.eclipse.ecsp.roservice.model.RoEventHistoryResponse
+import org.eclipse.ecsp.roservice.model.RoStatusResponse
+import org.eclipse.ecsp.roservice.service.RoServiceInterface
+import org.eclipse.ecsp.userservice.service.UserServiceInterface
+import org.eclipse.ecsp.vehicleservice.model.AssociatedDevice
+import org.eclipse.ecsp.vehicleservice.service.VehicleServiceInterface
/**
* Dashboard Repository class is to perform all network calls come from Dashboard activity
@@ -164,17 +166,17 @@ class DashboardRepository {
Log.e("Alert History API failed: ", exception.cause.toString())
}
CoroutineScope(Dispatchers.IO).launch(exception) {
- notificationServiceInterface.notificationAlertHistory(
- deviceId,
- alertTypes,
- since,
- till,
- size,
- page,
- readStatus,
- ) {
- data.postValue(it)
- }
+ data.postValue(
+ notificationServiceInterface.notificationAlertHistory(
+ deviceId,
+ alertTypes,
+ since,
+ till,
+ size,
+ page,
+ readStatus,
+ )
+ )
}
return data
}
@@ -184,8 +186,8 @@ class DashboardRepository {
*
* @return [MutableLiveData] of [HashMap]
*/
- fun associateDeviceList(): MutableLiveData> {
- val data = MutableLiveData>()
+ fun associateDeviceList(): MutableLiveData>> {
+ val data = MutableLiveData>>()
val exception =
CoroutineExceptionHandler { _, exception ->
Log.e(
@@ -200,25 +202,34 @@ class DashboardRepository {
var deviceAssociationListData: List? =
null
vehicleServiceInterface.associatedDeviceList {
- deviceAssociationListData =
- it.response?.data?.filter { deviceList ->
- deviceList.mDeviceId != null && deviceList.mAssociationStatus != DISASSOCIATED
- }
+ if (it.response != null) {
+ deviceAssociationListData =
+ it.response?.data?.filter { deviceList ->
+ deviceList.mDeviceId != null && deviceList.mAssociationStatus != DISASSOCIATED
+ }
+ }
}
return@async deviceAssociationListData
}
- val vehicleProfileDataCall: Deferred> =
+ val vehicleProfileDataCall: Deferred>> =
async {
+ var success = false
deviceCall.await()?.forEach {
if (it.mDeviceId != null) {
vehicleServiceInterface.getVehicleProfile(it.mDeviceId!!) { vehicleProfileData ->
list[it.mDeviceId!!] =
- VehicleProfileModel(it, vehicleProfileData.response?.data?.get(0))
+ VehicleProfileModel(
+ it,
+ vehicleProfileData.response?.data?.get(0)
+ )
}
+ success = true
}
+ }?.let {
+ success = false
}
- return@async list
+ return@async Pair(success, list)
}
data.postValue(vehicleProfileDataCall.await())
@@ -249,8 +260,20 @@ class DashboardRepository {
null,
notificationConfigDataList,
) {
- Log.d("NOTIFICATION_SUBSCRIPTION API", "Notification subscription api success for $vehicleId")
+ Log.d(
+ "NOTIFICATION_SUBSCRIPTION API",
+ "Notification subscription api success for $vehicleId"
+ )
}
}
}
+
+ fun doSignOut(userServiceInterface: UserServiceInterface, response: (Boolean) -> Unit) {
+ userServiceInterface.signOutWithAppAuth {
+ response(it.status.requestStatus)
+ }
+ }
+
+ suspend fun requestForChangePassword(userServiceInterface: UserServiceInterface): CustomMessage =
+ userServiceInterface.changePasswordRequest()
}
diff --git a/app/src/main/java/com/harman/vehicleconnects/repository/LoginRepository.kt b/app/src/main/java/org/eclipse/ecsp/repository/LoginRepository.kt
similarity index 74%
rename from app/src/main/java/com/harman/vehicleconnects/repository/LoginRepository.kt
rename to app/src/main/java/org/eclipse/ecsp/repository/LoginRepository.kt
index 71d2d67..e4eaa48 100644
--- a/app/src/main/java/com/harman/vehicleconnects/repository/LoginRepository.kt
+++ b/app/src/main/java/org/eclipse/ecsp/repository/LoginRepository.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.repository
+package org.eclipse.ecsp.repository
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -15,12 +15,11 @@ package com.harman.vehicleconnects.repository
*
* SPDX-License-Identifier: Apache-2.0
********************************************************************************/
-import android.app.Activity
import android.util.Log
import androidx.lifecycle.MutableLiveData
-import com.harman.androidvehicleconnectsdk.helper.response.CustomMessage
-import com.harman.androidvehicleconnectsdk.userservice.model.UserProfile
-import com.harman.androidvehicleconnectsdk.userservice.service.UserServiceInterface
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.userservice.model.UserProfile
+import org.eclipse.ecsp.userservice.service.UserServiceInterface
import kotlinx.coroutines.CoroutineExceptionHandler
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
@@ -29,19 +28,14 @@ import kotlinx.coroutines.launch
/**
* Login Repository class is to perform all network calls related to login feature
*
- * @property activity
*/
-class LoginRepository(val activity: Activity) {
- private val userServiceInterface: UserServiceInterface by lazy {
- UserServiceInterface.authService(activity)
- }
-
+class LoginRepository {
/**
* Function is to get the user profile data using SDK Api
*
* @return [MutableLiveData] of [UserProfile]'s [CustomMessage]
*/
- fun fetchUserProfileData(): MutableLiveData> {
+ fun fetchUserProfileData(userServiceInterface: UserServiceInterface): MutableLiveData> {
val data = MutableLiveData>()
val exception =
CoroutineExceptionHandler { _, exception ->
diff --git a/app/src/main/java/com/harman/vehicleconnects/repository/VehicleProfileRepository.kt b/app/src/main/java/org/eclipse/ecsp/repository/VehicleProfileRepository.kt
similarity index 88%
rename from app/src/main/java/com/harman/vehicleconnects/repository/VehicleProfileRepository.kt
rename to app/src/main/java/org/eclipse/ecsp/repository/VehicleProfileRepository.kt
index 5a1c5bf..5ee81bc 100644
--- a/app/src/main/java/com/harman/vehicleconnects/repository/VehicleProfileRepository.kt
+++ b/app/src/main/java/org/eclipse/ecsp/repository/VehicleProfileRepository.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.repository
+package org.eclipse.ecsp.repository
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -17,10 +17,10 @@ package com.harman.vehicleconnects.repository
********************************************************************************/
import android.util.Log
import androidx.lifecycle.MutableLiveData
-import com.harman.androidvehicleconnectsdk.helper.response.CustomMessage
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.TerminateDeviceData
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.vehicleprofile.PostVehicleAttributeData
-import com.harman.androidvehicleconnectsdk.vehicleservice.service.VehicleServiceInterface
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.vehicleservice.model.TerminateDeviceData
+import org.eclipse.ecsp.vehicleservice.model.vehicleprofile.PostVehicleAttributeData
+import org.eclipse.ecsp.vehicleservice.service.VehicleServiceInterface
import kotlinx.coroutines.CoroutineExceptionHandler
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
diff --git a/app/src/main/java/com/harman/vehicleconnects/services/ConnectionManager.kt b/app/src/main/java/org/eclipse/ecsp/services/ConnectionManager.kt
similarity index 95%
rename from app/src/main/java/com/harman/vehicleconnects/services/ConnectionManager.kt
rename to app/src/main/java/org/eclipse/ecsp/services/ConnectionManager.kt
index cb891cf..7e4b42f 100644
--- a/app/src/main/java/com/harman/vehicleconnects/services/ConnectionManager.kt
+++ b/app/src/main/java/org/eclipse/ecsp/services/ConnectionManager.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.services
+package org.eclipse.ecsp.services
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -19,7 +19,7 @@ import android.content.Context
import android.net.ConnectivityManager
import android.net.Network
import android.net.NetworkCapabilities
-import com.harman.vehicleconnects.services.ConnectionManager.ConnectionListener
+import org.eclipse.ecsp.services.ConnectionManager.ConnectionListener
/**
* ConnectionManager class is used to get the network connectivity information
diff --git a/app/src/main/java/com/harman/vehicleconnects/services/RemoteOperationService.kt b/app/src/main/java/org/eclipse/ecsp/services/RemoteOperationService.kt
similarity index 93%
rename from app/src/main/java/com/harman/vehicleconnects/services/RemoteOperationService.kt
rename to app/src/main/java/org/eclipse/ecsp/services/RemoteOperationService.kt
index f029581..2ffc90a 100644
--- a/app/src/main/java/com/harman/vehicleconnects/services/RemoteOperationService.kt
+++ b/app/src/main/java/org/eclipse/ecsp/services/RemoteOperationService.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.services
+package org.eclipse.ecsp.services
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -16,10 +16,10 @@ package com.harman.vehicleconnects.services
* SPDX-License-Identifier: Apache-2.0
********************************************************************************/
import android.app.Activity
-import com.harman.androidvehicleconnectsdk.roservice.model.RoEventHistoryResponse
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.models.dataclass.RemoteOperationItem
-import com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose.setStateIcon
+import org.eclipse.ecsp.roservice.model.RoEventHistoryResponse
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.models.dataclass.RemoteOperationItem
+import org.eclipse.ecsp.ui.view.composes.remoteoperationcompose.setStateIcon
/**
* RemoteOperationService class is used to handle the UI logic for remote operation screen
diff --git a/app/src/main/java/com/harman/vehicleconnects/services/RoRequestLoopService.kt b/app/src/main/java/org/eclipse/ecsp/services/RoRequestLoopService.kt
similarity index 88%
rename from app/src/main/java/com/harman/vehicleconnects/services/RoRequestLoopService.kt
rename to app/src/main/java/org/eclipse/ecsp/services/RoRequestLoopService.kt
index 0e51bba..afee668 100644
--- a/app/src/main/java/com/harman/vehicleconnects/services/RoRequestLoopService.kt
+++ b/app/src/main/java/org/eclipse/ecsp/services/RoRequestLoopService.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.services
+package org.eclipse.ecsp.services
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -19,20 +19,20 @@ import android.app.Activity
import android.util.Log
import androidx.compose.runtime.MutableState
import androidx.lifecycle.LifecycleOwner
-import com.harman.androidvehicleconnectsdk.helper.response.CustomMessage
-import com.harman.androidvehicleconnectsdk.roservice.model.RoEventHistoryResponse
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.AppConstants.ALARM
-import com.harman.vehicleconnects.helper.AppConstants.DOOR
-import com.harman.vehicleconnects.helper.AppConstants.ENGINE
-import com.harman.vehicleconnects.helper.AppConstants.LIGHT
-import com.harman.vehicleconnects.helper.AppConstants.TRUNK
-import com.harman.vehicleconnects.helper.AppConstants.WINDOWS
-import com.harman.vehicleconnects.helper.isRequestPendingLong
-import com.harman.vehicleconnects.helper.toastError
-import com.harman.vehicleconnects.models.dataclass.RemoteOperationItem
-import com.harman.vehicleconnects.models.viewmodels.RemoteOperationVM
-import com.harman.vehicleconnects.repository.DashboardRepository
+import org.eclipse.ecsp.helper.response.CustomMessage
+import org.eclipse.ecsp.roservice.model.RoEventHistoryResponse
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.AppConstants.ALARM
+import org.eclipse.ecsp.helper.AppConstants.DOOR
+import org.eclipse.ecsp.helper.AppConstants.ENGINE
+import org.eclipse.ecsp.helper.AppConstants.LIGHT
+import org.eclipse.ecsp.helper.AppConstants.TRUNK
+import org.eclipse.ecsp.helper.AppConstants.WINDOWS
+import org.eclipse.ecsp.helper.isRequestPendingLong
+import org.eclipse.ecsp.helper.toastError
+import org.eclipse.ecsp.models.dataclass.RemoteOperationItem
+import org.eclipse.ecsp.models.viewmodels.RemoteOperationVM
+import org.eclipse.ecsp.repository.DashboardRepository
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.Job
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/theme/Color.kt b/app/src/main/java/org/eclipse/ecsp/ui/theme/Color.kt
similarity index 96%
rename from app/src/main/java/com/harman/vehicleconnects/ui/theme/Color.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/theme/Color.kt
index 3ade4e0..e5a8041 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/theme/Color.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/theme/Color.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.theme
+package org.eclipse.ecsp.ui.theme
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/theme/Type.kt b/app/src/main/java/org/eclipse/ecsp/ui/theme/Type.kt
similarity index 97%
rename from app/src/main/java/com/harman/vehicleconnects/ui/theme/Type.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/theme/Type.kt
index e98daa2..716e217 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/theme/Type.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/theme/Type.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.theme
+package org.eclipse.ecsp.ui.theme
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/App.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/App.kt
similarity index 90%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/activities/App.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/activities/App.kt
index 473bdef..36ff46e 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/App.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/App.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.activities
+package org.eclipse.ecsp.ui.view.activities
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -17,7 +17,7 @@ package com.harman.vehicleconnects.ui.view.activities
********************************************************************************/
import androidx.multidex.MultiDexApplication
import com.google.firebase.FirebaseApp
-import com.harman.androidvehicleconnectsdk.helper.AppManager
+import org.eclipse.ecsp.helper.AppManager
/**
* Main Application activity
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/BaseAppActivity.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/BaseAppActivity.kt
similarity index 89%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/activities/BaseAppActivity.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/activities/BaseAppActivity.kt
index 049bcf0..ed99391 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/BaseAppActivity.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/BaseAppActivity.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.activities
+package org.eclipse.ecsp.ui.view.activities
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -19,10 +19,10 @@ import android.content.Intent
import android.os.Bundle
import android.util.Log
import androidx.activity.ComponentActivity
-import com.harman.androidvehicleconnectsdk.helper.AppManager
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.toastError
-import com.harman.vehicleconnects.services.ConnectionManager
+import org.eclipse.ecsp.helper.AppManager
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.toastError
+import org.eclipse.ecsp.services.ConnectionManager
/**
* Base activity of application, used to sign out from the session and get the network connectivity info
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/DashboardActivity.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/DashboardActivity.kt
similarity index 70%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/activities/DashboardActivity.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/activities/DashboardActivity.kt
index 2d80519..2cd4316 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/DashboardActivity.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/DashboardActivity.kt
@@ -1,4 +1,5 @@
-package com.harman.vehicleconnects.ui.view.activities
+package org.eclipse.ecsp.ui.view.activities
+
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -23,38 +24,46 @@ import android.os.Bundle
import android.widget.Toast
import androidx.activity.compose.setContent
import androidx.activity.result.contract.ActivityResultContracts
+import androidx.compose.material3.AlertDialog
+import androidx.compose.material3.Button
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.MutableState
import androidx.compose.runtime.livedata.observeAsState
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.platform.testTag
import androidx.core.content.ContextCompat
import androidx.navigation.NavHostController
import androidx.navigation.compose.rememberNavController
import com.google.gson.Gson
-import com.harman.androidvehicleconnectsdk.notificationservice.model.AlertData
-import com.harman.androidvehicleconnectsdk.roservice.model.RemoteOperationState
-import com.harman.androidvehicleconnectsdk.userservice.model.UserProfile
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.AppConstants.defaultRoValuesList
-import com.harman.vehicleconnects.helper.AppConstants.getUserProfile
-import com.harman.vehicleconnects.helper.fromJson
-import com.harman.vehicleconnects.helper.isInternetAvailable
-import com.harman.vehicleconnects.helper.launchActivity
-import com.harman.vehicleconnects.helper.toastError
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.models.viewmodels.AppViewModelFactory
-import com.harman.vehicleconnects.models.viewmodels.DashboardVM
-import com.harman.vehicleconnects.models.viewmodels.NotificationVM
-import com.harman.vehicleconnects.models.viewmodels.RemoteOperationVM
-import com.harman.vehicleconnects.ui.theme.White
-import com.harman.vehicleconnects.ui.view.composes.TopBar
-import com.harman.vehicleconnects.ui.view.composes.dashboardcompose.BottomNavigationBar
-import com.harman.vehicleconnects.ui.view.composes.dashboardcompose.ShowConfirmationDialogBox
-import com.harman.vehicleconnects.ui.view.composes.dashboardcompose.mainCompose
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.notificationservice.model.AlertData
+import org.eclipse.ecsp.roservice.model.RemoteOperationState
+import org.eclipse.ecsp.userservice.model.UserProfile
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.AppConstants.defaultRoValuesList
+import org.eclipse.ecsp.helper.AppConstants.getUserProfile
+import org.eclipse.ecsp.helper.fromJson
+import org.eclipse.ecsp.helper.isInternetAvailable
+import org.eclipse.ecsp.helper.launchActivity
+import org.eclipse.ecsp.helper.toastError
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.models.viewmodels.AppViewModelFactory
+import org.eclipse.ecsp.models.viewmodels.DashboardVM
+import org.eclipse.ecsp.models.viewmodels.NotificationVM
+import org.eclipse.ecsp.models.viewmodels.RemoteOperationVM
+import org.eclipse.ecsp.ui.theme.White
+import org.eclipse.ecsp.ui.view.composes.TopBar
+import org.eclipse.ecsp.ui.view.composes.dashboardcompose.BottomNavigationBar
+import org.eclipse.ecsp.ui.view.composes.dashboardcompose.ShowChangePasswordConfirmationDialogBox
+import org.eclipse.ecsp.ui.view.composes.dashboardcompose.ShowConfirmationDialogBox
+import org.eclipse.ecsp.ui.view.composes.dashboardcompose.mainCompose
+import org.eclipse.ecsp.userservice.service.UserServiceInterface
/**
* Dashboard activity class used to do UI for dashboard activities, which contains all the bottom menu.
@@ -71,6 +80,9 @@ class DashboardActivity : BaseAppActivity() {
private val notificationVM: NotificationVM by lazy {
AppViewModelFactory(this@DashboardActivity).create(NotificationVM::class.java)
}
+ private val userServiceInterface: UserServiceInterface by lazy {
+ UserServiceInterface.authService(this@DashboardActivity)
+ }
private var showBottomSheet: MutableState>? = null
private var showVehicleList =
mutableStateOf(
@@ -80,11 +92,13 @@ class DashboardActivity : BaseAppActivity() {
),
)
private lateinit var navController: NavHostController
- private var isProgressBarLoading: MutableState? = null
+ private val isProgressBarLoading = mutableStateOf(false)
private var lazyStaggeredGridList = mutableStateOf(ArrayList(defaultRoValuesList))
private var selectedVehicleId: MutableState>? = null
private var openDialog: MutableState>? = null
private var openConfirmationDialog: MutableState? = null
+ private lateinit var passwordChangeDialog: MutableState
+ private val dialogMS = mutableStateOf(Pair(false, ""))
private var userId: String? = null
private var vehicleProfileDataList = mutableStateOf(HashMap())
private val alertList = mutableStateOf>(arrayListOf())
@@ -99,6 +113,23 @@ class DashboardActivity : BaseAppActivity() {
remoteOperationVM.updateRoStatusData().observe(this@DashboardActivity) {
if (it != null) updateROState(it.first, it.second, it.third)
}
+
+ dashboardVM.isPasswordChangeTriggered().observe(this@DashboardActivity) {
+ if (it) {
+ isProgressBarLoading.value = true
+ dashboardVM.changePasswordApiCall(userServiceInterface)
+ .observe(this@DashboardActivity) { customMessage ->
+ isProgressBarLoading.value = false
+ if (customMessage.status.requestStatus) {
+ dialogMS.value =
+ Pair(true, getString(R.string.password_change_success_status_text))
+ } else {
+ dialogMS.value =
+ Pair(true, getString(R.string.password_change_failure_status_text))
+ }
+ }
+ }
+ }
// askNotificationPermission()
}
@@ -118,8 +149,8 @@ class DashboardActivity : BaseAppActivity() {
selectedVehicleId = remember { mutableStateOf(Triple("", "", "")) }
openDialog = remember { mutableStateOf(Triple(false, "", "")) }
showBottomSheet = remember { mutableStateOf(Triple(false, "", "")) }
- isProgressBarLoading = remember { mutableStateOf(true) }
openConfirmationDialog = remember { mutableStateOf(false) }
+ passwordChangeDialog = remember { mutableStateOf(false) }
navController = rememberNavController()
selectedVehicleIndex =
remember {
@@ -176,6 +207,7 @@ class DashboardActivity : BaseAppActivity() {
lazyStaggeredGridList,
showVehicleList,
openConfirmationDialog,
+ passwordChangeDialog,
alertList,
notifyRoUpdate,
selectedVehicleIndex,
@@ -185,7 +217,41 @@ class DashboardActivity : BaseAppActivity() {
)
}
if (openConfirmationDialog != null && openConfirmationDialog!!.value) {
- ShowConfirmationDialogBox(dashboardVM, openConfirmationDialog)
+ ShowConfirmationDialogBox(
+ userServiceInterface,
+ dashboardVM,
+ openConfirmationDialog,
+ getString(R.string.sign_out_text),
+ getString(R.string.sign_out_sub_text)
+ )
+ }
+ if (passwordChangeDialog.value) {
+ ShowChangePasswordConfirmationDialogBox(
+ dashboardVM = dashboardVM,
+ confirmationDialog = passwordChangeDialog,
+ title = getString(R.string.password_change_title_text),
+ message = getString(R.string.password_change_sub_text)
+ )
+ }
+ if (dialogMS.value.first) {
+ AlertDialog(
+ onDismissRequest = {
+ dialogMS.value = Pair(false, "")
+ },
+ title = {
+ Text(text = dialogMS.value.second)
+ },
+ confirmButton = {
+ Button(
+ modifier = Modifier.testTag("confirm_btn_tag"),
+ onClick = {
+ dialogMS.value = Pair(false, "")
+ },
+ ) {
+ Text("Close")
+ }
+ }
+ )
}
}
}
@@ -210,13 +276,13 @@ class DashboardActivity : BaseAppActivity() {
}
private fun triggerDeviceAssociationListApi() {
- isProgressBarLoading?.value = true
+// isProgressBarLoading.value = true
dashboardVM.getAssociatedDeviceList().observe(this@DashboardActivity) {
// dashboardVM.subscribeNotificationConfig(emailId?:"", it)
- isProgressBarLoading?.value = false
+ isProgressBarLoading.value = false
it.let {
AppConstants.setVehicleList(this@DashboardActivity, Gson().toJson(it))
- processVehicleList(it)
+ processVehicleList(it.second)
}
}
}
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/DeviceAssociationActivity.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/DeviceAssociationActivity.kt
similarity index 80%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/activities/DeviceAssociationActivity.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/activities/DeviceAssociationActivity.kt
index 61deaac..e747021 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/DeviceAssociationActivity.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/DeviceAssociationActivity.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.activities
+package org.eclipse.ecsp.ui.view.activities
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -25,14 +25,14 @@ import androidx.navigation.NavHostController
import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController
-import com.harman.androidvehicleconnectsdk.vehicleservice.service.VehicleServiceInterface
-import com.harman.vehicleconnects.helper.AppConstants.DEVICE_ASSOCIATION
-import com.harman.vehicleconnects.helper.AppConstants.ENTER_IMEI
-import com.harman.vehicleconnects.models.viewmodels.AppViewModelFactory
-import com.harman.vehicleconnects.models.viewmodels.DeviceAssociationVM
-import com.harman.vehicleconnects.ui.view.composes.TopBar
-import com.harman.vehicleconnects.ui.view.composes.deviceinstallationcompose.EnterImeiScreenCompose
-import com.harman.vehicleconnects.ui.view.composes.deviceinstallationcompose.InstallDeviceMainScreenCompose
+import org.eclipse.ecsp.vehicleservice.service.VehicleServiceInterface
+import org.eclipse.ecsp.helper.AppConstants.DEVICE_ASSOCIATION
+import org.eclipse.ecsp.helper.AppConstants.ENTER_SERIAL_NUM
+import org.eclipse.ecsp.models.viewmodels.AppViewModelFactory
+import org.eclipse.ecsp.models.viewmodels.DeviceAssociationVM
+import org.eclipse.ecsp.ui.view.composes.TopBar
+import org.eclipse.ecsp.ui.view.composes.deviceinstallationcompose.EnterSerialNumberScreenCompose
+import org.eclipse.ecsp.ui.view.composes.deviceinstallationcompose.InstallDeviceMainScreenCompose
/**
* Device association activity contains the device association feature
@@ -47,8 +47,8 @@ class DeviceAssociationActivity : BaseAppActivity() {
super.onCreate(savedInstanceState)
deviceAssociationVM = AppViewModelFactory(this).create(DeviceAssociationVM::class.java)
- deviceAssociationVM?.clickedOnVerifyImei()?.observe(this) {
- triggerIMEIVerificationApi(it)
+ deviceAssociationVM?.clickedOnSerialNumberSubmission()?.observe(this) {
+ triggerAssociateDevice(it)
}
setContent {
@@ -67,8 +67,8 @@ class DeviceAssociationActivity : BaseAppActivity() {
composable(DEVICE_ASSOCIATION) {
InstallDeviceMainScreenCompose(content, navController, deviceAssociationVM)
}
- composable(ENTER_IMEI) {
- EnterImeiScreenCompose(content = content, deviceAssociationVM)
+ composable(ENTER_SERIAL_NUM) {
+ EnterSerialNumberScreenCompose(content = content, deviceAssociationVM)
}
}
}
@@ -94,8 +94,8 @@ class DeviceAssociationActivity : BaseAppActivity() {
}
}
- private fun triggerAssociateDevice(imeiNumber: String) {
- deviceAssociationVM?.associateDevice(vehicleServiceInterface, imeiNumber)
+ private fun triggerAssociateDevice(serialNumber: String) {
+ deviceAssociationVM?.associateDevice(vehicleServiceInterface, serialNumber)
?.observe(this@DeviceAssociationActivity) {
deviceAssociationVM?.setLoadingStatus(false)
val successStatus = it?.status?.requestStatus ?: false
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/LoginActivity.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/LoginActivity.kt
similarity index 73%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/activities/LoginActivity.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/activities/LoginActivity.kt
index 6f09231..b0def73 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/LoginActivity.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/LoginActivity.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.activities
+package org.eclipse.ecsp.ui.view.activities
/********************************************************************************
* Copyright (c) 2023-24 Harman International
@@ -35,26 +35,31 @@ import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import com.google.gson.Gson
-import com.harman.androidvehicleconnectsdk.helper.AppManager
-import com.harman.androidvehicleconnectsdk.userservice.model.UserProfile
-import com.harman.androidvehicleconnectsdk.userservice.service.UserServiceInterface
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.dataToJson
-import com.harman.vehicleconnects.models.dataclass.EnvironmentListData
-import com.harman.vehicleconnects.models.viewmodels.AppViewModelFactory
-import com.harman.vehicleconnects.models.viewmodels.LoginActivityVM
-import com.harman.vehicleconnects.ui.view.composes.deviceinstallationcompose.ProgressBar
-import com.harman.vehicleconnects.ui.view.composes.logincompose.EnvironmentSpinner
-import com.harman.vehicleconnects.ui.view.composes.logincompose.ImageLogoCompose
-import com.harman.vehicleconnects.ui.view.composes.logincompose.SignInButton
+import org.eclipse.ecsp.helper.AppManager
+import org.eclipse.ecsp.userservice.model.UserProfile
+import org.eclipse.ecsp.userservice.service.UserServiceInterface
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.dataToJson
+import org.eclipse.ecsp.models.dataclass.EnvironmentListData
+import org.eclipse.ecsp.models.viewmodels.AppViewModelFactory
+import org.eclipse.ecsp.models.viewmodels.LoginActivityVM
+import org.eclipse.ecsp.ui.view.composes.deviceinstallationcompose.ProgressBar
+import org.eclipse.ecsp.ui.view.composes.logincompose.EnvironmentSpinner
+import org.eclipse.ecsp.ui.view.composes.logincompose.ImageLogoCompose
+import org.eclipse.ecsp.ui.view.composes.logincompose.SignInButton
+import org.eclipse.ecsp.ui.view.composes.logincompose.SignUpButton
/**
* LoginActivity Class is to display login UI and perform the login actions
*
*/
class LoginActivity : ComponentActivity() {
- private var loginActivityVM: LoginActivityVM? = null
- private var userServiceInterface: UserServiceInterface? = null
+ private val loginActivityVM: LoginActivityVM by lazy {
+ AppViewModelFactory(this@LoginActivity).create(LoginActivityVM::class.java)
+ }
+ private val userServiceInterface: UserServiceInterface by lazy {
+ UserServiceInterface.authService(this@LoginActivity)
+ }
private var launcher: ActivityResultLauncher? = null
private var isProgressBarLoading: MutableState? = null
@@ -66,14 +71,11 @@ class LoginActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (!AppManager.isLoggedIn()) {
- userServiceInterface = UserServiceInterface.authService(this)
- loginActivityVM =
- AppViewModelFactory(this@LoginActivity).create(LoginActivityVM::class.java)
var envList = EnvironmentListData(arrayListOf())
- loginActivityVM?.getEnvironmentList()?.observe(this) { envData ->
+ loginActivityVM.getEnvironmentList().observe(this) { envData ->
envList = envData
envList.environmentList.first()
- .let { loginActivityVM?.configureEnvironment(it) }
+ .let { loginActivityVM.configureEnvironment(it) }
}
launcher =
@@ -97,7 +99,7 @@ class LoginActivity : ComponentActivity() {
SIGN_UP_REQUEST_CODE -> {
val customMessage =
result.data?.let { AppManager.authResponseFromIntent(it) }
- Toast.makeText(
+ /*Toast.makeText(
this@LoginActivity,
if (customMessage?.status!!.requestStatus) {
"Signed Up successfully"
@@ -105,7 +107,7 @@ class LoginActivity : ComponentActivity() {
customMessage.error?.message
},
Toast.LENGTH_LONG,
- ).show()
+ ).show()*/
}
}
}
@@ -120,17 +122,16 @@ class LoginActivity : ComponentActivity() {
envList,
preselected = envList.environmentList.first(),
onSelectionChanged = {
- loginActivityVM?.configureEnvironment(it)
+ loginActivityVM.configureEnvironment(it)
},
)
isProgressBarLoading?.value?.let { ProgressBar(loading = it) }
SignInAndUpButtonCompose()
}
}
- } else
- {
- launchActivity()
- }
+ } else {
+ launchActivity()
+ }
}
@Composable
@@ -143,18 +144,18 @@ class LoginActivity : ComponentActivity() {
SignInButton {
launchSignInRequest()
}
- /*SignUpButton {
+ SignUpButton {
launchSignUpRequest()
- }*/
+ }
}
}
- private fun launchSignInRequest() {
- loginActivityVM?.signInRequest(userServiceInterface!!, SIGN_IN_REQUEST_CODE, launcher)
+ private fun launchSignInRequest() {
+ loginActivityVM.signInRequest(userServiceInterface, SIGN_IN_REQUEST_CODE, launcher)
}
- private fun launchSignUpRequest() {
- loginActivityVM?.signUpRequest(userServiceInterface!!, SIGN_UP_REQUEST_CODE, launcher)
+ private fun launchSignUpRequest() {
+ loginActivityVM.signUpRequest(userServiceInterface, SIGN_UP_REQUEST_CODE, launcher)
}
private fun launchActivity() {
@@ -164,8 +165,8 @@ class LoginActivity : ComponentActivity() {
}
private fun fetchUserProfileData() {
- loginActivityVM?.fetchUserProfileData(this@LoginActivity)
- ?.observe(this@LoginActivity) {
+ loginActivityVM.fetchUserProfileData(userServiceInterface)
+ .observe(this@LoginActivity) {
if (it?.response != null) {
isProgressBarLoading?.value = false
val response = it.response as UserProfile
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/VehicleProfileActivity.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/VehicleProfileActivity.kt
similarity index 89%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/activities/VehicleProfileActivity.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/activities/VehicleProfileActivity.kt
index 401d0df..7851ebe 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/activities/VehicleProfileActivity.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/activities/VehicleProfileActivity.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.activities
+package org.eclipse.ecsp.ui.view.activities
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -38,18 +38,18 @@ import androidx.navigation.NavHostController
import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController
-import com.harman.androidvehicleconnectsdk.vehicleservice.model.vehicleprofile.PostVehicleAttributeData
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.parcelable
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.models.routes.VehicleProfileRoute
-import com.harman.vehicleconnects.models.viewmodels.AppViewModelFactory
-import com.harman.vehicleconnects.models.viewmodels.VehicleProfileVM
-import com.harman.vehicleconnects.ui.theme.White
-import com.harman.vehicleconnects.ui.view.composes.TextFieldState
-import com.harman.vehicleconnects.ui.view.composes.TopBar
-import com.harman.vehicleconnects.ui.view.composes.deviceinstallationcompose.ProgressBar
-import com.harman.vehicleconnects.ui.view.composes.vehicleprofilecompose.VehicleProfileMainCompose
+import org.eclipse.ecsp.vehicleservice.model.vehicleprofile.PostVehicleAttributeData
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.parcelable
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.models.routes.VehicleProfileRoute
+import org.eclipse.ecsp.models.viewmodels.AppViewModelFactory
+import org.eclipse.ecsp.models.viewmodels.VehicleProfileVM
+import org.eclipse.ecsp.ui.theme.White
+import org.eclipse.ecsp.ui.view.composes.TextFieldState
+import org.eclipse.ecsp.ui.view.composes.TopBar
+import org.eclipse.ecsp.ui.view.composes.deviceinstallationcompose.ProgressBar
+import org.eclipse.ecsp.ui.view.composes.vehicleprofilecompose.VehicleProfileMainCompose
/**
* Vehicle Profile activity is used to hold the vehicle profile screen and actions
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/AppCommonCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/AppCommonCompose.kt
similarity index 92%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/AppCommonCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/AppCommonCompose.kt
index 3d151d1..fc4c524 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/AppCommonCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/AppCommonCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes
+package org.eclipse.ecsp.ui.view.composes
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -33,10 +33,10 @@ import androidx.compose.ui.platform.testTag
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.DarkGray
-import com.harman.vehicleconnects.ui.theme.White
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.DarkGray
+import org.eclipse.ecsp.ui.theme.White
/**
* AppCommonCompose contains common compose functions
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/DashboardMainCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/DashboardMainCompose.kt
similarity index 89%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/DashboardMainCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/DashboardMainCompose.kt
index a32e3de..cfe9cc8 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/DashboardMainCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/DashboardMainCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.dashboardcompose
+package org.eclipse.ecsp.ui.view.composes.dashboardcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -40,23 +40,23 @@ import androidx.navigation.NavHostController
import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable
import androidx.navigation.compose.currentBackStackEntryAsState
-import com.harman.androidvehicleconnectsdk.notificationservice.model.AlertData
-import com.harman.androidvehicleconnectsdk.roservice.model.RemoteOperationState
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.AppConstants.AJAR
-import com.harman.vehicleconnects.helper.AppConstants.PARTIAL_OPENED
-import com.harman.vehicleconnects.models.dataclass.RemoteOperationItem
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.models.routes.BottomNavItem
-import com.harman.vehicleconnects.models.viewmodels.DashboardVM
-import com.harman.vehicleconnects.models.viewmodels.NotificationVM
-import com.harman.vehicleconnects.models.viewmodels.RemoteOperationVM
-import com.harman.vehicleconnects.ui.theme.DarkGray
-import com.harman.vehicleconnects.ui.theme.LightBlue
-import com.harman.vehicleconnects.ui.theme.White
-import com.harman.vehicleconnects.ui.view.composes.deviceinstallationcompose.ProgressBar
-import com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose.BottomSheetOptionsRoCompose
-import com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose.RemoteOperationScreen
+import org.eclipse.ecsp.notificationservice.model.AlertData
+import org.eclipse.ecsp.roservice.model.RemoteOperationState
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.AppConstants.AJAR
+import org.eclipse.ecsp.helper.AppConstants.PARTIAL_OPENED
+import org.eclipse.ecsp.models.dataclass.RemoteOperationItem
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.models.routes.BottomNavItem
+import org.eclipse.ecsp.models.viewmodels.DashboardVM
+import org.eclipse.ecsp.models.viewmodels.NotificationVM
+import org.eclipse.ecsp.models.viewmodels.RemoteOperationVM
+import org.eclipse.ecsp.ui.theme.DarkGray
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.theme.White
+import org.eclipse.ecsp.ui.view.composes.deviceinstallationcompose.ProgressBar
+import org.eclipse.ecsp.ui.view.composes.remoteoperationcompose.BottomSheetOptionsRoCompose
+import org.eclipse.ecsp.ui.view.composes.remoteoperationcompose.RemoteOperationScreen
/**
* DashboardMainCompose file is used to handle the Bottom Navigation items compose
@@ -117,6 +117,7 @@ fun Activity.NavHostContainer(
openConfirmationDialog: MutableState?,
notifyRoUpdate: MutableState,
lifecycleOwner: LifecycleOwner,
+ passwordChangeDialog: MutableState?
) {
NavHost(
navController,
@@ -144,6 +145,7 @@ fun Activity.NavHostContainer(
vehicleProfileList,
openConfirmationDialog,
showVehicleList,
+ passwordChangeDialog
)
}
// disabled for current iteration
@@ -177,6 +179,7 @@ fun mainCompose(
lazyStaggeredGridList: MutableState>?,
showVehicleList: MutableState>>,
openConfirmationDialog: MutableState?,
+ passwordChangeDialog: MutableState?,
alertList: MutableState>,
notifyRoUpdate: MutableState,
selectedVehicleIndex: MutableState?,
@@ -192,7 +195,7 @@ fun mainCompose(
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Top,
) {
- if (showVehicleList.value.first) {
+// if (showVehicleList.value.first) {
VehicleSelectionListView(
vehicleList = showVehicleList.value.second,
selectedVehicleId?.value!!.first,
@@ -214,13 +217,13 @@ fun mainCompose(
) {
launchActivity()
}
- }
+// }
activity.NavHostContainer(
activity,
navController = navController, dashboardVM, remoteOperationVM, notificationVM,
vehicleProfileList = vehicleProfileList, isProgressBarLoading, showBottomSheet,
openDialog, selectedVehicleId, lazyStaggeredGridList,
- showVehicleList, openConfirmationDialog, notifyRoUpdate, lifecycleOwner,
+ showVehicleList, openConfirmationDialog, notifyRoUpdate, lifecycleOwner,passwordChangeDialog
)
isProgressBarLoading?.value?.let {
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/DashboardVehicleListCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/DashboardVehicleListCompose.kt
similarity index 94%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/DashboardVehicleListCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/DashboardVehicleListCompose.kt
index e0f6e16..7267e39 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/DashboardVehicleListCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/DashboardVehicleListCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.dashboardcompose
+package org.eclipse.ecsp.ui.view.composes.dashboardcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -45,11 +45,12 @@ import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.MildWhite
-import com.harman.vehicleconnects.ui.theme.White
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.theme.MildWhite
+import org.eclipse.ecsp.ui.theme.White
/**
* DashboardVehicleListCompose file contains compose functions, which is used to handle the dashboard
@@ -64,9 +65,9 @@ fun VehicleSelectionListView(
onVehicleSelection: (VehicleProfileModel?, Int) -> Unit,
onAddNewClick: () -> Unit,
) {
- val isSelectViewVisible = remember { mutableStateOf(false) }
- val isSelectedViewVisible = remember { mutableStateOf(true) }
- val isListViewVisible = remember { mutableStateOf(false) }
+ val isSelectViewVisible = remember { mutableStateOf(vehicleList.isEmpty()) }
+ val isSelectedViewVisible = remember { mutableStateOf(vehicleList.isNotEmpty()) }
+ val isListViewVisible = remember { mutableStateOf(vehicleList.isEmpty()) }
val selectedItem =
remember {
mutableStateOf(selectedVehicleId)
@@ -131,7 +132,7 @@ fun VehicleSelectionListView(
}
}
- /*Text(
+ Text(
text = "ADD NEW", color = LightBlue,
modifier = Modifier
.fillMaxHeight()
@@ -140,7 +141,7 @@ fun VehicleSelectionListView(
.clickable {
onAddNewClick()
},
- )*/
+ )
}
}
}
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/SettingsCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/SettingsCompose.kt
similarity index 80%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/SettingsCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/SettingsCompose.kt
index 7b1e912..706dd85 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/dashboardcompose/SettingsCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/dashboardcompose/SettingsCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.dashboardcompose
+package org.eclipse.ecsp.ui.view.composes.dashboardcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -48,21 +48,21 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import com.google.gson.Gson
-import com.harman.androidvehicleconnectsdk.userservice.model.UserProfile
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.AppConstants.SELECTED_DEVICE
-import com.harman.vehicleconnects.helper.fromJson
-import com.harman.vehicleconnects.helper.toastError
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.models.viewmodels.DashboardVM
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.DarkGray
-import com.harman.vehicleconnects.ui.theme.LightGray
-import com.harman.vehicleconnects.ui.theme.Orange
-import com.harman.vehicleconnects.ui.theme.White
-import com.harman.vehicleconnects.ui.view.activities.VehicleProfileActivity
-import com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose.ShowAlertDialog
+import org.eclipse.ecsp.userservice.model.UserProfile
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.AppConstants.SELECTED_DEVICE
+import org.eclipse.ecsp.helper.fromJson
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.models.viewmodels.DashboardVM
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.DarkGray
+import org.eclipse.ecsp.ui.theme.LightGray
+import org.eclipse.ecsp.ui.theme.Orange
+import org.eclipse.ecsp.ui.theme.White
+import org.eclipse.ecsp.ui.view.activities.VehicleProfileActivity
+import org.eclipse.ecsp.ui.view.composes.remoteoperationcompose.ShowAlertDialog
+import org.eclipse.ecsp.userservice.service.UserServiceInterface
/**
* SettingsCompose file contains the compose UI function used to handle the setting screen
@@ -77,6 +77,7 @@ fun SettingsMainCompose(
vehicleProfileList: MutableState>?,
openConfirmationDialog: MutableState?,
showVehicleList: MutableState>>,
+ passwordChangeDialog: MutableState?
) {
LaunchedEffect(Unit) {
dashboardVM.setTopBarTitle(activity.getString(R.string.settings_text))
@@ -140,6 +141,38 @@ fun SettingsMainCompose(
)
}
+ Row(
+ modifier =
+ Modifier
+ .background(White)
+ .fillMaxWidth()
+ .padding(top = 5.dp, start = 20.dp, end = 5.dp)
+ .heightIn(50.dp)
+ .clickable {
+ passwordChangeDialog?.value = true
+ },
+ verticalAlignment = Alignment.CenterVertically,
+ horizontalArrangement = Arrangement.Center,
+ ) {
+ Icon(
+ modifier = Modifier.padding(end = 10.dp),
+ imageVector = ImageVector.vectorResource(R.drawable.ic_account),
+ contentDescription = "password_change_ic",
+ tint = DarkGray,
+ )
+
+ Text(
+ modifier =
+ Modifier
+ .fillMaxWidth()
+ .padding(top = 13.dp)
+ .fillMaxHeight().testTag("password_change_text_tag"),
+ text = "Change Password",
+ color = Black,
+ fontSize = 16.sp,
+ )
+ }
+
Text(
modifier =
Modifier
@@ -164,14 +197,14 @@ fun SettingsMainCompose(
.height(50.dp).testTag("vehicle_profile_tag")
.clickable {
showVehicleList.value = Pair(false, showVehicleList.value.second)
- if (!deviceId.isNullOrEmpty()) {
+// if (!deviceId.isNullOrEmpty()) {
val intent = Intent(activity, VehicleProfileActivity::class.java)
intent.putExtra(SELECTED_DEVICE, vehicleProfileList?.value?.get(deviceId))
activity.startActivity(intent)
- } else
- {
- toastError(activity, "Please wait till the vehicle details are fetching.")
- }
+// } else
+// {
+// toastError(activity, "Please wait till the vehicle details are fetching.")
+// }
},
verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.Center,
@@ -416,18 +449,56 @@ fun SettingsMainCompose(
}
@Composable
-fun Activity.ShowConfirmationDialogBox(
+fun ShowConfirmationDialogBox(
+ userServiceInterface: UserServiceInterface,
dashboardVM: DashboardVM,
- openConfirmationDialog: MutableState?,
+ confirmationDialog: MutableState?,
+ title: String, message: String
+) {
+ ShowAlertDialog(
+ title = title,
+ message = message,
+ onDismiss = {
+ confirmationDialog?.value = false
+ },
+ ) {
+ dashboardVM.signOutClick(userServiceInterface)
+ confirmationDialog?.value = false
+ }
+}
+
+@Composable
+fun ShowChangePasswordConfirmationDialogBox(
+ dashboardVM: DashboardVM,
+ confirmationDialog: MutableState?,
+ title: String, message: String
) {
ShowAlertDialog(
- title = getString(R.string.sign_out_text),
- message = getString(R.string.sign_out_sub_text),
+ title = title,
+ message = message,
onDismiss = {
- openConfirmationDialog?.value = false
+ confirmationDialog?.value = false
},
) {
- dashboardVM.signOutClick()
- openConfirmationDialog?.value = false
+ dashboardVM.setPasswordChangeTriggerValue(true)
+ confirmationDialog?.value = false
}
}
+
+@Composable
+fun ShowPasswordChangeStatusDialogBox(
+ dialogMS: MutableState?,
+ title: String, message: String
+) {
+ ShowAlertDialog(
+ title = title,
+ message = message,
+ onDismiss = {
+ dialogMS?.value = false
+ },
+ ) {
+ dialogMS?.value = false
+ }
+}
+
+
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/deviceinstallationcompose/EnterIMEICompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/deviceinstallationcompose/EnterIMEICompose.kt
similarity index 87%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/deviceinstallationcompose/EnterIMEICompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/deviceinstallationcompose/EnterIMEICompose.kt
index e7f439c..9a1edb0 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/deviceinstallationcompose/EnterIMEICompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/deviceinstallationcompose/EnterIMEICompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.deviceinstallationcompose
+package org.eclipse.ecsp.ui.view.composes.deviceinstallationcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -31,7 +31,6 @@ import androidx.compose.foundation.layout.wrapContentSize
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material3.ButtonDefaults
import androidx.compose.material3.CircularProgressIndicator
-import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.material3.TextField
@@ -50,13 +49,13 @@ import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp
import androidx.core.text.isDigitsOnly
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.DarkGray
-import com.harman.vehicleconnects.ui.theme.LightBlue
-import com.harman.vehicleconnects.ui.theme.MildGray
-import com.harman.vehicleconnects.ui.theme.White
-import com.harman.vehicleconnects.ui.view.composes.TextFieldState
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.DarkGray
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.theme.MildGray
+import org.eclipse.ecsp.ui.theme.White
+import org.eclipse.ecsp.ui.view.composes.TextFieldState
/**
* EnterIMEICompose file contains all the compose function related to IMEI entering screen
@@ -65,7 +64,7 @@ import com.harman.vehicleconnects.ui.view.composes.TextFieldState
@Composable
fun Activity.TextFieldCompose(inputValue: TextFieldState = remember { TextFieldState() }) {
Text(
- text = getString(R.string.enter_imei_sub_text),
+ text = getString(R.string.enter_serial_sub_text),
color = DarkGray,
modifier =
Modifier
@@ -76,8 +75,8 @@ fun Activity.TextFieldCompose(inputValue: TextFieldState = remember { TextFieldS
val textFieldPadding = 6.dp
TextField(
value = inputValue.textInput,
- onValueChange = { if (it.isDigitsOnly()) inputValue.textInput = it },
- placeholder = { Text("IMEI", color = MildGray) },
+ onValueChange = { inputValue.textInput = it },
+ placeholder = { Text("Serial Number", color = MildGray) },
colors =
TextFieldDefaults.colors(
focusedTextColor = Black,
@@ -98,7 +97,6 @@ fun Activity.TextFieldCompose(inputValue: TextFieldState = remember { TextFieldS
Offset(size.width - textFieldPadding.toPx(), y),
)
},
- keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number),
)
}
@@ -138,7 +136,7 @@ fun EnterIMEIDotImageCompose() {
}
@Composable
-fun Activity.EnterIMEINextButtonCompose(onClick: () -> Unit) {
+fun Activity.EnterSerialNumberNextButtonCompose(onClick: () -> Unit) {
TextButton(
onClick = { onClick() },
colors =
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/deviceinstallationcompose/InstallationDeviceCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/deviceinstallationcompose/InstallationDeviceCompose.kt
similarity index 89%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/deviceinstallationcompose/InstallationDeviceCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/deviceinstallationcompose/InstallationDeviceCompose.kt
index 4a99703..66b2158 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/deviceinstallationcompose/InstallationDeviceCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/deviceinstallationcompose/InstallationDeviceCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.deviceinstallationcompose
+package org.eclipse.ecsp.ui.view.composes.deviceinstallationcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -48,15 +48,15 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp
import androidx.navigation.NavController
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.models.viewmodels.DeviceAssociationVM
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.DarkGray
-import com.harman.vehicleconnects.ui.theme.LightBlue
-import com.harman.vehicleconnects.ui.theme.LightGray
-import com.harman.vehicleconnects.ui.theme.White
-import com.harman.vehicleconnects.ui.view.composes.TextFieldState
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.models.viewmodels.DeviceAssociationVM
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.DarkGray
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.theme.LightGray
+import org.eclipse.ecsp.ui.theme.White
+import org.eclipse.ecsp.ui.view.composes.TextFieldState
/**
* InstallationDeviceCompose file contains device installation screen compose functions
@@ -96,7 +96,7 @@ fun Activity.InstallDeviceMainScreenCompose(
FindObdPortCompose()
NextButtonCompose {
// do click action
- navController.navigate(AppConstants.ENTER_IMEI) {
+ navController.navigate(AppConstants.ENTER_SERIAL_NUM) {
popUpTo(navController.graph.startDestinationId)
launchSingleTop = true
}
@@ -169,12 +169,12 @@ fun DotImageCompose() {
}
@Composable
-fun Activity.EnterImeiScreenCompose(
+fun Activity.EnterSerialNumberScreenCompose(
content: PaddingValues,
deviceAssociationVM: DeviceAssociationVM?,
) {
LaunchedEffect(Unit) {
- deviceAssociationVM?.setTopBarTitle(getString(R.string.enter_imei_text))
+ deviceAssociationVM?.setTopBarTitle(getString(R.string.enter_serial_text))
}
val loading = deviceAssociationVM?.getLoadingStatus()?.observeAsState()
Column(
@@ -198,14 +198,14 @@ fun Activity.EnterImeiScreenCompose(
verticalArrangement = Arrangement.Bottom,
horizontalAlignment = Alignment.CenterHorizontally,
) {
- EnterIMEINextButtonCompose {
+ EnterSerialNumberNextButtonCompose {
if (inputValue.textInput.isNotEmpty()) {
deviceAssociationVM?.setLoadingStatus(true)
- deviceAssociationVM?.triggerImeiVerification(inputValue.textInput)
+ deviceAssociationVM?.triggerSerialNumberVerification(inputValue.textInput)
} else {
Toast.makeText(
- this@EnterImeiScreenCompose,
- "Enter IMEI number",
+ this@EnterSerialNumberScreenCompose,
+ "Enter Serial number",
Toast.LENGTH_LONG,
).show()
}
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/logincompose/LoginCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/logincompose/LoginCompose.kt
similarity index 95%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/logincompose/LoginCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/logincompose/LoginCompose.kt
index ba502c8..9607e62 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/logincompose/LoginCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/logincompose/LoginCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.logincompose
+package org.eclipse.ecsp.ui.view.composes.logincompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -46,11 +46,11 @@ import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.unit.dp
-import com.harman.androidvehicleconnectsdk.environment.Environment
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.models.dataclass.EnvironmentListData
-import com.harman.vehicleconnects.ui.theme.LightBlue
-import com.harman.vehicleconnects.ui.theme.White
+import org.eclipse.ecsp.environment.Environment
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.models.dataclass.EnvironmentListData
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.theme.White
/**
* LoginCompose contains all the login screen related compose functions
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/notificationcompose/NotificationCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/notificationcompose/NotificationCompose.kt
similarity index 81%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/notificationcompose/NotificationCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/notificationcompose/NotificationCompose.kt
index 3408740..4885362 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/notificationcompose/NotificationCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/notificationcompose/NotificationCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.notificationcompose
+package org.eclipse.ecsp.ui.view.composes.notificationcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -44,37 +44,37 @@ import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.lifecycle.LifecycleOwner
-import com.harman.androidvehicleconnectsdk.notificationservice.model.AlertData
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_ACCIDENT
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_AIRBAG_DEPLOY
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_BOUNDARY
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_BREAK_WARNING
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_CURFEW
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_DISTURBANCE
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_DONGLE_STATUS
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_FIRMWARE_DOWNLOADED
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_FIRMWARE_UPGRADE
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_IDLE
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_IMPACT_DETECTION
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_LOW_BATTERY
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_LOW_FUEL
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_OIL_PRESSURE_WARNING
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_SPEED
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_TIRE_PRESSURE_WARNING
-import com.harman.vehicleconnects.helper.AppConstants.ALERT_TOW
-import com.harman.vehicleconnects.helper.AppConstants.EPID_TPMS_ALERT
-import com.harman.vehicleconnects.helper.AppConstants.GLOBAL_DOOR_LOCK
-import com.harman.vehicleconnects.helper.AppConstants.SEATBELT_ALERT
-import com.harman.vehicleconnects.helper.convertISO8601TimeToMillis
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.models.viewmodels.DashboardVM
-import com.harman.vehicleconnects.models.viewmodels.NotificationVM
-import com.harman.vehicleconnects.ui.theme.Gray
-import com.harman.vehicleconnects.ui.theme.LightGray
-import com.harman.vehicleconnects.ui.theme.MildGray
-import com.harman.vehicleconnects.ui.theme.MildWhite
+import org.eclipse.ecsp.notificationservice.model.AlertData
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.AppConstants.ALERT_ACCIDENT
+import org.eclipse.ecsp.helper.AppConstants.ALERT_AIRBAG_DEPLOY
+import org.eclipse.ecsp.helper.AppConstants.ALERT_BOUNDARY
+import org.eclipse.ecsp.helper.AppConstants.ALERT_BREAK_WARNING
+import org.eclipse.ecsp.helper.AppConstants.ALERT_CURFEW
+import org.eclipse.ecsp.helper.AppConstants.ALERT_DISTURBANCE
+import org.eclipse.ecsp.helper.AppConstants.ALERT_DONGLE_STATUS
+import org.eclipse.ecsp.helper.AppConstants.ALERT_FIRMWARE_DOWNLOADED
+import org.eclipse.ecsp.helper.AppConstants.ALERT_FIRMWARE_UPGRADE
+import org.eclipse.ecsp.helper.AppConstants.ALERT_IDLE
+import org.eclipse.ecsp.helper.AppConstants.ALERT_IMPACT_DETECTION
+import org.eclipse.ecsp.helper.AppConstants.ALERT_LOW_BATTERY
+import org.eclipse.ecsp.helper.AppConstants.ALERT_LOW_FUEL
+import org.eclipse.ecsp.helper.AppConstants.ALERT_OIL_PRESSURE_WARNING
+import org.eclipse.ecsp.helper.AppConstants.ALERT_SPEED
+import org.eclipse.ecsp.helper.AppConstants.ALERT_TIRE_PRESSURE_WARNING
+import org.eclipse.ecsp.helper.AppConstants.ALERT_TOW
+import org.eclipse.ecsp.helper.AppConstants.EPID_TPMS_ALERT
+import org.eclipse.ecsp.helper.AppConstants.GLOBAL_DOOR_LOCK
+import org.eclipse.ecsp.helper.AppConstants.SEATBELT_ALERT
+import org.eclipse.ecsp.helper.convertISO8601TimeToMillis
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.models.viewmodels.DashboardVM
+import org.eclipse.ecsp.models.viewmodels.NotificationVM
+import org.eclipse.ecsp.ui.theme.Gray
+import org.eclipse.ecsp.ui.theme.LightGray
+import org.eclipse.ecsp.ui.theme.MildGray
+import org.eclipse.ecsp.ui.theme.MildWhite
import java.text.SimpleDateFormat
import java.util.Calendar
import java.util.Locale
@@ -238,7 +238,7 @@ private fun getAlertHistoryData(
lifecycleOwner,
isProgressBarLoading,
deviceId,
- AppConstants.ALERT_TYPES,
+ org.eclipse.ecsp.helper.AppConstants.ALERT_TYPES,
alertList,
since,
until,
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationGridViewCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationGridViewCompose.kt
similarity index 83%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationGridViewCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationGridViewCompose.kt
index f4b28dc..3894a55 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationGridViewCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationGridViewCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose
+package org.eclipse.ecsp.ui.view.composes.remoteoperationcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -31,27 +31,28 @@ import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
+import androidx.compose.ui.draw.alpha
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
-import com.harman.vehicleconnects.helper.AppConstants.AJAR
-import com.harman.vehicleconnects.helper.AppConstants.CLOSED
-import com.harman.vehicleconnects.helper.AppConstants.LOCKED
-import com.harman.vehicleconnects.helper.AppConstants.OFF
-import com.harman.vehicleconnects.helper.AppConstants.ON
-import com.harman.vehicleconnects.helper.AppConstants.OPENED
-import com.harman.vehicleconnects.helper.AppConstants.PARTIAL_OPENED
-import com.harman.vehicleconnects.helper.AppConstants.PLEASE_WAIT
-import com.harman.vehicleconnects.helper.AppConstants.STARTED
-import com.harman.vehicleconnects.helper.AppConstants.STOPPED
-import com.harman.vehicleconnects.helper.AppConstants.UNLOCKED
-import com.harman.vehicleconnects.models.dataclass.RemoteOperationItem
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.LightBlue
-import com.harman.vehicleconnects.ui.theme.MildGray
+import org.eclipse.ecsp.helper.AppConstants.AJAR
+import org.eclipse.ecsp.helper.AppConstants.CLOSED
+import org.eclipse.ecsp.helper.AppConstants.LOCKED
+import org.eclipse.ecsp.helper.AppConstants.OFF
+import org.eclipse.ecsp.helper.AppConstants.ON
+import org.eclipse.ecsp.helper.AppConstants.OPENED
+import org.eclipse.ecsp.helper.AppConstants.PARTIAL_OPENED
+import org.eclipse.ecsp.helper.AppConstants.PLEASE_WAIT
+import org.eclipse.ecsp.helper.AppConstants.STARTED
+import org.eclipse.ecsp.helper.AppConstants.STOPPED
+import org.eclipse.ecsp.helper.AppConstants.UNLOCKED
+import org.eclipse.ecsp.models.dataclass.RemoteOperationItem
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.theme.MildGray
/**
* RemoteOperationGridViewCompose file contains RO grid view related compose functions
@@ -59,6 +60,7 @@ import com.harman.vehicleconnects.ui.theme.MildGray
*/
@Composable
fun RemoteOperationGridViewCompose(
+ isEnabled: Boolean,
itemList: ArrayList?,
onClickedItem: (RemoteOperationItem) -> Unit,
) {
@@ -66,6 +68,7 @@ fun RemoteOperationGridViewCompose(
columns = StaggeredGridCells.Fixed(3),
Modifier
.padding(10.dp)
+ .alpha(if (isEnabled) 1f else 0.5f)
.testTag("lazy_grid_view_tag"),
verticalItemSpacing = 10.dp,
horizontalArrangement = Arrangement.spacedBy(10.dp),
@@ -89,7 +92,7 @@ fun RemoteOperationGridViewCompose(
.wrapContentSize()
.testTag("grid_item_click_tag")
.clickable {
- if (item.statusText.lowercase() != PLEASE_WAIT.lowercase()) {
+ if (isEnabled && item.statusText.lowercase() != PLEASE_WAIT.lowercase()) {
onClickedItem(item)
}
},
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationMainScreen.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationMainScreen.kt
similarity index 83%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationMainScreen.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationMainScreen.kt
index 952f555..a73ca8e 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationMainScreen.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationMainScreen.kt
@@ -1,4 +1,5 @@
-package com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose
+package org.eclipse.ecsp.ui.view.composes.remoteoperationcompose
+
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -22,16 +23,16 @@ import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.MutableState
import androidx.lifecycle.LifecycleOwner
import com.google.gson.Gson
-import com.harman.androidvehicleconnectsdk.roservice.model.RemoteOperationState
-import com.harman.androidvehicleconnectsdk.userservice.model.UserProfile
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.fromJson
-import com.harman.vehicleconnects.helper.isInternetAvailable
-import com.harman.vehicleconnects.helper.toastError
-import com.harman.vehicleconnects.models.dataclass.RemoteOperationItem
-import com.harman.vehicleconnects.models.viewmodels.DashboardVM
-import com.harman.vehicleconnects.models.viewmodels.RemoteOperationVM
+import org.eclipse.ecsp.roservice.model.RemoteOperationState
+import org.eclipse.ecsp.userservice.model.UserProfile
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.fromJson
+import org.eclipse.ecsp.helper.isInternetAvailable
+import org.eclipse.ecsp.helper.toastError
+import org.eclipse.ecsp.models.dataclass.RemoteOperationItem
+import org.eclipse.ecsp.models.viewmodels.DashboardVM
+import org.eclipse.ecsp.models.viewmodels.RemoteOperationVM
/**
* RemoteOperationMainScreen contains RO main screen compose functions
@@ -59,7 +60,10 @@ fun Activity.RemoteOperationScreen(
Log.e("RO UPDATED", "Ro list updated")
}
- RemoteOperationGridViewCompose(lazyStaggeredGridList?.value) {
+ RemoteOperationGridViewCompose(
+ (selectedVehicleId?.value?.first != null && selectedVehicleId.value.first.isNotEmpty()),
+ lazyStaggeredGridList?.value
+ ) {
if (isInternetAvailable(activity)) {
if (selectedVehicleId?.value?.first != null && selectedVehicleId.value.first.isNotEmpty() &&
isProgressBarLoading?.value == false
@@ -81,11 +85,11 @@ fun Activity.RemoteOperationScreen(
AppConstants.ALARM -> {
ShowAlertDialog(
title =
- if (openDialog.value.second.lowercase() == AppConstants.OFF.lowercase()) {
- getString(R.string.alarm_confirm_activation_text)
- } else {
- getString(R.string.alarm_confirm_deactivation_text)
- },
+ if (openDialog.value.second.lowercase() == AppConstants.OFF.lowercase()) {
+ getString(R.string.alarm_confirm_activation_text)
+ } else {
+ getString(R.string.alarm_confirm_deactivation_text)
+ },
onDismiss = {
closeAlertDialog(openDialog)
},
@@ -120,11 +124,11 @@ fun Activity.RemoteOperationScreen(
AppConstants.DOOR -> {
ShowAlertDialog(
title =
- if (openDialog.value.second.lowercase() == AppConstants.LOCKED.lowercase()) {
- getString(R.string.door_unlock_confirm_text)
- } else {
- getString(R.string.door_lock_confirm_text)
- },
+ if (openDialog.value.second.lowercase() == AppConstants.LOCKED.lowercase()) {
+ getString(R.string.door_unlock_confirm_text)
+ } else {
+ getString(R.string.door_lock_confirm_text)
+ },
onDismiss = {
closeAlertDialog(openDialog)
},
@@ -159,15 +163,15 @@ fun Activity.RemoteOperationScreen(
AppConstants.ENGINE -> {
ShowAlertDialog(
title =
- if (openDialog.value.second.lowercase() ==
- AppConstants.STOPPED.lowercase()
- ) {
- getString(
- R.string.engin_start_confirm_text,
- )
- } else {
- getString(R.string.engin_stop_confirm_text)
- },
+ if (openDialog.value.second.lowercase() ==
+ AppConstants.STOPPED.lowercase()
+ ) {
+ getString(
+ R.string.engin_start_confirm_text,
+ )
+ } else {
+ getString(R.string.engin_stop_confirm_text)
+ },
onDismiss = {
closeAlertDialog(openDialog)
},
@@ -202,13 +206,13 @@ fun Activity.RemoteOperationScreen(
AppConstants.TRUNK -> {
ShowAlertDialog(
title =
- if (openDialog.value.second.lowercase() == AppConstants.LOCKED.lowercase()) {
- getString(
- R.string.trunk_opening_text,
- )
- } else {
- getString(R.string.trunk_closing_text)
- },
+ if (openDialog.value.second.lowercase() == AppConstants.LOCKED.lowercase()) {
+ getString(
+ R.string.trunk_opening_text,
+ )
+ } else {
+ getString(R.string.trunk_closing_text)
+ },
onDismiss = {
closeAlertDialog(openDialog)
},
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationPopUpCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationPopUpCompose.kt
similarity index 96%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationPopUpCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationPopUpCompose.kt
index 77be009..ad75b69 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/RemoteOperationPopUpCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/RemoteOperationPopUpCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose
+package org.eclipse.ecsp.ui.view.composes.remoteoperationcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -42,9 +42,9 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
-import com.harman.vehicleconnects.ui.theme.DarkGray
-import com.harman.vehicleconnects.ui.theme.LightBlue
-import com.harman.vehicleconnects.ui.theme.White
+import org.eclipse.ecsp.ui.theme.DarkGray
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.theme.White
/**
* RemoteOperationPopUpCompose contains RO pop compose functions
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/WindowAndLightStateOptionCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/WindowAndLightStateOptionCompose.kt
similarity index 95%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/WindowAndLightStateOptionCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/WindowAndLightStateOptionCompose.kt
index 4bda8d3..a7cba69 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/remoteoperationcompose/WindowAndLightStateOptionCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/remoteoperationcompose/WindowAndLightStateOptionCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose
+package org.eclipse.ecsp.ui.view.composes.remoteoperationcompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -34,11 +34,11 @@ import androidx.compose.ui.platform.testTag
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.helper.AppConstants
-import com.harman.vehicleconnects.helper.AppConstants.PARTIAL_OPENED
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.LightBlue
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.helper.AppConstants
+import org.eclipse.ecsp.helper.AppConstants.PARTIAL_OPENED
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.LightBlue
/**
* WindowsAndLightStateOptionCompose contains RO's Windows and Light state related compose functions
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/vehicleprofilecompose/VehicleNameEditCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/vehicleprofilecompose/VehicleNameEditCompose.kt
similarity index 90%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/vehicleprofilecompose/VehicleNameEditCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/vehicleprofilecompose/VehicleNameEditCompose.kt
index 25234d4..1a5a027 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/vehicleprofilecompose/VehicleNameEditCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/vehicleprofilecompose/VehicleNameEditCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.vehicleprofilecompose
+package org.eclipse.ecsp.ui.view.composes.vehicleprofilecompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -28,7 +28,6 @@ import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.ButtonDefaults
-import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.material3.TextField
@@ -47,15 +46,15 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.models.viewmodels.VehicleProfileVM
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.LightBlue
-import com.harman.vehicleconnects.ui.theme.LightGray
-import com.harman.vehicleconnects.ui.theme.MildGray
-import com.harman.vehicleconnects.ui.theme.White
-import com.harman.vehicleconnects.ui.view.composes.TextFieldState
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.models.viewmodels.VehicleProfileVM
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.LightBlue
+import org.eclipse.ecsp.ui.theme.LightGray
+import org.eclipse.ecsp.ui.theme.MildGray
+import org.eclipse.ecsp.ui.theme.White
+import org.eclipse.ecsp.ui.view.composes.TextFieldState
/**
* VehicleNameEditCompose contains Vehicle profile editing screen related compose functions
diff --git a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/vehicleprofilecompose/VehicleProfileCompose.kt b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/vehicleprofilecompose/VehicleProfileCompose.kt
similarity index 94%
rename from app/src/main/java/com/harman/vehicleconnects/ui/view/composes/vehicleprofilecompose/VehicleProfileCompose.kt
rename to app/src/main/java/org/eclipse/ecsp/ui/view/composes/vehicleprofilecompose/VehicleProfileCompose.kt
index a670727..21f569f 100644
--- a/app/src/main/java/com/harman/vehicleconnects/ui/view/composes/vehicleprofilecompose/VehicleProfileCompose.kt
+++ b/app/src/main/java/org/eclipse/ecsp/ui/view/composes/vehicleprofilecompose/VehicleProfileCompose.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects.ui.view.composes.vehicleprofilecompose
+package org.eclipse.ecsp.ui.view.composes.vehicleprofilecompose
/********************************************************************************
* Copyright (c) 2023-24 Harman International
*
@@ -37,17 +37,17 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.navigation.NavHostController
-import com.harman.vehicleconnects.R
-import com.harman.vehicleconnects.helper.AppConstants.ASSOCIATED
-import com.harman.vehicleconnects.helper.AppConstants.ASSOCIATION_INITIATED
-import com.harman.vehicleconnects.models.dataclass.VehicleProfileModel
-import com.harman.vehicleconnects.models.viewmodels.VehicleProfileVM
-import com.harman.vehicleconnects.ui.theme.Black
-import com.harman.vehicleconnects.ui.theme.DarkGray
-import com.harman.vehicleconnects.ui.theme.LightGray
-import com.harman.vehicleconnects.ui.theme.MildWhite
-import com.harman.vehicleconnects.ui.theme.White
-import com.harman.vehicleconnects.ui.view.composes.remoteoperationcompose.ShowAlertDialog
+import org.eclipse.ecsp.R
+import org.eclipse.ecsp.helper.AppConstants.ASSOCIATED
+import org.eclipse.ecsp.helper.AppConstants.ASSOCIATION_INITIATED
+import org.eclipse.ecsp.models.dataclass.VehicleProfileModel
+import org.eclipse.ecsp.models.viewmodels.VehicleProfileVM
+import org.eclipse.ecsp.ui.theme.Black
+import org.eclipse.ecsp.ui.theme.DarkGray
+import org.eclipse.ecsp.ui.theme.LightGray
+import org.eclipse.ecsp.ui.theme.MildWhite
+import org.eclipse.ecsp.ui.theme.White
+import org.eclipse.ecsp.ui.view.composes.remoteoperationcompose.ShowAlertDialog
/**
* VehicleProfileCompose contains vehicle profile screen related compose functions
@@ -329,7 +329,7 @@ fun Activity.VehicleProfileMainCompose(
.fillMaxWidth()
.padding(top = 15.dp, start = 20.dp, end = 20.dp)
.height(20.dp),
- text = "IMEI",
+ text = "Serial Number",
color = Black,
fontSize = 17.sp,
)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e8983f8..ffa5db0 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -6,8 +6,8 @@
HELP ME FIND OBDII PORT IN MY VEHICLE
Next
Add Device
- Enter IMEI
- The IMEI number can be found on the back side of your device, or on the card included inside the packaging box.
+ Enter Serial Number
+ The Serial number can be found on the back side of your device, or on the card included inside the packaging box.
SIGN IN
SIGN UP
Remote Control
@@ -28,4 +28,8 @@
Save
Remove Vehicle
Remove all data received from the vehicle
+ Change Password
+ Confirm to trigger change password request
+ Successfully triggered password change request, you will get link on your email to change the password
+ Failed to trigger password change request
\ No newline at end of file
diff --git a/app/src/test/java/com/harman/vehicleconnects/ExampleUnitTest.kt b/app/src/test/java/org/eclipse/ecsp/ExampleUnitTest.kt
similarity index 90%
rename from app/src/test/java/com/harman/vehicleconnects/ExampleUnitTest.kt
rename to app/src/test/java/org/eclipse/ecsp/ExampleUnitTest.kt
index 86d8b7c..8b2ef0a 100644
--- a/app/src/test/java/com/harman/vehicleconnects/ExampleUnitTest.kt
+++ b/app/src/test/java/org/eclipse/ecsp/ExampleUnitTest.kt
@@ -1,4 +1,4 @@
-package com.harman.vehicleconnects
+package org.eclipse.ecsp
import org.junit.Assert.assertEquals
import org.junit.Test
diff --git a/build.gradle.kts b/build.gradle.kts
index 2ffb45b..96a8bda 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -20,7 +20,7 @@ buildscript {
}
}
-group = "com.harman.androidvehicleconnectsdk"
+group = "org.eclipse.ecsp"
version = 1.0
project.allprojects {
tasks.cyclonedxBom {
diff --git a/eclipse-dash/dash.sh b/eclipse-dash/dash.sh
index a6797b8..289a46c 100644
--- a/eclipse-dash/dash.sh
+++ b/eclipse-dash/dash.sh
@@ -6,7 +6,7 @@ chmod +x 'gradlew'
echo 'Checking dependencies for SDK implemented sample app Module'
-'./gradlew' 'app:dependencies' | 'grep' '-Poh' "(?<=\-\-\- ).*" | 'grep' '-Pv' "\([c\*]\)" | 'grep' '-Pv' "\([n\*]\)" | 'perl' '-pe' 's/([\w\.\-]+):([\w\.\-]+):(?:[\w\.\-]+ -> )?([\w\.\-]+).*$/$1:$2:$3/gmi;t' | 'sort' -u | 'grep' '-v' 'project :androidVehicleConnectSDK' | 'grep' '-v' 'com.google.android.gms:play-services-basement:16.0.1' | 'grep' '-v' 'com.google.android.gms:play-services-basement:18.3.0' | 'grep' '-v' 'com.google.android.gms:play-services-tasks:16.0.1' | 'grep' '-v' 'com.google.android.gms:play-services-tasks:18.1.0' > 'AppDependencies'
+'./gradlew' 'app:dependencies' | 'grep' '-Poh' "(?<=\-\-\- ).*" | 'grep' '-Pv' "\([c\*]\)" | 'grep' '-Pv' "\([n\*]\)" | 'perl' '-pe' 's/([\w\.\-]+):([\w\.\-]+):(?:[\w\.\-]+ -> )?([\w\.\-]+).*$/$1:$2:$3/gmi;t' | 'sort' -u | 'grep' '-v' 'project :androidVehicleConnectSDK' | 'grep' '-v' 'com.google.android.gms:play-services-basement:16.0.1' | 'grep' '-v' 'com.google.android.gms:play-services-basement:18.3.0' | 'grep' '-v' 'com.google.android.gms:play-services-tasks:16.0.1' | 'grep' '-v' 'com.google.android.gms:play-services-tasks:18.1.0' | 'grep' '-v' 'com.google.android.datatransport:transport-api:3.0.0' | 'grep' '-v' 'com.google.android.gms:play-services-base:18.0.1' | 'grep' '-v' 'com.google.android.gms:play-services-basement:18.0.0' | 'grep' '-v' 'com.google.android.gms:play-services-cloud-messaging:17.2.0' | 'grep' '-v' 'com.google.android.gms:play-services-stats:17.0.2' | 'grep' '-v' 'com.google.android.gms:play-services-tasks:18.0.1' | 'grep' '-v' 'com.google.firebase:firebase-annotations:16.2.0' | 'grep' '-v' 'com.google.firebase:firebase-iid-interop:17.1.0' | 'grep' '-v' 'com.google.firebase:firebase-measurement-connector:19.0.0' > 'AppDependencies'
echo 'Tool checking for SDK dependencies'