]> sjero.net Git - linphone/commitdiff
JNI method to extract country code from e164 phone number
authorSylvain Berfini <sylvain.berfini@belledonne-communications.com>
Mon, 7 Jan 2013 09:53:41 +0000 (10:53 +0100)
committerSylvain Berfini <sylvain.berfini@belledonne-communications.com>
Mon, 7 Jan 2013 09:53:55 +0000 (10:53 +0100)
coreapi/linphonecore_jni.cc
java/common/org/linphone/core/LinphoneProxyConfig.java
java/impl/org/linphone/core/LinphoneProxyConfigImpl.java

index 2303cc5b15108af6d159cdb4bc890da7b37b8b38..5ed0b907f1bc2cef9b6c4ed03e6f89c86396517c 100644 (file)
@@ -1132,6 +1132,12 @@ extern "C" jint Java_org_linphone_core_LinphoneProxyConfigImpl_lookupCCCFromIso(
        env->ReleaseStringUTFChars(jiso, iso);
        return (jint) prefix;
 }
+extern "C" jint Java_org_linphone_core_LinphoneProxyConfigImpl_lookupCCCFromE164(JNIEnv* env, jobject thiz, jlong proxyCfg, jstring je164) {
+       const char* e164 = env->GetStringUTFChars(je164, NULL);
+       int prefix = linphone_dial_plan_lookup_ccc_from_e164(e164);
+       env->ReleaseStringUTFChars(je164, e164);
+       return (jint) prefix;
+}
 extern "C" jstring Java_org_linphone_core_LinphoneProxyConfigImpl_getDomain(JNIEnv* env
                                                                                                                                                        ,jobject thiz
                                                                                                                                                        ,jlong proxyCfg) {
index eee58c9156572b148e0b4d8d20039bd5af72797a..b6b8919fb33e8e95d42e0b4ece42c55e4cd155ec 100644 (file)
@@ -145,4 +145,10 @@ public interface LinphoneProxyConfig {
         * @param country iso code
         */
        public int lookupCCCFromIso(String iso);
+       
+       /**
+        * Return the international prefix for the given country
+        * @param e164 phone number
+        */
+       public int lookupCCCFromE164(String e164);
 }
index 2295bce033ece40f2448741fe4f79f6e1918b1ea..649d46fe321629e4a3561bd52b7ce998970770aa 100644 (file)
@@ -78,6 +78,7 @@ class LinphoneProxyConfigImpl implements LinphoneProxyConfig {
        private native void setContactParameters(long ptr, String params);
        
        private native int lookupCCCFromIso(long nativePtr, String iso);
+       private native int lookupCCCFromE164(long nativePtr, String e164);
        
        public void enableRegister(boolean value) {
                enableRegister(nativePtr,value);
@@ -153,4 +154,8 @@ class LinphoneProxyConfigImpl implements LinphoneProxyConfig {
        public int lookupCCCFromIso(String iso) {
                return lookupCCCFromIso(nativePtr, iso);
        }
+       @Override
+       public int lookupCCCFromE164(String e164) {
+               return lookupCCCFromE164(nativePtr, e164);
+       }
 }