From 5ed617e5ec85cc4e3a514688ea7e848037cff277 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Da=C5=88a?= Date: Mon, 30 Mar 2020 13:26:11 +0200 Subject: [PATCH 1/2] change Gradle settings for OKsystem --- build.gradle | 11 +++++++---- gradle.properties | 5 ++++- library/build.gradle | 11 +++++++---- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/build.gradle b/build.gradle index 51a9613..9ae79f1 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,6 @@ buildscript { repositories { + mavenCentral() jcenter() google() } @@ -10,10 +11,12 @@ buildscript { allprojects { repositories { - jcenter() + mavenLocal() + maven { + url "http://mavenrepo.oksystem.local/repo/default" + } google() + mavenCentral() + jcenter() } - - group = 'eu.inloop' - version = VERSION_NAME } diff --git a/gradle.properties b/gradle.properties index f9ed904..ec7848e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,4 +19,7 @@ android.enableJetifier=true android.useAndroidX=true -VERSION_NAME=1.4.0 +GROUP=cz.oksystem.android +VERSION_CODE=1 +VERSION_NAME=1.4.1 +MAVEN_REPO=mavenrepo.oksystem.local/repo/oksystem diff --git a/library/build.gradle b/library/build.gradle index 87a4ceb..cfbf03e 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -7,8 +7,8 @@ android { defaultConfig { minSdkVersion 15 targetSdkVersion 28 - versionCode 1 - versionName VERSION_NAME + versionCode Integer.parseInt(project.VERSION_CODE) + versionName project.VERSION_NAME consumerProguardFiles 'proguard-rules.pro' testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } @@ -54,9 +54,12 @@ artifacts { uploadArchives { repositories.mavenDeployer { - pom.groupId = 'eu.inloop' + pom.groupId = GROUP pom.artifactId = 'androidviewmodel' pom.version = VERSION_NAME - repository(url: "file://${System.env.HOME}/.m2/repository") + repository url: 'file://' + new File(System.getProperty('user.home'), '.m2/repository').absolutePath + repository url: "http://" + MAVEN_REPO + "-${project.version.endsWith('-SNAPSHOT') ? 'snapshots' : 'releases' }" } } + +task install(dependsOn: uploadArchives) From a8646764c7a5e2a97351471b9261106fa3889433 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Da=C5=88a?= Date: Mon, 30 Mar 2020 14:03:42 +0200 Subject: [PATCH 2/2] Fix Null pointer exception in ProxyViewHelper - Expected to unbox a 'boolean' primitive type but was returned null - update InvocationHandler for primitive types --- .../eu/inloop/viewmodel/ProxyViewHelper.java | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/library/src/main/java/eu/inloop/viewmodel/ProxyViewHelper.java b/library/src/main/java/eu/inloop/viewmodel/ProxyViewHelper.java index 94d8ec4..b928061 100644 --- a/library/src/main/java/eu/inloop/viewmodel/ProxyViewHelper.java +++ b/library/src/main/java/eu/inloop/viewmodel/ProxyViewHelper.java @@ -47,6 +47,37 @@ public static Class getGenericType(@NonNull Class in, @NonNull Class wh return null; } - private static final InvocationHandler sInvocationHandler = (proxy, method, args) -> null; + private static final InvocationHandler sInvocationHandler = (proxy, method, args) -> { + if (String.class == method.getReturnType()) { + return ""; + } + else if (Integer.class == method.getReturnType()) { + return 0; + } + else if (int.class == method.getReturnType()) { + return 0; + } + else if (Float.class == method.getReturnType()) { + return 0f; + } + else if (float.class == method.getReturnType()) { + return 0f; + } + else if (Double.class == method.getReturnType()) { + return (double) 0; + } + else if (double.class == method.getReturnType()) { + return (double) 0; + } + else if (Boolean.class == method.getReturnType()) { + return Boolean.FALSE; + } + else if (boolean.class == method.getReturnType()) { + return false; + } + else { + return null; + } + }; }