Commit 03ef4373 authored by juvancic's avatar juvancic
Browse files

No commit message

No commit message
parent efed2b8e
Loading
Loading
Loading
Loading
+66 −20
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ module DiameterRfRo_Templates {
    
    // LibCommon
    import from LibCommon_BasicTypesAndValues all;
    import from LibCommon_DataStrings all;
    
    // LibDiameter
    import from LibDiameter_Types_Base_AVPs all;
@@ -60,6 +61,9 @@ module DiameterRfRo_Templates {

    group HeaderFieldTemplates {

        template DiameterHeader mw_diameterHeaderReq_CmdFlags(Command_Code p_cmdcode, template (present) UInt32 p_applid, template (present) Command_Flags p_commandFlags) modifies mw_diameterHeaderReq_dummy := {
            cmdflags := p_commandFlags
        }

        template (present) DiameterHeader mw_diameterHeaderAns_CmdFlags(
                                                                        Command_Code p_cmdcode, 
@@ -72,29 +76,40 @@ module DiameterRfRo_Templates {
        /**
         * @desc Received generic command flag template
         */
        template (present) Command_Flags mw_cmdFlagsAns := {
            r_bit           := '0'B,            //Answer message
            p_bit           := ?,
            e_bit           := ?,
            t_bit           := ?,
        template (present) Command_Flags mw_cmdFlagsReq_PET(in Bit1 p_P, in Bit1 p_E,in Bit1 p_T) := {
            r_bit           := '1'B,            //Request message
            p_bit           := p_P,
            e_bit           := p_E,
            t_bit           := p_T,
            reserved_bits    := '0000'B
        } // End of template mw_cmdFlagsAns
        
        /**
         * @desc Received generic command flag template
         */
        template (present) Command_Flags mw_cmdTFlagsAns 
        modifies mw_cmdFlagsAns := {
            t_bit           := '1'B // T message
        } // End of template mw_cmdTFlagsAns
        template (present) Command_Flags mw_cmdFlagsAns_PET(in Bit1 p_P, in Bit1 p_E,in Bit1 p_T) := {
            r_bit           := '0'B,            //Answer message
            p_bit           := p_P,
            e_bit           := p_E,
            t_bit           := p_T,
            reserved_bits    := '0000'B
        } // End of template mw_cmdFlagsAns
        
        /**
         * @desc Received generic command flag template
         */
        template (present) Command_Flags mw_cmd_0TFlagsAns 
        modifies mw_cmdFlagsAns := {
            t_bit           := '0'B // !T message
        } // End of template mw_cmdTFlagsAns
//        /**
//         * @desc Received generic command flag template
//         */
//        template (present) Command_Flags mw_cmd1TFlagsAns 
//        modifies mw_cmdFlagsAns := {
//            t_bit           := '1'B // T message
//        } // End of template mw_cmdTFlagsAns
//        
//        /**
//         * @desc Received generic command flag template
//         */
//        template (present) Command_Flags mw_cmd_0TFlagsAns 
//        modifies mw_cmdFlagsAns := {
//            t_bit           := '0'B // !T message
//        } // End of template mw_cmdTFlagsAns
        
        template (present) AVP_Header mw_aVP_HeaderVid_Vbit1Mbit0( // TODO To be moved in LibDiameter_Templates
                                                        AVP_Code p_avpCode, 
@@ -159,10 +174,27 @@ module DiameterRfRo_Templates {
                                            in template (value) Session_Id_AVP  p_sessionId,
                                            in template (value) ACR_Body_AVP    p_acrBody
            ) modifies m_ACR_dummy := {
                header := m_diameterHeaderReq_dummy(ACR_E, c_applIdRfRo),
                session_Id  := p_sessionId,
                aCR_Body    := p_acrBody
            } // End of template md_aCR
            
            /**
             * @desc Send template for ACR
             * @param p_sessionId   Session identifier
             * @param p_acrBody     ACR message body
             */
            template (value) ACR_MSG md_aCR_TflagSet(
                                            in template (value) Session_Id_AVP  p_sessionId,
                                            in template (value) ACR_Body_AVP    p_acrBody
            ) modifies m_ACR_dummy := {
                header := m_diameterHeaderReqDuplicated_dummy(ACR_E, c_applIdRfRo),
                session_Id  := p_sessionId,
                aCR_Body    := p_acrBody
            } // End of template md_aCR
           
           
             
            /**
             * @desc Send template for ACR message body
             */
@@ -187,6 +219,15 @@ module DiameterRfRo_Templates {
        group Rf_request_message_templates_receive {
            
            group ACR_MSG_{
                
            template ACR_MSG mw_ACR_CmdFlags_PET(template DiameterHeader p_h ) modifies mw_ACR_dummy := {
                //header :=  mw_diameterHeaderReq_CmdFlags(ACR_E, ?, mw_cmd_0TFlagsAns),
                //header :=  mw_diameterHeaderReq_CmdFlags(ACR_E, ?,  mw_cmdFlagsReq_PET('0'B,'0'B,'0'B)),
                header := p_h,
                session_Id := ?,
                aCR_Body := mw_ACR_Body_dummy
            }
                
            /**
            * @desc Main receive message for CDF_Rf port
            * @param p_aCA_MSG AC-Answer message
@@ -304,8 +345,12 @@ module DiameterRfRo_Templates {
        
        group Rf_answer_message_templates_receive { 
            
            template ACA_MSG mw_ACA_MessageFlags modifies mw_ACA_dummy := {
                header :=  mw_diameterHeaderAns_CmdFlags(ACA_E, ?, mw_cmd_0TFlagsAns),
            group ACA_MSG_{
                
            template ACA_MSG mw_ACA_CmdFlags_PET(template DiameterHeader p_h ) modifies mw_ACA_dummy := {
                //header :=  mw_diameterHeaderAns_CmdFlags(ACA_E, ?, mw_cmd_0TFlagsAns),
                //header :=  mw_diameterHeaderAns_CmdFlags(ACA_E, ?, mw_cmdFlagsAns_PET('0'B,'0'B,'0'B)),
                header := p_h,
                session_Id := ?,
                aCA_Body := mw_ACA_Body_dummy
            }
@@ -336,6 +381,7 @@ module DiameterRfRo_Templates {
                accounting_Record_Type      := p_accounting_Record_Type,
                accounting_Record_Number    := p_accounting_Record_Number
            } // End of template mdw_acaBodyAvps
            } //End group ACA_MSG_ 
            
        } // End of group Rf_answer_message_templates_receive