From 0632069d85b66fb3b1e5f1f95b0ebfeb1ffd1a6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Pt=C3=A1=C4=8Dek?= Date: Tue, 25 Jul 2023 11:23:59 +0200 Subject: [PATCH] rename package name --- README.md | 2 +- client/app/build.gradle | 4 ++-- .../android/exporter/ExampleInstrumentedTest.kt | 4 ++-- .../exporter/compose/Configuration.kt | 4 ++-- .../exporter/compose/HomeActivity.kt | 4 ++-- .../exporter/compose/MainActivity.kt | 4 ++-- .../exporter/compose/PromViewModel.kt | 4 ++-- .../exporter/compose/SettingsActivity.kt | 2 +- .../android => }/exporter/ui/theme/Color.kt | 2 +- .../android => }/exporter/ui/theme/Shape.kt | 2 +- .../android => }/exporter/ui/theme/Theme.kt | 2 +- .../android => }/exporter/ui/theme/Type.kt | 2 +- .../exporter/worker/AndroidCustomExporter.kt | 2 +- .../exporter/worker/ExponentialBackoff.kt | 2 +- .../exporter/worker/MetricsEngine.kt | 2 +- .../android => }/exporter/worker/PromWorker.kt | 6 +++--- .../exporter/worker/PrometheusServer.kt | 2 +- .../exporter/worker/PushProxClient.kt | 2 +- .../exporter/worker/RemoteWriteSender.kt | 2 +- .../worker/RemoteWriteSenderDbStorage.kt | 2 +- .../worker/RemoteWriteSenderMemStorage.kt | 2 +- .../exporter/worker/RemoteWriteSenderStorage.kt | 2 +- .../exporter/worker/ScrapeRecorder.kt | 2 +- .../android => }/exporter/worker/Util.kt | 2 +- .../exporter/worker/LastTimeRingBufferTest.kt | 2 +- .../worker/RemoteWriteSenderStorageTest.kt | 2 +- icon.png | Bin 0 -> 23158 bytes 27 files changed, 34 insertions(+), 34 deletions(-) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/compose/Configuration.kt (96%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/compose/HomeActivity.kt (99%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/compose/MainActivity.kt (91%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/compose/PromViewModel.kt (98%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/compose/SettingsActivity.kt (96%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/ui/theme/Color.kt (67%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/ui/theme/Shape.kt (76%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/ui/theme/Theme.kt (92%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/ui/theme/Type.kt (89%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/AndroidCustomExporter.kt (92%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/ExponentialBackoff.kt (95%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/MetricsEngine.kt (96%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/PromWorker.kt (95%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/PrometheusServer.kt (97%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/PushProxClient.kt (98%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/RemoteWriteSender.kt (99%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/RemoteWriteSenderDbStorage.kt (97%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/RemoteWriteSenderMemStorage.kt (98%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/RemoteWriteSenderStorage.kt (98%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/ScrapeRecorder.kt (90%) rename client/app/src/main/java/com/birdthedeveloper/prometheus/android/{prometheus/android => }/exporter/worker/Util.kt (90%) create mode 100644 icon.png diff --git a/README.md b/README.md index f42f2fd..e098cf5 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ CTRL + SHIFT + ALT + L Client application is configurable via a configuration file. Place such file on your android device at a following path: ``` -data/user/0/com.birdthedeveloper.prometheus.android.prometheus.android.exporter/files/ +data/user/0/com.birdthedeveloper.prometheus.android.exporter/files/ ``` The name of such configuration file can be either `config.yaml` or `config.yml` diff --git a/client/app/build.gradle b/client/app/build.gradle index dfc5147..66fc8c3 100644 --- a/client/app/build.gradle +++ b/client/app/build.gradle @@ -11,11 +11,11 @@ apply plugin: 'com.google.protobuf' apply plugin: 'kotlin-android' android { - namespace 'com.birdthedeveloper.prometheus.android.prometheus.android.exporter' + namespace 'com.birdthedeveloper.prometheus.android.exporter' compileSdk 33 defaultConfig { - applicationId "com.birdthedeveloper.prometheus.android.prometheus.android.exporter" + applicationId "com.birdthedeveloper.prometheus.android.exporter" minSdk 26 targetSdk 33 versionCode 1 diff --git a/client/app/src/androidTest/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ExampleInstrumentedTest.kt b/client/app/src/androidTest/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ExampleInstrumentedTest.kt index fce0ee6..93b945d 100644 --- a/client/app/src/androidTest/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ExampleInstrumentedTest.kt +++ b/client/app/src/androidTest/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ExampleInstrumentedTest.kt @@ -1,4 +1,4 @@ -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter +package com.birdthedeveloper.prometheus.android.exporter import androidx.test.platform.app.InstrumentationRegistry import androidx.test.ext.junit.runners.AndroidJUnit4 @@ -20,7 +20,7 @@ class ExampleInstrumentedTest { // Context of the app under test. val appContext = InstrumentationRegistry.getInstrumentation().targetContext assertEquals( - "com.birdthedeveloper.prometheus.android.prometheus.android.exporter", + "com.birdthedeveloper.prometheus.android.exporter", appContext.packageName ) } diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/Configuration.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/Configuration.kt similarity index 96% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/Configuration.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/Configuration.kt index de8bf9e..4803881 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/Configuration.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/Configuration.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.compose +package com.birdthedeveloper.prometheus.android.exporter.compose import android.content.Context import android.util.Log @@ -102,7 +102,7 @@ data class PromConfiguration( } companion object { - // data/user/0/com.birdthedeveloper.prometheus.android.prometheus.android.exporter/files + // data/user/0/com.birdthedeveloper.prometheus.android.exporter/files private const val filename: String = "config.yaml" private const val alternativeFilename: String = "config.yml" fun configFileExists(context: Context): Boolean { diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/HomeActivity.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/HomeActivity.kt similarity index 99% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/HomeActivity.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/HomeActivity.kt index fc3cf06..f768157 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/HomeActivity.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/HomeActivity.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.compose +package com.birdthedeveloper.prometheus.android.exporter.compose import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column @@ -176,7 +176,7 @@ private fun StartStopButton( private fun TabPage( promViewModel: PromViewModel, ) { - val tabs = mapOf(0 to "Prom Server", 1 to "PushProx", 2 to "Remote write") + val tabs = mapOf(0 to "Prom Server", 1 to "PushProx", 2 to "Batch exporter") val uiState: PromUiState by promViewModel.uiState.collectAsState() Column { diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/MainActivity.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/MainActivity.kt similarity index 91% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/MainActivity.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/MainActivity.kt index 06f0cf6..0b4f900 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/MainActivity.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/MainActivity.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.compose +package com.birdthedeveloper.prometheus.android.exporter.compose import android.os.Bundle import androidx.activity.ComponentActivity @@ -15,7 +15,7 @@ import androidx.navigation.NavHostController import androidx.navigation.compose.NavHost import androidx.navigation.compose.composable import androidx.navigation.compose.rememberNavController -import com.birdthedeveloper.prometheus.android.prometheus.android.exporter.ui.theme.PrometheusAndroidExporterTheme +import com.birdthedeveloper.prometheus.android.exporter.ui.theme.PrometheusAndroidExporterTheme class MainActivity : ComponentActivity() { diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/PromViewModel.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/PromViewModel.kt similarity index 98% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/PromViewModel.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/PromViewModel.kt index 016bbec..9efd146 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/PromViewModel.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/PromViewModel.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.compose +package com.birdthedeveloper.prometheus.android.exporter.compose import android.content.Context import android.util.Log @@ -16,7 +16,7 @@ import androidx.work.OutOfQuotaPolicy import androidx.work.WorkInfo import androidx.work.WorkManager import androidx.work.WorkQuery -import com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker.PromWorker +import com.birdthedeveloper.prometheus.android.exporter.worker.PromWorker import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.asStateFlow diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/SettingsActivity.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/SettingsActivity.kt similarity index 96% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/SettingsActivity.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/SettingsActivity.kt index b78cac0..d3f7401 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/compose/SettingsActivity.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/compose/SettingsActivity.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.compose +package com.birdthedeveloper.prometheus.android.exporter.compose import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.fillMaxSize diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Color.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Color.kt similarity index 67% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Color.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Color.kt index ba0a58c..c0072f4 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Color.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Color.kt @@ -1,4 +1,4 @@ -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.ui.theme +package com.birdthedeveloper.prometheus.android.exporter.ui.theme import androidx.compose.ui.graphics.Color diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Shape.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Shape.kt similarity index 76% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Shape.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Shape.kt index 214968f..46c283c 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Shape.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Shape.kt @@ -1,4 +1,4 @@ -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.ui.theme +package com.birdthedeveloper.prometheus.android.exporter.ui.theme import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.Shapes diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Theme.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Theme.kt similarity index 92% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Theme.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Theme.kt index 48cd36b..2022cf1 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Theme.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Theme.kt @@ -1,4 +1,4 @@ -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.ui.theme +package com.birdthedeveloper.prometheus.android.exporter.ui.theme import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.material.MaterialTheme diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Type.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Type.kt similarity index 89% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Type.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Type.kt index 5544a57..9ef8076 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/ui/theme/Type.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/ui/theme/Type.kt @@ -1,4 +1,4 @@ -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.ui.theme +package com.birdthedeveloper.prometheus.android.exporter.ui.theme import androidx.compose.material.Typography import androidx.compose.ui.text.TextStyle diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/AndroidCustomExporter.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/AndroidCustomExporter.kt similarity index 92% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/AndroidCustomExporter.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/AndroidCustomExporter.kt index 7e8dee8..d43d1dd 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/AndroidCustomExporter.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/AndroidCustomExporter.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.util.Log import io.prometheus.client.Collector diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/ExponentialBackoff.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/ExponentialBackoff.kt similarity index 95% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/ExponentialBackoff.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/ExponentialBackoff.kt index 2195092..58e3989 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/ExponentialBackoff.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/ExponentialBackoff.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.util.Log import kotlinx.coroutines.CancellationException diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/MetricsEngine.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/MetricsEngine.kt similarity index 96% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/MetricsEngine.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/MetricsEngine.kt index b11afdd..1450157 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/MetricsEngine.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/MetricsEngine.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.content.Context import android.content.Intent diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PromWorker.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PromWorker.kt similarity index 95% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PromWorker.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PromWorker.kt index 809df17..a398d74 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PromWorker.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PromWorker.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.app.NotificationManager import android.content.Context @@ -10,8 +10,8 @@ import androidx.work.CoroutineWorker import androidx.work.ForegroundInfo import androidx.work.WorkManager import androidx.work.WorkerParameters -import com.birdthedeveloper.prometheus.android.prometheus.android.exporter.R -import com.birdthedeveloper.prometheus.android.prometheus.android.exporter.compose.PromConfiguration +import com.birdthedeveloper.prometheus.android.exporter.R +import com.birdthedeveloper.prometheus.android.exporter.compose.PromConfiguration import io.prometheus.client.CollectorRegistry import io.prometheus.client.exemplars.ExemplarConfig import io.prometheus.client.exporter.common.TextFormat diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PrometheusServer.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PrometheusServer.kt similarity index 97% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PrometheusServer.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PrometheusServer.kt index 14f8cfe..d57c442 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PrometheusServer.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PrometheusServer.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.util.Log import io.ktor.http.HttpStatusCode diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PushProxClient.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PushProxClient.kt similarity index 98% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PushProxClient.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PushProxClient.kt index 90b9a41..856a9b2 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/PushProxClient.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/PushProxClient.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.content.Context import android.util.Log diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSender.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSender.kt similarity index 99% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSender.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSender.kt index a4383e1..e17ca35 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSender.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSender.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.content.Context import android.net.ConnectivityManager diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderDbStorage.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderDbStorage.kt similarity index 97% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderDbStorage.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderDbStorage.kt index 4b51162..5623e18 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderDbStorage.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderDbStorage.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker //import android.content.Context //import androidx.annotation.EmptySuper diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderMemStorage.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderMemStorage.kt similarity index 98% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderMemStorage.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderMemStorage.kt index fb8f57b..a1f49e7 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderMemStorage.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderMemStorage.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.util.Log import remote.write.RemoteWrite diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderStorage.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderStorage.kt similarity index 98% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderStorage.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderStorage.kt index dec8eb6..6039c8b 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderStorage.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/RemoteWriteSenderStorage.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.util.Log import io.prometheus.client.Collector.MetricFamilySamples diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/ScrapeRecorder.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/ScrapeRecorder.kt similarity index 90% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/ScrapeRecorder.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/ScrapeRecorder.kt index f64f869..d05b6f2 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/ScrapeRecorder.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/ScrapeRecorder.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker private const val TAG = "SCRAPE_RECORDER" diff --git a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/Util.kt b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/Util.kt similarity index 90% rename from client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/Util.kt rename to client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/Util.kt index 8df3241..0c20c0a 100644 --- a/client/app/src/main/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/Util.kt +++ b/client/app/src/main/java/com/birdthedeveloper/prometheus/android/exporter/worker/Util.kt @@ -1,6 +1,6 @@ // Author: Martin Ptacek -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import android.content.Context import android.net.ConnectivityManager diff --git a/client/app/src/test/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/LastTimeRingBufferTest.kt b/client/app/src/test/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/LastTimeRingBufferTest.kt index e439d3d..5b20b2b 100644 --- a/client/app/src/test/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/LastTimeRingBufferTest.kt +++ b/client/app/src/test/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/LastTimeRingBufferTest.kt @@ -1,4 +1,4 @@ -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import org.junit.Assert import org.junit.Assert.* diff --git a/client/app/src/test/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderStorageTest.kt b/client/app/src/test/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderStorageTest.kt index 5209979..6949714 100644 --- a/client/app/src/test/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderStorageTest.kt +++ b/client/app/src/test/java/com/birdthedeveloper/prometheus/android/prometheus/android/exporter/worker/RemoteWriteSenderStorageTest.kt @@ -1,4 +1,4 @@ -package com.birdthedeveloper.prometheus.android.prometheus.android.exporter.worker +package com.birdthedeveloper.prometheus.android.exporter.worker import org.junit.Assert.* import org.junit.Test diff --git a/icon.png b/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..6457689c77901d2956327db58bfed8308da3fb6b GIT binary patch literal 23158 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 literal 0 HcmV?d00001