Interface PushNotificationAnswer

  • All Superinterfaces:
    Cloneable, DiameterMessage, DiameterShBaseMessage, DiameterShMessage

    public interface PushNotificationAnswer
    extends DiameterShMessage
    Defines an interface representing the Push-Notification-Answer command. From the Diameter Sh Reference Point Protocol Details (3GPP TS 29.329 V12.6.0) specification:
     6.1.8        Push-Notification-Answer (PNA) Command
     
     The Push-Notifications-Answer (PNA) command, indicated by the Command-Code
     field set to 309 and the 'R' bit cleared in the Command Flags field, is sent by
     a client in response to the Push-Notification-Request command. The
     Experimental-Result AVP may contain one of the values defined in section 6.2 or
     in 3GPP TS 29.229 [6].
     
     Message Format
     < Push-Notification-Answer > ::=< Diameter Header: 309, PXY, 16777217 >
                                     < Session-Id >
                                     { Vendor-Specific-Application-Id }
                                     [ Result-Code ]
                                     [ Experimental-Result ]
                                     { Auth-Session-State }
                                     { Origin-Host }
                                     { Origin-Realm }
                                     *[ Supported-Features ]
                                     *[ AVP ]
                                     *[ Failed-AVP ]
                                     *[ Proxy-Info ]
                                     *[ Route-Record ] 
     
    • Method Detail

      • hasSessionId

        boolean hasSessionId()
        Returns true if the Session-Id AVP is present in the message.
      • getSessionId

        String getSessionId()
        Returns the value of the Session-Id AVP, of type UTF8String.
        Specified by:
        getSessionId in interface DiameterMessage
        Returns:
        the value of the Session-Id AVP or null if it has not been set on this message
      • removeSessionId

        void removeSessionId()
        Removes the Session-Id AVP from the message. If the Session-Id AVP is not present, this method returns silently.
      • removeVendorSpecificApplicationId

        void removeVendorSpecificApplicationId()
        Removes the Vendor-Specific-Application-Id AVP from the message. If the Vendor-Specific-Application-Id AVP is not present, this method returns silently.
      • hasResultCode

        boolean hasResultCode()
        Returns true if the Result-Code AVP is present in the message.
      • getResultCode

        long getResultCode()
        Returns the value of the Result-Code AVP, of type Unsigned32. Use hasResultCode() to check the existence of this AVP.
        Returns:
        the value of the Result-Code AVP
        Throws:
        IllegalStateException - if the Result-Code AVP has not been set on this message
      • setResultCode

        void setResultCode​(long resultCode)
        Sets the value of the Result-Code AVP, of type Unsigned32.
      • removeResultCode

        void removeResultCode()
        Removes the Result-Code AVP from the message. If the Result-Code AVP is not present, this method returns silently.
      • hasExperimentalResult

        boolean hasExperimentalResult()
        Returns true if the Experimental-Result AVP is present in the message.
      • getExperimentalResult

        ExperimentalResult getExperimentalResult()
        Returns the value of the Experimental-Result AVP, of type Grouped.
        Returns:
        the value of the Experimental-Result AVP or null if it has not been set on this message
      • setExperimentalResult

        void setExperimentalResult​(ExperimentalResult experimentalResult)
        Sets the value of the Experimental-Result AVP, of type Grouped.
        Throws:
        NullPointerException - if experimentalResult is null.
      • removeExperimentalResult

        void removeExperimentalResult()
        Removes the Experimental-Result AVP from the message. If the Experimental-Result AVP is not present, this method returns silently.
      • getAuthSessionState

        AuthSessionState getAuthSessionState()
        Returns the value of the Auth-Session-State AVP, of type Enumerated.
        Specified by:
        getAuthSessionState in interface DiameterShBaseMessage
        Returns:
        the value of the Auth-Session-State AVP or null if it has not been set on this message
      • removeAuthSessionState

        void removeAuthSessionState()
        Removes the Auth-Session-State AVP from the message. If the Auth-Session-State AVP is not present, this method returns silently.
      • hasOriginHost

        boolean hasOriginHost()
        Returns true if the Origin-Host AVP is present in the message.
      • getOriginHost

        DiameterIdentity getOriginHost()
        Returns the value of the Origin-Host AVP, of type DiameterIdentity.
        Specified by:
        getOriginHost in interface DiameterMessage
        Returns:
        the value of the Origin-Host AVP or null if it has not been set on this message
      • removeOriginHost

        void removeOriginHost()
        Removes the Origin-Host AVP from the message. If the Origin-Host AVP is not present, this method returns silently.
      • hasOriginRealm

        boolean hasOriginRealm()
        Returns true if the Origin-Realm AVP is present in the message.
      • getOriginRealm

        DiameterIdentity getOriginRealm()
        Returns the value of the Origin-Realm AVP, of type DiameterIdentity.
        Specified by:
        getOriginRealm in interface DiameterMessage
        Returns:
        the value of the Origin-Realm AVP or null if it has not been set on this message
      • removeOriginRealm

        void removeOriginRealm()
        Removes the Origin-Realm AVP from the message. If the Origin-Realm AVP is not present, this method returns silently.
      • getSupportedFeatureses

        SupportedFeatures[] getSupportedFeatureses()
        Returns the set of Supported-Features AVPs. The returned array contains the AVPs in the order they appear in the message. A return value of null implies that no Supported-Features AVPs have been set. The elements in the given array are SupportedFeatures objects.
        Specified by:
        getSupportedFeatureses in interface DiameterShMessage
      • setSupportedFeatureses

        void setSupportedFeatureses​(SupportedFeatures[] supportedFeatureses)
        Sets the set of Supported-Features AVPs, with all the values in the given array. The AVPs will be added to message in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getSupportedFeatureses() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Specified by:
        setSupportedFeatureses in interface DiameterShMessage
        Throws:
        NullPointerException - if supportedFeatureses is null.
      • removeSupportedFeatureses

        void removeSupportedFeatureses()
        Removes all Supported-Features AVPs from the message. If no Supported-Features AVPs are present, this method returns silently.
      • getFailedAvps

        FailedAvp[] getFailedAvps()
        Returns the set of Failed-AVP AVPs. The returned array contains the AVPs in the order they appear in the message. A return value of null implies that no Failed-AVP AVPs have been set. The elements in the given array are FailedAvp objects.
      • setFailedAvp

        void setFailedAvp​(FailedAvp failedAvp)
        Sets a single Failed-AVP AVP in the message, of type Grouped.
        Throws:
        NullPointerException - if failedAvp is null.
      • setFailedAvps

        void setFailedAvps​(FailedAvp[] failedAvps)
        Sets the set of Failed-AVP AVPs, with all the values in the given array. The AVPs will be added to message in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getFailedAvps() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Throws:
        NullPointerException - if failedAvps is null.
      • removeFailedAvps

        void removeFailedAvps()
        Removes all Failed-AVP AVPs from the message. If no Failed-AVP AVPs are present, this method returns silently.
      • getProxyInfos

        ProxyInfo[] getProxyInfos()
        Returns the set of Proxy-Info AVPs. The returned array contains the AVPs in the order they appear in the message. A return value of null implies that no Proxy-Info AVPs have been set. The elements in the given array are ProxyInfo objects.
        Specified by:
        getProxyInfos in interface DiameterShBaseMessage
      • setProxyInfos

        void setProxyInfos​(ProxyInfo[] proxyInfos)
        Sets the set of Proxy-Info AVPs, with all the values in the given array. The AVPs will be added to message in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getProxyInfos() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Specified by:
        setProxyInfos in interface DiameterShBaseMessage
        Throws:
        NullPointerException - if proxyInfos is null.
      • removeProxyInfos

        void removeProxyInfos()
        Removes all Proxy-Info AVPs from the message. If no Proxy-Info AVPs are present, this method returns silently.
      • getRouteRecords

        DiameterIdentity[] getRouteRecords()
        Returns the set of Route-Record AVPs. The returned array contains the AVPs in the order they appear in the message. A return value of null implies that no Route-Record AVPs have been set. The elements in the given array are DiameterIdentity objects.
        Specified by:
        getRouteRecords in interface DiameterShBaseMessage
      • setRouteRecords

        void setRouteRecords​(DiameterIdentity[] routeRecords)
        Sets the set of Route-Record AVPs, with all the values in the given array. The AVPs will be added to message in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getRouteRecords() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Specified by:
        setRouteRecords in interface DiameterShBaseMessage
        Throws:
        NullPointerException - if routeRecords is null.
      • removeRouteRecords

        void removeRouteRecords()
        Removes all Route-Record AVPs from the message. If no Route-Record AVPs are 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 message. A return value of null implies that no extensions AVPs have been set.
        Specified by:
        getExtensionAvps in interface DiameterShBaseMessage
      • 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 message 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.
        Specified by:
        setExtensionAvps in interface DiameterShBaseMessage
        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 message. If no extension AVPs are present, this method returns silently.