Interface PocInformation

  • All Superinterfaces:
    Cloneable, DiameterAvp, GroupedAvp

    public interface PocInformation
    extends GroupedAvp
    Defines an interface representing the PoC-Information grouped AVP type. From the Diameter Ro Reference Point Protocol Details (3GPP TS 32.299 V12.11.0) specification:
     7.2.144     PoC-Information AVP
     
     The PoC-Information AVP (AVP code 879) is of type Grouped. Its purpose is
     to allow the transmission of additional PoC service specific information
     elements.
     It has the following ABNF grammar:
     
         PoC-Information ::= < AVP Header: 879>
                             [ PoC-Server-Role ]
                             [ PoC-Session-Type ]
                             [ PoC-User-Role ]
                             [ PoC-Session-Initiation-Type ]
                             [ PoC-Event-Type ]
                             [ Number-Of-Participants ]
                           * [ Participants-Involved ]
                           * [ Participant-Group ]
                           * [ Talk-Burst-Exchange ]
                             [ PoC-Controlling-Address ]
                             [ PoC-Group-Name ]
                             [ PoC-Session-Id ]
                             [ Charged-Party ]
     
     NOTE:   In the ABNF definition of PoC-Information AVP, the Participants-Involved AVP is kept only for backward compatibility with Releases before the 3GPP Release 7.
     
     
    Note:
    The support for extension AVPs is present even thou the ABNF grammar for this AVP does not contain the "* [ AVP ]" line. Be aware that adding any extension AVPs may result in interoperability problems with products that strongly validate the incoming diameter message for it's adherence to the specification.
    • Method Detail

      • hasPocServerRole

        boolean hasPocServerRole()
        Returns true if the PoC-Server-Role AVP is present in the PoC-Information AVP.
      • getPocServerRole

        PocServerRole getPocServerRole()
        Returns the value of the PoC-Server-Role AVP, of type Enumerated.
        Returns:
        the value of the PoC-Server-Role AVP, or null if it has not been set.
      • setPocServerRole

        void setPocServerRole​(PocServerRole pocServerRole)
        Sets the value of the PoC-Server-Role AVP, of type Enumerated.
        Throws:
        NullPointerException - if pocServerRole is null.
      • removePocServerRole

        void removePocServerRole()
        Removes the PoC-Server-Role AVP from the PoC-Information AVP. If the PoC-Server-Role AVP is not present, this method returns silently.
      • hasPocSessionType

        boolean hasPocSessionType()
        Returns true if the PoC-Session-Type AVP is present in the PoC-Information AVP.
      • getPocSessionType

        PocSessionType getPocSessionType()
        Returns the value of the PoC-Session-Type AVP, of type Enumerated.
        Returns:
        the value of the PoC-Session-Type AVP, or null if it has not been set.
      • setPocSessionType

        void setPocSessionType​(PocSessionType pocSessionType)
        Sets the value of the PoC-Session-Type AVP, of type Enumerated.
        Throws:
        NullPointerException - if pocSessionType is null.
      • removePocSessionType

        void removePocSessionType()
        Removes the PoC-Session-Type AVP from the PoC-Information AVP. If the PoC-Session-Type AVP is not present, this method returns silently.
      • hasPocUserRole

        boolean hasPocUserRole()
        Returns true if the PoC-User-Role AVP is present in the PoC-Information AVP.
      • getPocUserRole

        PocUserRole getPocUserRole()
        Returns the value of the PoC-User-Role AVP, of type Grouped.
        Returns:
        the value of the PoC-User-Role AVP, or null if it has not been set.
      • setPocUserRole

        void setPocUserRole​(PocUserRole pocUserRole)
        Sets the value of the PoC-User-Role AVP, of type Grouped.
        Throws:
        NullPointerException - if pocUserRole is null.
      • removePocUserRole

        void removePocUserRole()
        Removes the PoC-User-Role AVP from the PoC-Information AVP. If the PoC-User-Role AVP is not present, this method returns silently.
      • hasPocSessionInitiationType

        boolean hasPocSessionInitiationType()
        Returns true if the PoC-Session-Initiation-Type AVP is present in the PoC-Information AVP.
      • getPocSessionInitiationType

        PocSessionInitiationType getPocSessionInitiationType()
        Returns the value of the PoC-Session-Initiation-Type AVP, of type Enumerated.
        Returns:
        the value of the PoC-Session-Initiation-Type AVP, or null if it has not been set.
      • setPocSessionInitiationType

        void setPocSessionInitiationType​(PocSessionInitiationType pocSessionInitiationType)
        Sets the value of the PoC-Session-Initiation-Type AVP, of type Enumerated.
        Throws:
        NullPointerException - if pocSessionInitiationType is null.
      • removePocSessionInitiationType

        void removePocSessionInitiationType()
        Removes the PoC-Session-Initiation-Type AVP from the PoC-Information AVP. If the PoC-Session-Initiation-Type AVP is not present, this method returns silently.
      • hasPocEventType

        boolean hasPocEventType()
        Returns true if the PoC-Event-Type AVP is present in the PoC-Information AVP.
      • getPocEventType

        PocEventType getPocEventType()
        Returns the value of the PoC-Event-Type AVP, of type Enumerated.
        Returns:
        the value of the PoC-Event-Type AVP, or null if it has not been set.
      • setPocEventType

        void setPocEventType​(PocEventType pocEventType)
        Sets the value of the PoC-Event-Type AVP, of type Enumerated.
        Throws:
        NullPointerException - if pocEventType is null.
      • removePocEventType

        void removePocEventType()
        Removes the PoC-Event-Type AVP from the PoC-Information AVP. If the PoC-Event-Type AVP is not present, this method returns silently.
      • hasNumberOfParticipants

        boolean hasNumberOfParticipants()
        Returns true if the Number-Of-Participants AVP is present in the PoC-Information AVP.
      • getNumberOfParticipants

        long getNumberOfParticipants()
        Returns the value of the Number-Of-Participants AVP, of type Unsigned32. Use hasNumberOfParticipants() to check the existence of this AVP.
        Returns:
        the value of the Number-Of-Participants AVP
        Throws:
        IllegalStateException - if the Number-Of-Participants AVP has not been set.
      • setNumberOfParticipants

        void setNumberOfParticipants​(long numberOfParticipants)
        Sets the value of the Number-Of-Participants AVP, of type Unsigned32.
      • removeNumberOfParticipants

        void removeNumberOfParticipants()
        Removes the Number-Of-Participants AVP from the PoC-Information AVP. If the Number-Of-Participants AVP is not present, this method returns silently.
      • getParticipantsInvolveds

        String[] getParticipantsInvolveds()
        Returns the set of Participants-Involved AVPs. The returned array contains the AVPs in the order they appear in the PoC-Information AVP. A return value of null implies that no Participants-Involved AVPs have been set. The elements in the given array are String objects.
      • setParticipantsInvolved

        void setParticipantsInvolved​(String participantsInvolved)
        Sets a single Participants-Involved AVP in the PoC-Information AVP, of type UTF8String.
        Throws:
        NullPointerException - if participantsInvolved is null.
      • setParticipantsInvolveds

        void setParticipantsInvolveds​(String[] participantsInvolveds)
        Sets the set of Participants-Involved AVPs, with all the values in the given array. The AVPs will be added to the PoC-Information AVP in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getParticipantsInvolveds() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Throws:
        NullPointerException - if participantsInvolveds is null.
      • removeParticipantsInvolveds

        void removeParticipantsInvolveds()
        Removes all Participants-Involved AVPs from the PoC-Information AVP. If no Participants-Involved AVPs are present, this method returns silently.
      • getParticipantGroups

        ParticipantGroup[] getParticipantGroups()
        Returns the set of Participant-Group AVPs. The returned array contains the AVPs in the order they appear in the PoC-Information AVP. A return value of null implies that no Participant-Group AVPs have been set. The elements in the given array are ParticipantGroup objects.
      • setParticipantGroup

        void setParticipantGroup​(ParticipantGroup participantGroup)
        Sets a single Participant-Group AVP in the PoC-Information AVP, of type Grouped.
        Throws:
        NullPointerException - if participantGroup is null.
      • setParticipantGroups

        void setParticipantGroups​(ParticipantGroup[] participantGroups)
        Sets the set of Participant-Group AVPs, with all the values in the given array. The AVPs will be added to the PoC-Information AVP in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getParticipantGroups() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Throws:
        NullPointerException - if participantGroups is null.
      • removeParticipantGroups

        void removeParticipantGroups()
        Removes all Participant-Group AVPs from the PoC-Information AVP. If no Participant-Group AVPs are present, this method returns silently.
      • getTalkBurstExchanges

        TalkBurstExchange[] getTalkBurstExchanges()
        Returns the set of Talk-Burst-Exchange AVPs. The returned array contains the AVPs in the order they appear in the PoC-Information AVP. A return value of null implies that no Talk-Burst-Exchange AVPs have been set. The elements in the given array are TalkBurstExchange objects.
      • setTalkBurstExchange

        void setTalkBurstExchange​(TalkBurstExchange talkBurstExchange)
        Sets a single Talk-Burst-Exchange AVP in the PoC-Information AVP, of type Grouped.
        Throws:
        NullPointerException - if talkBurstExchange is null.
      • setTalkBurstExchanges

        void setTalkBurstExchanges​(TalkBurstExchange[] talkBurstExchanges)
        Sets the set of Talk-Burst-Exchange AVPs, with all the values in the given array. The AVPs will be added to the PoC-Information AVP in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getTalkBurstExchanges() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Throws:
        NullPointerException - if talkBurstExchanges is null.
      • removeTalkBurstExchanges

        void removeTalkBurstExchanges()
        Removes all Talk-Burst-Exchange AVPs from the PoC-Information AVP. If no Talk-Burst-Exchange AVPs are present, this method returns silently.
      • hasPocControllingAddress

        boolean hasPocControllingAddress()
        Returns true if the PoC-Controlling-Address AVP is present in the PoC-Information AVP.
      • getPocControllingAddress

        String getPocControllingAddress()
        Returns the value of the PoC-Controlling-Address AVP, of type UTF8String.
        Returns:
        the value of the PoC-Controlling-Address AVP, or null if it has not been set.
      • setPocControllingAddress

        void setPocControllingAddress​(String pocControllingAddress)
        Sets the value of the PoC-Controlling-Address AVP, of type UTF8String.
        Throws:
        NullPointerException - if pocControllingAddress is null.
      • removePocControllingAddress

        void removePocControllingAddress()
        Removes the PoC-Controlling-Address AVP from the PoC-Information AVP. If the PoC-Controlling-Address AVP is not present, this method returns silently.
      • hasPocGroupName

        boolean hasPocGroupName()
        Returns true if the PoC-Group-Name AVP is present in the PoC-Information AVP.
      • getPocGroupName

        String getPocGroupName()
        Returns the value of the PoC-Group-Name AVP, of type UTF8String.
        Returns:
        the value of the PoC-Group-Name AVP, or null if it has not been set.
      • setPocGroupName

        void setPocGroupName​(String pocGroupName)
        Sets the value of the PoC-Group-Name AVP, of type UTF8String.
        Throws:
        NullPointerException - if pocGroupName is null.
      • removePocGroupName

        void removePocGroupName()
        Removes the PoC-Group-Name AVP from the PoC-Information AVP. If the PoC-Group-Name AVP is not present, this method returns silently.
      • hasPocSessionId

        boolean hasPocSessionId()
        Returns true if the PoC-Session-Id AVP is present in the PoC-Information AVP.
      • getPocSessionId

        String getPocSessionId()
        Returns the value of the PoC-Session-Id AVP, of type UTF8String.
        Returns:
        the value of the PoC-Session-Id AVP, or null if it has not been set.
      • setPocSessionId

        void setPocSessionId​(String pocSessionId)
        Sets the value of the PoC-Session-Id AVP, of type UTF8String.
        Throws:
        NullPointerException - if pocSessionId is null.
      • removePocSessionId

        void removePocSessionId()
        Removes the PoC-Session-Id AVP from the PoC-Information AVP. If the PoC-Session-Id AVP is not present, this method returns silently.
      • hasChargedParty

        boolean hasChargedParty()
        Returns true if the Charged-Party AVP is present in the PoC-Information AVP.
      • getChargedParty

        String getChargedParty()
        Returns the value of the Charged-Party AVP, of type UTF8String.
        Returns:
        the value of the Charged-Party AVP, or null if it has not been set.
      • setChargedParty

        void setChargedParty​(String chargedParty)
        Sets the value of the Charged-Party AVP, of type UTF8String.
        Throws:
        NullPointerException - if chargedParty is null.
      • removeChargedParty

        void removeChargedParty()
        Removes the Charged-Party AVP from the PoC-Information AVP. If the Charged-Party AVP is not present, this method returns silently.
      • getExtensionAvps

        DiameterAvp[] getExtensionAvps()
        Returns the set of extension AVPs. The returned array contains the extension AVPs in the order they appear in the PoC-Information AVP. A return value of null implies that no extensions AVPs have been set.
      • setExtensionAvps

        void setExtensionAvps​(DiameterAvp[] avps)
                       throws AvpNotAllowedException
        Sets the set of extension AVPs with all the values in the given array. The AVPs will be added to PoC-Information AVP in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getExtensionAvps() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Throws:
        AvpNotAllowedException - if an AVP is encountered of a type already known to this class (i.e. an AVP for which get/set methods already appear in this class)
        NullPointerException - if avps is null.
      • removeExtensionAvps

        void removeExtensionAvps()
        Removes all extension AVPs from the PoC-Information AVP. If no extension AVPs are present, this method returns silently.