11package co.kyash.vtl.example
22
3- import android.databinding.DataBindingUtil
43import android.os.Bundle
5- import android.support.v7.app.AppCompatActivity
64import android.util.Log
75import android.view.View
86import android.widget.Toast
7+ import androidx.appcompat.app.AppCompatActivity
8+ import androidx.databinding.DataBindingUtil
99import co.kyash.vtl.ValidatableView
1010import co.kyash.vtl.example.api.MaterialDesignColorsApi
1111import co.kyash.vtl.example.databinding.ActivityMainBinding
@@ -42,12 +42,12 @@ class MainActivity : AppCompatActivity() {
4242 private val compositeDisposable = CompositeDisposable ()
4343
4444 private val api = Retrofit .Builder ()
45- .baseUrl(" https://raw.githubusercontent.com" )
46- .addConverterFactory(MoshiConverterFactory .create(Moshi .Builder ().build()))
47- .addCallAdapterFactory(RxJava2CallAdapterFactory .createAsync())
48- .client(OkHttpClient .Builder ().addNetworkInterceptor(StethoInterceptor ()).build())
49- .build()
50- .create(MaterialDesignColorsApi ::class .java)
45+ .baseUrl(" https://raw.githubusercontent.com" )
46+ .addConverterFactory(MoshiConverterFactory .create(Moshi .Builder ().build()))
47+ .addCallAdapterFactory(RxJava2CallAdapterFactory .createAsync())
48+ .client(OkHttpClient .Builder ().addNetworkInterceptor(StethoInterceptor ()).build())
49+ .build()
50+ .create(MaterialDesignColorsApi ::class .java)
5151
5252 override fun onCreate (savedInstanceState : Bundle ? ) {
5353 super .onCreate(savedInstanceState)
@@ -65,33 +65,33 @@ class MainActivity : AppCompatActivity() {
6565 private fun initValidators () {
6666 // Example 1
6767 validatableViewsForTriggerTextChanged.addAll(arrayOf(
68- binding.firstName.register(RequiredValidator (getString(R .string.validation_error_required))),
69- binding.lastName.register(RequiredValidator (getString(R .string.validation_error_required))),
70- binding.email.register(EmailValidator (getString(R .string.validation_error_email))),
71- binding.numberOnly.register(NumberOnlyValidator (getString(R .string.validation_error_number_only))),
72- binding.asciiOnly.register(AsciiOnlyValidator (getString(R .string.validation_error_ascii_only)))
68+ binding.firstName.register(RequiredValidator (getString(R .string.validation_error_required))),
69+ binding.lastName.register(RequiredValidator (getString(R .string.validation_error_required))),
70+ binding.email.register(EmailValidator (getString(R .string.validation_error_email))),
71+ binding.numberOnly.register(NumberOnlyValidator (getString(R .string.validation_error_number_only))),
72+ binding.asciiOnly.register(AsciiOnlyValidator (getString(R .string.validation_error_ascii_only)))
7373 ))
7474
7575 // Example 2
7676 validatableViewsForTriggerFocusChanged.addAll(arrayOf(
77- binding.email2.register(EmailValidator (getString(R .string.validation_error_email)))
77+ binding.email2.register(EmailValidator (getString(R .string.validation_error_email)))
7878 ))
7979
8080 // Example 3
8181 binding.colors.register(MaterialDesignColorsValidator (api, this ))
8282
8383 // Example 4
8484 validatableViewsForButtonEnable.addAll(arrayOf(
85- binding.firstName2.register(RequiredValidator (getString(R .string.validation_error_required))),
86- binding.lastName2.register(RequiredValidator (getString(R .string.validation_error_required)))
85+ binding.firstName2.register(RequiredValidator (getString(R .string.validation_error_required))),
86+ binding.lastName2.register(RequiredValidator (getString(R .string.validation_error_required)))
8787 ))
8888 val validations: List <Flowable <Any >> = validatableViewsForButtonEnable.flatMap { it.validationFlowables }
8989 Flowable .zip(validations) { Any () }
90- .subscribeOn(Schedulers .computation())
91- .observeOn(AndroidSchedulers .mainThread())
92- .doOnError({ binding.submit3.isEnabled = false })
93- .retry() // non-terminated stream
94- .subscribe({ binding.submit3.isEnabled = true }, { })
90+ .subscribeOn(Schedulers .computation())
91+ .observeOn(AndroidSchedulers .mainThread())
92+ .doOnError({ binding.submit3.isEnabled = false })
93+ .retry() // non-terminated stream
94+ .subscribe({ binding.submit3.isEnabled = true }, { })
9595 }
9696
9797
@@ -113,16 +113,16 @@ class MainActivity : AppCompatActivity() {
113113 compositeDisposable.clear()
114114
115115 compositeDisposable.add(
116- Completable .mergeDelayError(validations)
117- .subscribeOn(Schedulers .computation())
118- .observeOn(AndroidSchedulers .mainThread())
119- .subscribe({
120- Log .d(" MainActivity" , " Validation cleared." )
121- Toast .makeText(this , R .string.validation_success, Toast .LENGTH_SHORT ).show()
122- }, { throwable ->
123- Log .e(" MainActivity" , " Validation error occurred." , throwable)
124- Toast .makeText(this , R .string.validation_error_occurred, Toast .LENGTH_SHORT ).show()
125- })
116+ Completable .mergeDelayError(validations)
117+ .subscribeOn(Schedulers .computation())
118+ .observeOn(AndroidSchedulers .mainThread())
119+ .subscribe({
120+ Log .d(" MainActivity" , " Validation cleared." )
121+ Toast .makeText(this , R .string.validation_success, Toast .LENGTH_SHORT ).show()
122+ }, { throwable ->
123+ Log .e(" MainActivity" , " Validation error occurred." , throwable)
124+ Toast .makeText(this , R .string.validation_error_occurred, Toast .LENGTH_SHORT ).show()
125+ })
126126 )
127127 }
128128
0 commit comments