Skip to content

Update to RxJava 3 #29

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,15 @@ android {

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation project(':rxbilling')
implementation project(':rxbilling3')

implementation kotlinDependencies.kotlinStdLib
implementation dataDependencies.billingClient
implementation presentationDependencies.lifecycleExtensions
kapt presentationDependencies.lifecycleCompiler
implementation developmentDependencies.timber
implementation dataDependencies.rxJava
implementation dataDependencies.rxAndroid
implementation dataDependencies.rxJava3
implementation dataDependencies.rxAndroid3
implementation presentationDependencies.appCompat

testImplementation testDependencies.jUnit
Expand Down
10 changes: 5 additions & 5 deletions app/src/main/java/com/gen/rxbilling/sample/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ package com.gen.rxbilling.sample
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.android.billingclient.api.*
import com.gen.rxbilling.client.RxBilling
import com.gen.rxbilling.client.RxBillingImpl
import com.gen.rxbilling.connection.BillingClientFactory
import com.gen.rxbilling.lifecycle.BillingConnectionManager
import io.reactivex.disposables.CompositeDisposable
import com.gen.rxbilling3.client.RxBilling
import com.gen.rxbilling3.client.RxBillingImpl
import com.gen.rxbilling3.connection.BillingClientFactory
import com.gen.rxbilling3.lifecycle.BillingConnectionManager
import io.reactivex.rxjava3.disposables.CompositeDisposable
import kotlinx.android.synthetic.main.activity_main.*
import timber.log.Timber

Expand Down
10 changes: 5 additions & 5 deletions dependencies.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ ext {
targetSdkVer = 28

versionCode = 1
versionName = '3.0.0'
versionName = '4.0.0'

// Kotlin
kotlinVer = '1.4.10'
Expand All @@ -23,8 +23,8 @@ ext {
xExtVer = '1.1.2'

// Reactive Extensions
rxJava2Ver = '2.2.20'
rxAndroid2Ver = '2.1.1'
rxJava3Ver = '3.1.0'
rxAndroid3Ver = '3.0.0'

// Billing Client
billingClientVer = '3.0.1'
Expand Down Expand Up @@ -60,8 +60,8 @@ ext {
]

dataDependencies = [
rxJava : "io.reactivex.rxjava2:rxjava:$rxJava2Ver",
rxAndroid : "io.reactivex.rxjava2:rxandroid:$rxAndroid2Ver",
rxJava3 : "io.reactivex.rxjava3:rxjava:$rxJava3Ver",
rxAndroid3 : "io.reactivex.rxjava3:rxandroid:$rxAndroid3Ver",
billingClient: "com.android.billingclient:billing:$billingClientVer"
]

Expand Down
1 change: 0 additions & 1 deletion rxbilling/.gitignore

This file was deleted.

2 changes: 0 additions & 2 deletions rxbilling/src/main/AndroidManifest.xml

This file was deleted.

This file was deleted.

3 changes: 0 additions & 3 deletions rxbilling/src/main/res/values/strings.xml

This file was deleted.

1 change: 1 addition & 0 deletions rxbilling3/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/build
14 changes: 4 additions & 10 deletions rxbilling/build.gradle → rxbilling3/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,12 @@ apply plugin: 'org.jetbrains.dokka-android'
android {

defaultConfig {
versionName "3.0.0"
versionName "4.0.0"
minSdkVersion minSdkVer
targetSdkVersion targetSdkVer
compileSdkVersion compileSdkVer

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

buildTypes {
Expand All @@ -36,11 +35,10 @@ dokka {
}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])

implementation developmentDependencies.timber
implementation dataDependencies.rxJava
implementation dataDependencies.rxAndroid
implementation dataDependencies.rxJava3
implementation dataDependencies.rxAndroid3
implementation dataDependencies.billingClient
implementation kotlinDependencies.kotlinStdLib

Expand All @@ -53,7 +51,6 @@ dependencies {
testImplementation testDependencies.jUnit
testImplementation testDependencies.mockito
testImplementation testDependencies.mockitoKotlin

}

task sourcesJar(type: Jar) {
Expand All @@ -79,6 +76,3 @@ artifacts {
archives javadocJar
archives sourcesJar
}

Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
File renamed without changes.
3 changes: 3 additions & 0 deletions rxbilling3/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.gen.rxbilling3" />
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.gen.rxbilling.client
package com.gen.rxbilling3.client

import com.android.billingclient.api.Purchase

Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
package com.gen.rxbilling.client
package com.gen.rxbilling3.client

import android.app.Activity
import com.android.billingclient.api.*
import com.android.billingclient.api.BillingClient.FeatureType
import com.gen.rxbilling.connection.BillingClientFactory
import com.gen.rxbilling.exception.BillingException
import com.gen.rxbilling.lifecycle.Connectable
import io.reactivex.BackpressureStrategy
import io.reactivex.Completable
import io.reactivex.Flowable
import io.reactivex.Single
import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.subjects.PublishSubject
import com.gen.rxbilling3.connection.BillingClientFactory
import com.gen.rxbilling3.exception.BillingException
import com.gen.rxbilling3.lifecycle.Connectable
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.core.BackpressureStrategy
import io.reactivex.rxjava3.core.Completable
import io.reactivex.rxjava3.core.Flowable
import io.reactivex.rxjava3.core.Single
import io.reactivex.rxjava3.subjects.PublishSubject

interface RxBilling : Connectable<BillingClient> {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
package com.gen.rxbilling.connection
package com.gen.rxbilling3.connection

import android.content.Context
import com.android.billingclient.api.BillingClient
import com.android.billingclient.api.BillingClientStateListener
import com.android.billingclient.api.BillingResult
import com.android.billingclient.api.PurchasesUpdatedListener
import com.gen.rxbilling.exception.BillingException
import io.reactivex.BackpressureStrategy
import io.reactivex.Flowable
import io.reactivex.FlowableTransformer
import com.gen.rxbilling3.exception.BillingException
import io.reactivex.rxjava3.core.BackpressureStrategy
import io.reactivex.rxjava3.core.Flowable
import io.reactivex.rxjava3.core.FlowableTransformer
import timber.log.Timber

class BillingClientFactory(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.gen.rxbilling.connection
package com.gen.rxbilling3.connection

import io.reactivex.Flowable
import io.reactivex.FlowableTransformer
import io.reactivex.rxjava3.core.Flowable
import io.reactivex.rxjava3.core.FlowableTransformer
import org.reactivestreams.Publisher

class RepeatConnectionTransformer<T> : FlowableTransformer<T, T> {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.gen.rxbilling.exception
package com.gen.rxbilling3.exception

import com.android.billingclient.api.BillingClient
import com.android.billingclient.api.BillingResult
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package com.gen.rxbilling.lifecycle
package com.gen.rxbilling3.lifecycle

import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleObserver
import androidx.lifecycle.OnLifecycleEvent
import io.reactivex.disposables.Disposable
import io.reactivex.rxjava3.disposables.Disposable
import timber.log.Timber

class BillingConnectionManager<T>(
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.gen.rxbilling3.lifecycle

import io.reactivex.rxjava3.core.Flowable

interface Connectable<T> {

fun connect() : Flowable<T>
}
3 changes: 3 additions & 0 deletions rxbilling3/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<resources>
<string name="app_name">Rx Billing3</string>
</resources>
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package com.gen.rxbilling
package com.gen.rxbilling3

import com.gen.rxbilling.connection.RepeatConnectionTransformer
import io.reactivex.BackpressureStrategy
import io.reactivex.Flowable
import io.reactivex.schedulers.TestScheduler
import com.gen.rxbilling3.connection.RepeatConnectionTransformer
import io.reactivex.rxjava3.core.BackpressureStrategy
import io.reactivex.rxjava3.core.Flowable
import io.reactivex.rxjava3.schedulers.TestScheduler
import org.junit.Assert.assertEquals
import org.junit.Assert.assertTrue
import org.junit.Test
Expand Down Expand Up @@ -82,7 +82,7 @@ class RepeatConnectionTransformerTest {
}, BackpressureStrategy.LATEST))
.compose(RepeatConnectionTransformer<Int>())
val subscriber = flowable.test()
subscriber.dispose()
subscriber.cancel()
subscriber.assertValueSequence(listOf(1))
subscriber.assertNotComplete()
assertTrue(cancelCalled)
Expand Down
3 changes: 2 additions & 1 deletion settings.gradle
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
include ':app', ':rxbilling'
include ':app'
include ':rxbilling3'