Abstract:
An embodiment of the present invention discloses a method for controlling presentation of an application. The method comprises: a first client sending, to a server, a purchase request carrying the allowed number of times of using an application (APP); the server generating an APP redeeming code according to the purchase request, storing a correspondence between the APP redeeming code and the allowed number of times of use, and returning the APP redeeming code to the first client; the first client sending the APP redeeming code to a second client; the server receiving a redeeming request sent by the second client and carrying the APP redeeming code, and after the server determines that the redeeming is allowed according to the allowed number of times of use corresponding to the APP redeeming code, the server sending downloading information of a corresponding APP to the second client. Embodiments of the prevent invention also provide a device and a system for controlling presentation of an application.

Description:
TECHNICAL FIELD 
       [0001]    The disclosure relates to the technology of applications (APPs), and in particular to a method, device and system for controlling application gifting. 
       BACKGROUND 
       [0002]    Since Apple Inc. developed APP Store, various types of APPs emerge one after another and the number of APPs increases rapidly, APPs are accepted gradually by users having a cell phone or any kinds of mobile terminals, and downloading and exchanging APPs becomes part of lives and interests for mobile terminal users such as mobile phone users and tablet users. In the era of social networking, it is fashionable to give an APP as a gift to other person, and an APP provider may gift an APP to some users for a trial so as to promote the APP. 
         [0003]    Currently, APP gifting may be implemented as follows. A giver logins in an APP gifting system of an APP store via a client, searches and selects an APP desired to be gifted via a user interface, and submits a purchase request to the APP presenting system; the APP gifting system receives the purchase request sent by the giver, determines information of the APP to be gifted, and generates a redemption code of the APP and sends it to the giver, the giver then sends the redemption code of the APP to a recipient; after receiving the redemption code of the APP gifted by the giver, the recipient logins in the APP gifting system via a client, inputs the redemption code of the APP via a user interface, and then he/she can download the APP gifted by the giver free of charge. In this way, although it is simple and feasible to gift an APP, confidentiality cannot be assured using this APP gifting solution, since the gifted APP is easy to be illegally downloaded, spread and used by unauthorized users, therefore copyright of the APP cannot be protected well, in particular, usage times of the APP cannot be effectively controlled, and thus usage permission of the gifted APP cannot be controlled well. 
       SUMMARY 
       [0004]    In order to resolve existing technical problems, embodiments of the disclosure mainly provide a method, device and system for controlling application gifting. 
         [0005]    The technical solutions of the embodiments of the disclosure are implemented as follows. 
         [0006]    The embodiments of the disclosure provide a method for controlling application gifting, which includes: 
         [0007]    a first client sends a purchase request carrying allowed usage times of an APP to a server; 
         [0008]    the server generates a redemption code of the APP according to the purchase request, stores a correspondence between the redemption code of the APP and the allowed usage times, and returns the redemption code of the APP to the first client; 
         [0009]    the first client sends the redemption code of the APP to a second client; and 
         [0010]    the server receives a redemption request carrying the redemption code of the APP sent by the second client, and sends download information of the APP to the second client after it is determined according to the allowed usage times corresponding to the redemption code of the APP that a redemption operation is allowed. 
         [0011]    In an embodiment, the purchase request may further include a name or identification of the APP. 
         [0012]    In an embodiment, the step that the server generates a redemption code of the APP and stores a correspondence between the redemption code of the APP and the allowed usage times may include: 
         [0013]    the server searches out the APP according to the purchase request, generates a random code corresponding to the APP, and stores, in a storage of the server, the random code as the redemption code of the APP in one-to-one correspondence with the allowed usage times carried in the purchase request. 
         [0014]    In an embodiment, the method may further include: after receiving the purchase request, the server searches out the APP according to the purchase request, and performs an encryption process on the APP. 
         [0015]    In an embodiment, the method may further include: decryption information of the APP is carried in the download information of the APP when the download information of the APP is sent by the server to the second client; and the second client decrypts the APP according to the decryption information of the APP carried in the download information after downloading the APP. 
         [0016]    The embodiments of the disclosure provide a client including a purchase requesting module configured to send a purchase request carrying allowed usage times of an APP to a server, receive a redemption code of the APP returned by the server, and send the redemption code of the APP to another client other than the client. 
         [0017]    In an embodiment, the client may further include a setting module configured to set allowed usage times of an APP to be gifted, and send the allowed usage times of the APP to the purchase requesting module. 
         [0018]    In an embodiment, the purchase request may further include a name or identification of the APP. 
         [0019]    The embodiments of the disclosure provide a server including a purchase processing module and a redemption module, in which: 
         [0020]    the purchase processing module is configured to receive a purchase request carrying allowed usage times of an APP sent by a first client, generate a redemption code of the APP, store a correspondence between the redemption code of the APP and the allowed usage times, and return the redemption code of the APP to the first client; and 
         [0021]    the redemption module is configured to receive a redemption request carrying a redemption code of the APP sent by a second client, and send download information of the APP to the second client after it is determined according to the allowed usage times corresponding to the redemption code of the APP that a redemption operation is allowed. 
         [0022]    In the embodiment, the purchase processing module may be specifically configured to: receive the purchase request carrying the allowed usage times of the APP sent by the first client, search out the APP according to the purchase request, generate a random code corresponding to the APP, store, in a storage of the server, the random code as the redemption code of the APP in one-to-one correspondence with the allowed usage times carried in the purchase request, and return the redemption code of the APP to the first client through a purchase response message. 
         [0023]    In an embodiment, the purchase processing module may be further configured to, after receiving the purchase request carrying the allowed usage times of the APP sent by the first client, search out the APP according to the purchase request, and perform an encryption process on the APP. 
         [0024]    In an embodiment, the redemption module may be further configured to have decryption information of the APP carried in the download information of the APP when the download information of the APP is sent to the second client. 
         [0025]    The embodiments of the disclosure further provide a system for controlling application gifting, and the system includes a first client, a server and a second client, in which: 
         [0026]    the first client is a client described above; 
         [0027]    the server is a server described above; and 
         [0028]    the second client includes a redemption requesting module and a download module, in which:
       the redemption requesting module is configured to receive the redemption code of the APP sent from the first client, the first client receiving the redemption code of the APP from the server, and send the redemption request carrying the redemption code of the APP to the server; and   the download module is configured to download the APP according to the download information of the APP, and send a response message indicating successful download to the server after the APP is downloaded successfully.       
 
         [0031]    In an embodiment, the download module may be further configured to decrypt the downloaded APP according to the decryption information of the APP carried in the download information. 
         [0032]    The embodiments of the disclosure provide a method, device and system for controlling APP gifting, in which: a first client sends a purchase request carrying allowed usage times of an APP to a server; the server generates a redemption code of the APP according to the purchase request, stores a correspondence between the redemption code of the APP and the allowed usage times, and returns the redemption code of the APP to the first client; the first client sends the redemption code of the APP to a second client; and the server receives a redemption request carrying the redemption code of the APP sent by the second client, and sends download information of the APP to the second client after it is determined according to the allowed usage times corresponding to the redemption code of the APP that a redemption operation is allowed. In this way, usage times of an APP can be limited effectively when the APP is gifted, thereby controlling the usage permission of the gifted APP well enough. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0033]      FIG. 1  is a schematic flow chart of a method for controlling APP gifting according to an embodiment of the disclosure; 
           [0034]      FIG. 2  is a schematic structural diagram of a client according to an embodiment of the disclosure; 
           [0035]      FIG. 3  is a schematic structural diagram of a server according to an embodiment of the disclosure; and 
           [0036]      FIG. 4  is a schematic structural diagram of a system for controlling APP gifting according to an embodiment of the disclosure. 
       
    
    
     DETAILED DESCRIPTION 
       [0037]    In the embodiments of the disclosure, a first client sends a purchase request carrying allowed usage times of an APP to a server; the server generates a redemption code of the APP according to the purchase request, stores a correspondence between the redemption code of the APP and the allowed usage times, and returns the redemption code of the APP to the first client; the first client sends the redemption code of the APP to a second client; and the server receives a redemption request carrying the redemption code of the APP sent by the second client, and sends download information of the APP to the second client after it is determined according to the allowed usage times corresponding to the redemption code of the APP that a redemption operation is allowed. 
         [0038]    The disclosure will be further elaborated in connection with specific embodiments with reference to the accompanying drawings. 
         [0039]    An embodiment of the disclosure implements a method for controlling APP gifting. As shown in  FIG. 1 , the method includes steps as follows. 
         [0040]    Step  101 , a first client sends a purchase request carrying allowed usage times of an APP to a server. 
         [0041]    Here, the purchase request may further include information such as a name or identification of the APP, and the like. 
         [0042]    Before sending the purchase request carrying the allowed usage times of the APP to the server, the first client sets allowed usage times of an APP to be gifted, specifically, after an APP to be purchased is selected by a giver, the first client displays, to the giver, an interface for setting usage times, through which allowed usage times of the purchased APP inputted by the giver is received. 
         [0043]    In an application scenario of this step, when an APP provider promotes an APP, allowed usage times of the promoted APP may be set through the first client, and an issuing request carrying the allowed usage times of the APP can be submitted to a server, wherein the issuing request is the purchase request in this step. 
         [0044]    Step  102 , the server generates a redemption code of the APP according to the purchase request, stores a correspondence between the redemption code of the APP and the allowed usage times, and returns the redemption code of the APP to the first client; 
         [0045]    specifically, the server searches out the APP according to the purchase request, generates a random code corresponding to the APP, stores, in a storage of the server, the random code as the redemption code of the APP in one-to-one correspondence with the allowed usage times carried in the purchase request, and returns the redemption code of the APP to the first client through a purchase response message. 
         [0046]    This step further includes: after the purchase request is received, the server searches out the APP according to the purchase request, and performs an encryption process on the APP; 
         [0047]    specifically, the encryption process performed on the APP may be an encryption process performed on the APP using a conventional encryption technology, a packet encryption technology, a sequence encryption technology, or a Digital Right Management (DRM) encryption technology and the like. 
         [0048]    For example, the encryption process performed on the APP using the DRM technology may include: the APP file is encrypted and compressed using a standard Open Mobile Alliance (OMA) Digital Right Management (DRM) v1 DRM Content Format (DCF) encryption suite, and a DRM encrypted-and-compressed file containing an encrypted information header is generated, which is referred to as a DRM_APP file. 
         [0049]    Specifically, the an encrypted information header of the DRM_APP file includes a key identification (ID) and a digital authorization centre download address (URL); 
         [0050]    The allowed usage times of the APP is written in a COUNT field of attributes of the DRM_APP file. 
         [0051]    Step  103 , the first client sends the redemption code of the APP to a second client; 
         [0052]    specifically, the first client sends the redemption code of the APP returned by the server to the second client via a wireless network or the Internet. 
         [0053]    Step  104 , the server receives a redemption request carrying the redemption code of the APP sent by the second client, and sends download information of the APP to the second client after it is determined according to the allowed usage times corresponding to the redemption code of the APP that a redemption operation is allowed; 
         [0054]    specifically, after receiving the redemption code of the APP sent from the first client which receives the redemption code of the APP from the server, the second client sends a redemption request carrying the redemption code of the APP to the server; after receiving the redemption request carrying the redemption code of the APP sent by the second client, the server acquires the redemption code of the APP carried in the redemption request, and compares the redemption code of the APP with redemption codes of APPs stored in a storage of the server, when the redemption code of the APP in the redemption request is consistent with none of the redemption codes of the APPs stored in the storage of the server, which indicates that the redemption code of the APP sent by the second client is not right, then subsequent operations are stopped; when the redemption code of the APP in the redemption request is consistent with one of the redemption codes of the APPs stored in the storage of the server, which indicates that the redemption code of the APP sent by the second client is right, then whether a redemption operation is allowed is determined according to the allowed usage times corresponding to the redemption code of the APP, and download information of the APP is sent to the second client if the redemption operation is allowed. 
         [0055]    The download information of the APP includes: a name of the APP, a download address of the APP, and the like; 
         [0056]    the step that whether redemption operation is allowed is determined according to the allowed usage times corresponding to the redemption code of the APP includes: it is determined whether remaining usage times of the APP corresponding to the redemption code of the APP is greater than zero; if yes, the redemption operation is allowed, otherwise, the redemption operation is not allowed; or 
         [0057]    it is determined whether the current used times of the APP corresponding to the redemption code of the APP is greater than the allowed usage times set by the first client; if not, the redemption operation is allowed; if yes, the redemption operation is not allowed; here, the remaining usage times is the difference between the allowed usage times and the current used times. 
         [0058]    The step further include: the APP is downloaded by the second client according to the download information of the APP; a response message indicating successful download is returned to the server after the APP is downloaded successfully; and the remaining usage times or the current used times of the APP is modified by the server if the response message indicating successful download is received, specifically, the remaining usage times of the APP is decremented by 1, or the current used times of the APP is incremented by 1. 
         [0059]    This step further includes: decryption information of the APP is carried in download information when the download information of the APP is sent by the server to the second client; and the decryption information of the APP includes at least: an encryption technology used during the encryption process performed on the APP and a decryption key. 
         [0060]    Correspondingly, the downloaded APP is decrypted by the second client according to the decryption information of the APP carried in the download information; 
         [0061]    for example, after encrypting the APP with a DRM technology, the server has a key ID and a digital authority centre download address carried in the download information of the APP which the server sends to the second client; the second client verifies the authority centre according to the key ID and the digital authority centre download address carried in the download information, receives the key of the encrypted APP from the digital authority centre after the verification passes, and decrypts the APP using the key. 
         [0062]    In the embodiment, the APP is protected through encryption, thereby effectively preventing malicious theft and spread of an APP by unauthorized users, limiting the usage times of the APP and controlling the usage permission of the APP to be gifted. 
         [0063]    In order to implement the above method, an embodiment of the disclosure provides a client, as shown in  FIG. 2 , the client includes a purchase requesting module  22  configured to send a purchase request carrying allowed usage times of an APP to a server, receive a redemption code of the APP returned by the server, and send the redemption code of the APP to another client. 
         [0064]    The client may further include a setting module  21  configured to set allowed usage times of an APP to be gifted, and send the allowed usage times of the APP to the purchase requesting module  22 . 
         [0065]    In practical applications, the setting module  21  of the client may be implemented by a Central Processing Unit (CPU) of a mobile terminal, and the purchase requesting module  22  of the client may be implemented by a signal transceiver of a mobile terminal. 
         [0066]    Specifically, the setting module  21  is configured to display an interface for setting usage times to a giver after an APP to be purchased is selected by the giver, and receive the allowed usage times of the purchased APP inputted by the giver through the interface for setting usage times. 
         [0067]    The purchase request may further include information such as a name or identification of the APP, and the like. 
         [0068]    The embodiments of the disclosure further provides a server, as shown in  FIG. 3 , the server includes a purchase processing module  31  and a redemption module  32 , in which: 
         [0069]    the purchase processing module  31  is configured to receive the purchase request carrying allowed usage times of an APP sent by a first client, generate a redemption code of the APP, store a correspondence between the redemption code of the APP and the allowed usage times, and return the redemption code of the APP to the first client; and 
         [0070]    the redemption module  32  is configured to receive a redemption request carrying a redemption code of the APP sent by a second client, and sent download information of the APP to the second client after it is determined according to the allowed usage times corresponding to the redemption code of the APP that a redemption operation is allowed. 
         [0071]    Specifically, the purchase processing module  31  is configured to: receive the purchase request carrying the allowed usage times of the APP sent by the first client, search out the APP according to the purchase request, generate a random code corresponding to the APP, store, in a storage of the server, the random code as the redemption code of the APP in one-to-one correspondence with the allowed usage times carried in the purchase request, and return the redemption code of the APP to the first client through a purchase response message; 
         [0072]    the purchase processing module  31  is further configured to, after receiving the purchase request carrying the allowed usage times of the APP sent by the first client, search out the APP according to the purchase request, and perform an encryption process on the APP; 
         [0073]    the purchase processing module  31  is further configured to perform an encryption process on the APP using a conventional encryption technology, a packet encryption technology, a sequence encryption technology, or a DRM encryption technology or the like; 
         [0074]    for example, the APP file is encrypted and compressed by the purchase processing module  31  using a standard OMA DRM v1 DCF encryption suite, and then a DRM encrypted-and-compressed file containing an encrypted information header is generated, which is referred to as a DRM_APP file for short; the an encrypted information header of the DRM_APP file includes a key identification (ID) and a digital authorization centre download address; the allowed usage times of the APP is written in a COUNT field of attributes of the DRM_APP file. 
         [0075]    Specifically, the redemption module  32  is configured to: after receiving the redemption request carrying the redemption code of the APP sent by the second client, acquire the redemption code of the APP carried in the redemption request, compare the redemption code of the APP with redemption codes of APPs stored in a storage, stop subsequent operations and send an error information report to the second client when the redemption code of the APP in the redemption request is consistent with none of the redemption codes of the APPs stored in the storage of the server, and determine whether a redemption operation is allowed according to the allowed usage times corresponding to the redemption code of the APP when the redemption code of the APP in the redemption request is consistent with one of the redemption codes of the APPs stored in the storage of the server, and send the download information of the APP to the second client when the redemption operation is allowed. 
         [0076]    Further, the redemption module  32  is configured to: determine whether remaining usage times of the APP corresponding to the redemption code of the APP is greater than zero; if yes, allow the redemption operation, otherwise, forbid the redemption operation; or determine whether the current used times of the APP corresponding to the redemption code of the APP is greater than the allowed usage times set by the first client, if not, allow the redemption operation; if yes, forbid the redemption operation. 
         [0077]    The redemption module  32  is further configured to, when sending the download information of the APP to the second client, have the decryption information of the APP carried in the download information; the decryption information of the APP includes at least: an encryption technology used and a decryption key; and the redemption module  32  is further configured to, after the APP is downloaded successfully, decrement the remaining usage times of the APP by 1, or increment the current used times of the APP by 1. 
         [0078]    In practical applications, the purchase processing module  31  and the redemption module  32  of the server may be implemented by a CPU of the server. 
         [0079]    Further, an embodiment of the disclosure further provides a system for controlling application gifting, as shown in  FIG. 4 , the system includes: a first client  41 , a server  42 , and second client  43 ; in which: the first client  41  is the client shown in  FIG. 2 , including a purchase requesting module  22 ; the server  42  is the server shown in  FIG. 3 , including a purchase processing module  31  and a redemption module  32 ; and the second client  43  includes a redemption requesting module  51  and a download module  52 . 
         [0080]    The redemption requesting module  51  is configured to receive the redemption code of the APP sent from the first client, the first client receiving the redemption code of the APP from the server, and send the redemption request carrying the redemption code of the APP to the server; and 
         [0081]    the download module  52  is configured to download the APP according to the download information of the APP, and send a response message indicating successful download to the server after the APP is downloaded successfully. 
         [0082]    In practical applications, the redemption requesting module  51  and the download module  52  may be implemented by a CPU, a Digital Signal Processor (DSP) or a Field-Programmable Gate Array (FPGA) of the second client  43 . 
         [0083]    The first client  41  further includes a setting module  21  configured to set allowed usage times of an APP to be gifted, and send the allowed usage times of the APP to the purchase requesting module  22 . 
         [0084]    The download module  52  is further configured to: decrypt the downloaded APP according to the decryption information of the APP carried in the download information; for example, after the APP is encrypted with a DRM technology by the server, the download module  52  verifies the authority centre according to a key ID and a digital authority centre download address carried in the download information, receives the key of the encrypted APP from the digital authority centre after the verification passes, and decrypts the APP using the key. 
         [0085]    The technical solution of the disclosure will be explained below in conjunction with specific embodiments. 
       First Embodiment 
       [0086]    In the embodiment, firstly, an APP desired to be gifted is selected by a giver A through a first client such as a mobile phone client or a web page client or the like, and then usage times of the APP is set using an interface for setting usage times, the allowed usage times for the purchased APP inputted by the presenter is received by the first client through the interface for setting usage times, and a purchase request carrying allowed the usage times of the APP is sent to a server; 
         [0087]    the server receives the purchase request from the first client, searches out the APP according to the purchase request, generates a random code corresponding to the APP, stores, in a storage of the server, the random code as the redemption code of the APP in one-to-one correspondence with the allowed usage times carried in the purchase request, and returns the redemption code of the APP to the first client through a purchase response message; further, after receiving the purchase request, the server searches out the APP according to the purchase request and performs an encryption process on the APP; 
         [0088]    the redemption code of the APP returned by the server is sent by the giver A using the first client to a second client of a recipient B via a wireless network or Internet; 
         [0089]    a redemption request carrying the redemption code of the APP is sent by the second client of the recipient B to the server after the reception of the redemption code of the APP returned by the server which is sent by the first client; the redemption code of the APP carried in the redemption request is acquired by the server after the reception of the redemption request carrying the redemption code of the APP sent by the second client, and the redemption code of the APP is compared with redemption codes of APPs stored in a storage of the server, when the redemption code of the APP in the redemption request is consistent with none of the redemption codes of the APPs stored in the storage of the server, which indicates that the redemption code of the APP sent by the second client is not right, then subsequent operations are stopped, and an error information report is sent to the second client; when the redemption code of the APP in the redemption request is consistent with one of the redemption codes of the APPs stored in the storage of the server, which indicates that the redemption code of the APP sent by the second client is right, then it is determined whether remaining usage times of the APP corresponding to the redemption code of the APP is greater than, if yes, the redemption operation is allowed, otherwise, the redemption operation is not allowed; or 
         [0090]    it is determined whether the current used times of the APP corresponding to the redemption code of the APP is greater than the allowed usage times set by the first client; if not, the redemption operation is allowed; if yes, the redemption operation is not allowed; here, the remaining usage times is the difference between the allowed usage times and the current used times; download information of the APP is sent to the second client when the redemption operation is allowed. 
         [0091]    The APP is downloaded and decrypted by the second client according to the download information of the APP; a response message indicating successful download is returned to the server after the APP is downloaded successfully; the remaining usage times or the current used times of the APP is modified by the server after the response message indicating successful download is received by the server, specifically, remaining usage times of the APP is decremented by 1, or the current used times of the APP is incremented by 1. 
       Second Embodiment 
       [0092]    In the embodiment, when an APP provider promotes an APP, an APP desired to be promoted is selected by the APP provider through a first client such as a mobile phone client or a web page client or the like, and then usage times of the APP is set using an interface for setting usage times, the allowed usage times for the promoted APP inputted by the presenter is received by the first client through the interface for setting usage times, and an issuing request carrying the allowed the usage times of the APP is sent to a server; 
         [0093]    the issuing request from the first client is received by the server, the APP is searched out according to the issuing request, a random code corresponding to the APP is generated, the random code is stored in a storage of the server as a redemption code of the APP in one-to-one correspondence with the allowed usage times carried in the issuing request, and the redemption code of the APP is returned to the first client through an issuing response message; further, after the issuing request is received, the APP is searched out according to the issuing request by the server and an encryption process is performed on the APP; 
         [0094]    the redemption code of the APP returned by the server is sent by the first client to another client via a wireless network or Internet; 
         [0095]    a redemption request carrying the redemption code of the APP is sent by the another client to the server after the reception of the redemption code of the APP returned by the server which is sent by the first client; the redemption code of the APP carried in the redemption request is acquired by the server after the reception of the redemption request carrying the redemption code of the APP sent by the another client, and the redemption code of the APP is compared with redemption codes of APPs stored in a storage of the server, when the redemption code of the APP in the redemption request is consistent with none of the redemption codes of the APPs stored in the storage of the server, which indicates that the redemption code of the APP sent by the another client is not right, then subsequent operations are stopped, and an error information report is sent to the another client; when the redemption code of the APP in the redemption request is consistent with one of the redemption codes of the APPs stored in the storage of the server, which indicates that the redemption code of the APP sent by the another client is right, then it is determined whether remaining usage times of the APP corresponding to the redemption code of the APP is greater than, if yes, the redemption operation is allowed, otherwise, the redemption operation is not allowed; or 
         [0096]    it is determined whether the current used times of the APP corresponding to the redemption code of the APP is greater than the allowed usage times set by the first client; if not, the redemption operation is allowed; if yes, the redemption operation is not allowed; here, the remaining usage times is the difference between the allowed usage times and the current used times; download information of the APP is sent to the another client when the redemption operation is allowed. 
         [0097]    The APP is downloaded and decrypted by the another client according to the download information of the APP; a response message indicating successful download is returned to the server if the APP is downloaded successfully; the remaining usage times or the current used times of the APP is modified by the server, after the response message indicating successful download is received by the server, specifically, remaining usage times of the APP is decremented by 1, or the current used times of the APP is incremented by 1. 
         [0098]    In summary, with the solutions of the embodiments of the disclosure, not only the usage times of an APP is limited, but also the APP is protected through encryption, thereby effectively preventing malicious theft and spread by unauthorized users. 
         [0099]    It should be understood by those skilled in the art that embodiments of the disclosure may provide a method, a system, or a computer program product. Accordingly, the disclosure can take the form of hardware embodiments, software embodiments, or a combination of forms of embodiment of software and hardware aspects. Furthermore, the disclosure may take the form of a computer program product which is embodied on one or more computer-usable storage media (including, but not limited to, a disk storage, optical storage, and the like) having computer-usable program code embodied therein. 
         [0100]    The disclosure is described in accordance with a method, a device (system), and flow charts and/or block diagrams of a program product according to embodiments of the disclosure. It should be understood that each process and/or block in the flowcharts and/or block diagrams, and a combination of flows and blocks in the flowcharts and/or block diagrams are implemented by the computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, a special purpose computer, an embedded processor or other programmable data processing apparatus to produce a machine, such that a device for implementing the functions specified in a flow or flows of flowcharts or a block or blocks of block diagrams is produced through the instructions which are executed through the processor of the computer or other programmable data processing device. 
         [0101]    These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to be operated in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instruction means which implement the function in a flow or flows of flowcharts or a block or blocks of block diagrams. 
         [0102]    These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in a flow or flows of flowcharts or a block or blocks of block diagrams. 
         [0103]    What described above is merely preferable embodiments of the disclosure and is not intended to limit the scope of protection of the disclosure.