X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=service%2Feasy-setup%2Fmediator%2Frichsdk%2Fandroid%2FEasySetupCore%2Fsrc%2Fmain%2Fjava%2Forg%2Fiotivity%2Fservice%2Feasysetup%2Fmediator%2FEasySetup.java;h=cece024afda7e37aa5a8e9f2e29b859238bb1bc9;hb=refs%2Ftags%2Faccepted%2Ftizen%2Funified%2F20171010.063815;hp=2e47b0ece132bf097ceebb176d3e8ebc10db4f07;hpb=a5c63ff4150291f73fe6fc826d00bdc0141d2fe0;p=platform%2Fupstream%2Fiotivity.git diff --git a/service/easy-setup/mediator/richsdk/android/EasySetupCore/src/main/java/org/iotivity/service/easysetup/mediator/EasySetup.java b/service/easy-setup/mediator/richsdk/android/EasySetupCore/src/main/java/org/iotivity/service/easysetup/mediator/EasySetup.java index 2e47b0e..cece024 100755 --- a/service/easy-setup/mediator/richsdk/android/EasySetupCore/src/main/java/org/iotivity/service/easysetup/mediator/EasySetup.java +++ b/service/easy-setup/mediator/richsdk/android/EasySetupCore/src/main/java/org/iotivity/service/easysetup/mediator/EasySetup.java @@ -2,7 +2,7 @@ * *************************************************************** * * Copyright 2017 Samsung Electronics All Rights Reserved. - * + * * * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -25,21 +25,21 @@ package org.iotivity.service.easysetup.mediator; import android.content.Context; import android.util.Log; -import java.io.IOException; +import org.iotivity.base.OcConnectivityType; +import org.iotivity.base.OcResource; +import org.iotivity.base.OcPlatform; + import java.util.ArrayList; +import java.util.EnumSet; +import java.util.List; /** - * - * This is facade class, a single point of contact for Application. - * It contains set of APIs to do easy setup of the enrolling device. - * ON-BOARDING - This is a step to establish connectivity between the device & Mediator device. - * PROVISION - This is a step where the netowork's detail & credentials are given to the - * enrolling device. + * This provides an API to instanciate a new RemoteEnrollee object correspondent to Enrollee + * Device to be setup. */ public class EasySetup { private static final String TAG = EasySetup.class.getName(); - private static EasySetup sInstance; private static Context mContext; @@ -48,11 +48,18 @@ public class EasySetup { protected RemoteEnrollee mRemoteEnrollee; - //function to call the native nativeCreateRemoteEnrollee - private native RemoteEnrollee nativeCreateRemoteEnrollee(); - + // function to call the native nativeCreateRemoteEnrollee + private native RemoteEnrollee nativeCreateRemoteEnrollee(OcResource enrolleeResource); static { // Load Easy Setup JNI interface + try + { + System.loadLibrary("ocprovision"); + } catch (UnsatisfiedLinkError e) { + Log.i(TAG, "ocprovision library does not exist. (Unsecure mode)"); + } + + System.loadLibrary("ocstack-jni"); System.loadLibrary("ESMediatorRich"); System.loadLibrary("easysetup-jni"); } @@ -73,23 +80,26 @@ public class EasySetup { return sInstance; } - /** - * API to create a new RemoteEnrollee instance + /** + * This API is used for creating a remote Enrollee instance + * + * @param enrolleeResource an OCResource object corresponding to enrollee resource + * discovered in a network. The OcResource object can be obtained by calling + * OcPlatform.findResource() API. What resource you have to discover with + * the OcPlatform.findResource() API is a "provisioning" resource with a certain + * resource type, i.e. oic.r.easysetup + * + * @return Pointer to RemoteEnrollee instance */ - public synchronized RemoteEnrollee createRemoteEnrollee() + public synchronized RemoteEnrollee createRemoteEnrollee(OcResource enrolleeResource) { - // native call - mRemoteEnrollee = nativeCreateRemoteEnrollee(); - mRemoteEnrolleeList.add(mRemoteEnrollee); - return mRemoteEnrollee; - } + mRemoteEnrollee = nativeCreateRemoteEnrollee(enrolleeResource); - /** - * Reset the Easy setup - */ - public void finish() { - //Call the stop Provisioning - //for (RemoteEnrollee remoteEnrollee : mRemoteEnrolleeList) - // remoteEnrollee.stopProvisioningProcess(); + if(mRemoteEnrollee != null) + { + mRemoteEnrolleeList.add(mRemoteEnrollee); + return mRemoteEnrollee; } + return null; + } }