Repository: incubator-milagro-mfa-sdk-android
Updated Branches:
  refs/heads/master 379620e46 -> 3b4f66eac


Implement wrapper for GetServiceDetails

See MAASMOB-429


Project: 
http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/commit/c2e67721
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/tree/c2e67721
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/diff/c2e67721

Branch: refs/heads/master
Commit: c2e6772119887b344430ed0bc97910dd8176b2fc
Parents: 1af0e81
Author: Vassil Angelov <[email protected]>
Authored: Tue Dec 13 17:15:55 2016 +0200
Committer: Vassil Angelov <[email protected]>
Committed: Tue Dec 13 17:18:26 2016 +0200

----------------------------------------------------------------------
 build.gradle                                    |  2 +-
 gradle.properties                               |  2 +-
 mpin-sdk-core                                   |  2 +-
 .../main/java/com/miracl/mpinsdk/MPinSDK.java   |  7 +++++
 .../miracl/mpinsdk/model/ServiceDetails.java    | 27 ++++++++++++++++++++
 mpinsdk/src/main/jni/JNIMPinSDK.cpp             | 24 +++++++++++++++++
 6 files changed, 61 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/blob/c2e67721/build.gradle
----------------------------------------------------------------------
diff --git a/build.gradle b/build.gradle
index aff4f41..74b2ab0 100644
--- a/build.gradle
+++ b/build.gradle
@@ -5,7 +5,7 @@ buildscript {
         jcenter()
     }
     dependencies {
-        classpath 'com.android.tools.build:gradle:2.1.2'
+        classpath 'com.android.tools.build:gradle:2.2.3'
 
         // NOTE: Do not place your application dependencies here; they belong
         // in the individual module build.gradle files

http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/blob/c2e67721/gradle.properties
----------------------------------------------------------------------
diff --git a/gradle.properties b/gradle.properties
index 7a3edec..887bdac 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -16,7 +16,7 @@
 # This option should only be used with decoupled projects. More details, visit
 # 
http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
 # org.gradle.parallel=true
-VERSION_NAME=1.4-SNAPSHOT
+VERSION_NAME=1.5-SNAPSHOT
 GROUP=com.miracl
 RELEASE_REPOSITORY_URL=http://10.10.23.15:8081/content/repositories/mpinsdk/
 
SNAPSHOT_REPOSITORY_URL=http://10.10.23.15:8081/content/repositories/mpinsdk-snapshot/

http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/blob/c2e67721/mpin-sdk-core
----------------------------------------------------------------------
diff --git a/mpin-sdk-core b/mpin-sdk-core
index 16308c7..807c293 160000
--- a/mpin-sdk-core
+++ b/mpin-sdk-core
@@ -1 +1 @@
-Subproject commit 16308c7491f524e711fa87dbafc95724a4df6189
+Subproject commit 807c2938c465a85b91b642cfae107b6f9236096d

http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/blob/c2e67721/mpinsdk/src/main/java/com/miracl/mpinsdk/MPinSDK.java
----------------------------------------------------------------------
diff --git a/mpinsdk/src/main/java/com/miracl/mpinsdk/MPinSDK.java 
b/mpinsdk/src/main/java/com/miracl/mpinsdk/MPinSDK.java
index acd794b..e440fe4 100644
--- a/mpinsdk/src/main/java/com/miracl/mpinsdk/MPinSDK.java
+++ b/mpinsdk/src/main/java/com/miracl/mpinsdk/MPinSDK.java
@@ -22,6 +22,7 @@ package com.miracl.mpinsdk;
 import android.content.Context;
 
 import com.miracl.mpinsdk.model.OTP;
+import com.miracl.mpinsdk.model.ServiceDetails;
 import com.miracl.mpinsdk.model.SessionDetails;
 import com.miracl.mpinsdk.model.Status;
 import com.miracl.mpinsdk.model.User;
@@ -159,6 +160,10 @@ public class MPinSDK implements Closeable {
         return nGetSessionDetails(mPtr, accessCode, sessionDetails);
     }
 
+    public Status GetServiceDetails(String url, ServiceDetails serviceDetails) 
{
+        return nGetServiceDetails(mPtr, url, serviceDetails);
+    }
+
     public void DeleteUser(User user) {
         nDeleteUser(mPtr, user);
     }
@@ -242,6 +247,8 @@ public class MPinSDK implements Closeable {
 
     private native Status nGetSessionDetails(long ptr, String accessCode, 
SessionDetails sessionDetails);
 
+    private native Status nGetServiceDetails(long ptr, String url, 
ServiceDetails serviceDetails);
+
     private native void nDeleteUser(long ptr, User user);
 
     private native Status nListUsers(long ptr, List<User> users);

http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/blob/c2e67721/mpinsdk/src/main/java/com/miracl/mpinsdk/model/ServiceDetails.java
----------------------------------------------------------------------
diff --git a/mpinsdk/src/main/java/com/miracl/mpinsdk/model/ServiceDetails.java 
b/mpinsdk/src/main/java/com/miracl/mpinsdk/model/ServiceDetails.java
new file mode 100644
index 0000000..b8f2cde
--- /dev/null
+++ b/mpinsdk/src/main/java/com/miracl/mpinsdk/model/ServiceDetails.java
@@ -0,0 +1,27 @@
+/***************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ ***************************************************************/
+package com.miracl.mpinsdk.model;
+
+public class ServiceDetails {
+
+    public String name;
+    public String backendUrl;
+    public String rpsPrefix;
+    public String logoUrl;
+}

http://git-wip-us.apache.org/repos/asf/incubator-milagro-mfa-sdk-android/blob/c2e67721/mpinsdk/src/main/jni/JNIMPinSDK.cpp
----------------------------------------------------------------------
diff --git a/mpinsdk/src/main/jni/JNIMPinSDK.cpp 
b/mpinsdk/src/main/jni/JNIMPinSDK.cpp
index 52cfe48..a56fe83 100644
--- a/mpinsdk/src/main/jni/JNIMPinSDK.cpp
+++ b/mpinsdk/src/main/jni/JNIMPinSDK.cpp
@@ -234,6 +234,29 @@ static jobject nGetSessionDetails(JNIEnv* env, jobject 
jobj, jlong jptr, jstring
     return MakeJavaStatus(env, status);
 }
 
+static jobject nGetServiceDetails(JNIEnv* env, jobject jobj, jlong jptr, 
jstring jurl, jobject jserviceDetails){
+    MPinSDK* sdk = (MPinSDK*) jptr;
+    MPinSDK::ServiceDetails serviceDetails;
+
+    MPinSDK::Status status = sdk->GetServiceDetails(JavaToStdString(env, 
jurl), serviceDetails);
+
+    if(status == MPinSDK::Status::OK)
+       {
+               jclass clsServiceDetails = 
env->FindClass("com/miracl/mpinsdk/model/ServiceDetails");
+               jfieldID fIdName = env->GetFieldID(clsServiceDetails, "name", 
"Ljava/lang/String;");
+               jfieldID fIdBackendUrl = env->GetFieldID(clsServiceDetails, 
"backendUrl", "Ljava/lang/String;");
+               jfieldID fIdRpsPrefix = env->GetFieldID(clsServiceDetails, 
"rpsPrefix", "Ljava/lang/String;");
+               jfieldID fIdLogoUrl = env->GetFieldID(clsServiceDetails, 
"logoUrl", "Ljava/lang/String;");
+
+               env->SetObjectField(jserviceDetails, fIdName, 
env->NewStringUTF(serviceDetails.name.c_str()));
+               env->SetObjectField(jserviceDetails, fIdBackendUrl, 
env->NewStringUTF(serviceDetails.backendUrl.c_str()));
+               env->SetObjectField(jserviceDetails, fIdRpsPrefix, 
env->NewStringUTF(serviceDetails.rpsPrefix.c_str()));
+               env->SetObjectField(jserviceDetails, fIdLogoUrl, 
env->NewStringUTF(serviceDetails.logoUrl.c_str()));
+       }
+
+    return MakeJavaStatus(env, status);
+}
+
 static void nDeleteUser(JNIEnv* env, jobject jobj, jlong jptr, jobject juser)
 {
        MPinSDK* sdk = (MPinSDK*) jptr;
@@ -384,6 +407,7 @@ static JNINativeMethod g_methodsMPinSDK[] =
        NATIVE_METHOD(nFinishAuthenticationMFA, 
"(JLcom/miracl/mpinsdk/model/User;Ljava/lang/String;Ljava/lang/StringBuilder;)Lcom/miracl/mpinsdk/model/Status;"),
        NATIVE_METHOD(nDeleteUser, "(JLcom/miracl/mpinsdk/model/User;)V"),
        NATIVE_METHOD(nGetSessionDetails, 
"(JLjava/lang/String;Lcom/miracl/mpinsdk/model/SessionDetails;)Lcom/miracl/mpinsdk/model/Status;"),
+       NATIVE_METHOD(nGetServiceDetails, 
"(JLjava/lang/String;Lcom/miracl/mpinsdk/model/ServiceDetails;)Lcom/miracl/mpinsdk/model/Status;"),
        NATIVE_METHOD(nListUsers, 
"(JLjava/util/List;)Lcom/miracl/mpinsdk/model/Status;"),
        NATIVE_METHOD(nListAllUsers, 
"(JLjava/util/List;)Lcom/miracl/mpinsdk/model/Status;"),
     NATIVE_METHOD(nListUsersForBackend, 
"(JLjava/util/List;Ljava/lang/String;)Lcom/miracl/mpinsdk/model/Status;"),

Reply via email to