[feature][T8TSK-4] Optimize the network module, provide state buffer variables

Change-Id: Ied5f06519095cdfc88789f2a6e8b728e29b73c48
diff --git a/lib/liblynq-network/lynq_network.cpp b/lib/liblynq-network/lynq_network.cpp
index 3752455..7c86433 100755
--- a/lib/liblynq-network/lynq_network.cpp
+++ b/lib/liblynq-network/lynq_network.cpp
@@ -13,6 +13,7 @@
 

 #include "lynq_network.h"

 #include "liblog/lynq_deflog.h"

+#include "lynq_network_state_buffer.h"

 #define LYNQ_SERVICE_PORT 8088

 #define LYNQ_URC_SERVICE_PORT 8086

 #define LYNQ_URC_ADDRESS "0.0.0.0"

@@ -202,14 +203,31 @@
             urc_p->readInt32(&network_urc_slot_id);

             switch(urc_id)

             {

-                case 1002: //RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED

+                case RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED:

                 {

+                    set_register_voice_buffer_valid(FALSE);

                     network_wait_urc_id = urc_id;

                     LYINFLOG("slot_id = %d",network_urc_slot_id);

                     send_signal_changes();

                     break;

                 }

-                case 1009: //RIL_UNSOL_SIGNAL_STRENGTH

+                case RIL_UNSOL_RESPONSE_PS_NETWORK_STATE_CHANGED:

+                {                    

+                    set_register_data_buffer_valid(FALSE);

+                    network_wait_urc_id = urc_id;

+                    LYINFLOG("slot_id = %d",network_urc_slot_id);

+                    send_signal_changes();

+                    break;

+                }

+                case RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED:

+                {                   

+                    set_register_ims_buffer_valid(FALSE);

+                    network_wait_urc_id = urc_id;

+                    LYINFLOG("slot_id = %d",network_urc_slot_id);

+                    send_signal_changes();

+                    break;

+                }

+                case RIL_UNSOL_SIGNAL_STRENGTH:

                 {

                     urc_p->readInt32(&network_urc_solSigStren.rssi);

                     if((network_urc_solSigStren.rssi!=99)&&(network_urc_solSigStren.rssi!=0))

@@ -290,6 +308,7 @@
             }

         }

     }

+    return NULL;

 }

 

 

@@ -380,6 +399,8 @@
     LYLOGEINIT(USER_LOG_TAG);

     int ret = 0;

 

+    init_network_timer_all();

+

     ret = lynq_server_socket_start();

     if(ret !=0)

     {

@@ -539,6 +560,9 @@
     }

     g_lynq_network_init_flag = 0;

     network_urc_status = 0;

+

+    deinit_network_timer_all();

+    

     return 0;

 }

 

@@ -823,10 +847,22 @@
     strUpper(str);

     if(!strcmp(str,"VOICE"))

     {

+        if(lynq_get_registration_state_to_buf_voice(regState,netType,netRejected)==0)

+        {

+            return 0;

+        }       

         client_t.request = RIL_REQUEST_VOICE_REGISTRATION_STATE;

     }else if(!strcmp(str,"DATA")){

+        if(lynq_get_registration_state_to_buf_data(regState,LAC,CID,netType)==0)

+        {

+            return 0;

+        }      

         client_t.request = RIL_REQUEST_DATA_REGISTRATION_STATE;

     }else if(!strcmp(str,"IMS")){

+        if(lynq_get_registration_state_to_buf_ims(imsRegState,radioTechFam)==0)

+        {

+            return 0;

+        }       

         client_t.request = RIL_REQUEST_IMS_REGISTRATION_STATE;

     }else{

         LYERRLOG("request error");

@@ -882,7 +918,8 @@
                 lynqStrdupReadString(p);

                 lynqStrdupReadString(p);

                 lynqStrdupReadString(p);

-                *netRejected = atoi(lynqStrdupReadString(p));

+                *netRejected = atoi(lynqStrdupReadString(p));       

+                lynq_set_registration_state_to_buf_voice(*regState,*netType,*netRejected);

             }

         }else if(!strcmp(str,"DATA")){

             p.readInt32(&num);

@@ -895,6 +932,7 @@
                 resp[1] = lynqStrdupReadString(p);

                 strcpy(CID,resp[1]);

                 *netType = atoi(lynqStrdupReadString(p));

+                lynq_set_registration_state_to_buf_data(*regState,LAC,CID,*netType);

             }

 

         }else if(!strcmp(str,"IMS")){

@@ -903,6 +941,7 @@
             {

                 p.readInt32(imsRegState);

                 p.readInt32(radioTechFam);

+                lynq_set_registration_state_to_buf_ims(*imsRegState,*radioTechFam);

             }

         }else{

             LYERRLOG("request error");