⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jwa_mms.c

📁 java 1.1 gemini 08_16
💻 C
📖 第 1 页 / 共 5 页
字号:
 * FUNCTION
 *  jwa_mms_reset_recv_data
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  
 *****************************************************************************/
int jwa_mms_reset_recv_data()
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    J2ME_mms_reset_recv_data();

    return J2ME_MMS_OK;
}


/*****************************************************************************
 * FUNCTION
 *  jwa_mms_get_mseesag_part
 * DESCRIPTION
 *  
 * PARAMETERS
 *  receive_msg_part        [?]     
 * RETURNS
 *  
 *****************************************************************************/
int jwa_mms_get_mseesag_part(jwa_mms_receive_msg_part_struct *receive_msg_part)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_uint32 filesize = 0;

    jwa_mms_receive_msg_part_struct *receive_msg_part_data = receive_msg_part;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    receive_msg_part_data->encoding_scheme = j2me_mms_recv_part_data.encoding_scheme;
    receive_msg_part_data->content_type_len = j2me_mms_recv_part_data.content_type_len;
    receive_msg_part_data->content_id_len = j2me_mms_recv_part_data.content_id_len;
    receive_msg_part_data->content_location_len = j2me_mms_recv_part_data.content_location_len;

    if (j2me_mms_recv_part_data.filepath_len > 0)
    {
        FS_HANDLE fh;

        fh = FS_Open(j2me_mms_recv_part_data.filepath, FS_READ_ONLY);
        if (fh < 0)
        {
            FS_Close(fh);
            return J2ME_MMS_READ_MSG_CONTENT_PART_FILE_ERROR;
        }
        if (FS_GetFileSize(fh, &filesize) != FS_NO_ERROR)
        {
            FS_Close(fh);
            return J2ME_MMS_READ_MSG_CONTENT_PART_FILE_ERROR;
        }
        FS_Close(fh);
    }

    j2me_mms_recv_part_data.file_size = filesize;

    receive_msg_part_data->file_size = j2me_mms_recv_part_data.file_size;

    if (j2me_mms_recv_part_data.content_type != NULL)
    {
        receive_msg_part_data->content_type = j2me_mms_recv_part_data.content_type;
    }
    if (j2me_mms_recv_part_data.content_id != NULL)
    {
        receive_msg_part_data->content_id = j2me_mms_recv_part_data.content_id;
    }
    if (j2me_mms_recv_part_data.content_location != NULL)
    {
        receive_msg_part_data->content_location = j2me_mms_recv_part_data.content_location;
    }

    /* J2ME_mms_reset_recv_part_data(KAL_FALSE); */

    return J2ME_MMS_OK;

}


/*****************************************************************************
 * FUNCTION
 *  jwa_mms_get_message_part_content
 * DESCRIPTION
 *  
 * PARAMETERS
 *  receive_msg_part        [?]     
 * RETURNS
 *  
 *****************************************************************************/
int jwa_mms_get_message_part_content(jwa_mms_receive_msg_part_content_struct *receive_msg_part)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_wchar filepath[100];
    kal_uint8 filename[] = "mms_temp_content";

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (j2me_mms_recv_part_data.filepath_len == 0 || j2me_mms_recv_part_data.filepath == NULL)
    {
        return J2ME_MMS_EMPTY_MSG_CONTENT_PART;
    }

    if (j2me_mms_recv_part_data.file_size == 0)
    {
        FS_HANDLE fh;
        kal_uint32 filesize;

        fh = FS_Open(j2me_mms_recv_part_data.filepath, FS_READ_ONLY);
        if (fh < 0)
        {
            FS_Close(fh);
            return J2ME_MMS_READ_MSG_CONTENT_PART_FILE_ERROR;
        }
        if (FS_GetFileSize(fh, &filesize) != FS_NO_ERROR)
        {
            FS_Close(fh);
            return J2ME_MMS_READ_MSG_CONTENT_PART_FILE_ERROR;
        }
        j2me_mms_recv_part_data.file_size = filesize;
        FS_Close(fh);
    }

    kal_wsprintf(filepath, "%s\\%s", j2me_sys_dir_path, filename);

    //FS_Delete(filepath);
    //FS_Rename(j2me_mms_recv_part_data.filepath, filepath);

    FS_Move(j2me_mms_recv_part_data.filepath, filepath, FS_MOVE_KILL | FS_MOVE_OVERWRITE, NULL, NULL, 0);

    receive_msg_part->file_size = j2me_mms_recv_part_data.file_size;
    mmi_ucs2_to_asc((S8*) receive_msg_part->filepath, (S8*) filepath);
    receive_msg_part->filepath_len = strlen((char*)receive_msg_part->filepath);

    J2ME_mms_reset_recv_part_data(KAL_TRUE);

    return J2ME_MMS_OK;
}


/*****************************************************************************
 * FUNCTION
 *  jwa_mms_get_primitive_result
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  
 *****************************************************************************/
int jwa_mms_get_primitive_result()
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    return (int)j2me_mms_result;
}


/*****************************************************************************
 * FUNCTION
 *  jwa_mms_get_response_primitive
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  
 *****************************************************************************/
int jwa_mms_get_response_primitive()
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    unsigned long message_id;
    int result = -1;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    message_id = readMmsAsyncEvent();

    switch (message_id)
    {
        case MSG_ID_WAP_MMC_SEND_APPMMS_RSP:
        {
            result = MSG_MMS_SEND_APPMMS_RSP;
        }
            break;

        case MSG_ID_WAP_MMC_POST_APPMMS_MSG_PART_IND:
        {
            result = MSG_MMS_POST_APPMMS_MSG_PART_IND;
        }
            break;

        case MSG_ID_WAP_MMC_CFG_APPMMS_APPID_RSP:
        {
            result = MSG_MMS_CFG_APPMMS_APPID_RSP;
        }
            break;

        case MSG_ID_WAP_MMC_CHECK_APPMMS_COMING_RSP:
        {
            result = MSG_MMS_CHECK_APPMMS_COMING_RSP;
        }
            break;

        case MSG_ID_WAP_MMC_RECV_APPMMS_RSP:
        {
            result = MSG_MMS_RECV_APPMMS_RSP;
        }
            break;

        case MSG_ID_WAP_MMC_READ_APPMMS_MSG_PART_RSP:
        {
            result = MSG_MMS_READ_APPMMS_CONTENT_RSP;
        }
            break;

            /*
             * case MSG_ID_MMI_PHB_GET_ENTRY_BY_INDEX_RSP:{
             * result = MSG_MMS_PHB_GET_ENTRY_BY_INDEX_RSP;
             * }
             * break;
             */
        default:
        {
            result = -1;
        }
            break;

    }

    return (result);

}


/*****************************************************************************
 * FUNCTION
 *  jwa_mms_finalize
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  
 *****************************************************************************/
void jwa_mms_finalize()
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    finalizeMms();
}

/*****************************************************************************
 * FUNCTION
 *  finalizeMms
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void finalizeMms()
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_uint8 i;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    J2ME_mms_reset_recv_data();
    J2ME_mms_reset_recv_part_data(KAL_TRUE);

    if (j2me_mms_in_progress)
    {
        J2ME_mms_send_ilm(NULL, NULL, MSG_ID_WAP_MMC_ABORT_APPMMS_REQ, wap_get_service_module(MSG_ID_WAP_MMC_ABORT_APPMMS_REQ));
        j2me_mms_in_progress = KAL_FALSE;
    }

    for (i = 0; i < J2ME_MMS_REGISTER_APPID_NUM; i++)
    {
        if (j2me_mms_appid[i].app_id_len != 0 && j2me_mms_appid[i].app_id != NULL)
        {

            J2ME_mms_register((char*)j2me_mms_appid[i].app_id, 1, WMA_REGISTRY);       /* 1 for remove */

            j2me_mms_appid[i].app_id_len = 0;
            jvm_free(j2me_mms_appid[i].app_id);
            j2me_mms_appid[i].app_id = NULL;

        }
    }
}


/*****************************************************************************
 * FUNCTION
 *  is_mms_activated
 * DESCRIPTION
 *  check if there is any pending mms requests
 * PARAMETERS
 *  void
 * RETURNS
 *  TRUE if there is pending mms request, FALSE otherwise.
 *****************************************************************************/
BOOL is_mms_activated(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    if (j2me_mms_in_progress)
    {
        return TRUE;
    }
    else
    {
        return FALSE;
    }
}


/*****************************************************************************
 * FUNCTION
 *  jwa_mms_get_mmsc_addr
 * DESCRIPTION
 *  Get MMSC address string in ascii with null terminator
 * PARAMETERS
 *  void
 * RETURNS
 *  MMSC address string
 *****************************************************************************/
kal_char* jwa_mms_get_mmsc_addr(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    return (kal_char*)j2me_mms_mmsc_addr;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -