Interface ServiceGenericInformation
-
- All Superinterfaces:
Cloneable
,DiameterAvp
,GroupedAvp
public interface ServiceGenericInformation extends GroupedAvp
Defines an interface representing the Service-Generic-Information grouped AVP type. From the Diameter Ro Reference Point Protocol Details (3GPP TS 32.299 V8.2.0) specification:7.2.148 Service-Generic-Information AVP The Service-Generic-Information AVP (AVP code 1256) is of type Grouped. Its purpose is to allow the transmission of service information elements used for all services. The OMA specific use is defined at OMNA WSP Content Type Codes database [210]. It has the following ABNF grammar: Service-Generic-Information ::= < AVP Header: 1256 > [ Application-Server-ID ] [ Application-Service-Type ] [ Application-Session-ID ] [ Delivery-Status ] From OMA-DDS-Charging_Data: "Charging Data".
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.
-
-
Field Summary
-
Fields inherited from interface org.jainslee.resources.diameter.base.DiameterAvp
FLAG_RULE_MAY, FLAG_RULE_MUST, FLAG_RULE_MUSTNOT
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description String
getApplicationServerId()
Returns the value of the Application-Server-ID AVP, of type UTF8String.ApplicationServiceType
getApplicationServiceType()
Returns the value of the Application-Service-Type AVP, of type Enumerated.long
getApplicationSessionId()
Returns the value of the Application-Session-ID AVP, of type Unsigned32.String
getDeliveryStatus()
Returns the value of the Delivery-Status AVP, of type UTF8String.DiameterAvp[]
getExtensionAvps()
Returns the set of extension AVPs.boolean
hasApplicationServerId()
Returns true if the Application-Server-ID AVP is present in the Service-Generic-Information AVP.boolean
hasApplicationServiceType()
Returns true if the Application-Service-Type AVP is present in the Service-Generic-Information AVP.boolean
hasApplicationSessionId()
Returns true if the Application-Session-ID AVP is present in the Service-Generic-Information AVP.boolean
hasDeliveryStatus()
Returns true if the Delivery-Status AVP is present in the Service-Generic-Information AVP.void
removeApplicationServerId()
Removes the Application-Server-ID AVP from the Service-Generic-Information AVP.void
removeApplicationServiceType()
Removes the Application-Service-Type AVP from the Service-Generic-Information AVP.void
removeApplicationSessionId()
Removes the Application-Session-ID AVP from the Service-Generic-Information AVP.void
removeDeliveryStatus()
Removes the Delivery-Status AVP from the Service-Generic-Information AVP.void
removeExtensionAvps()
Removes all extension AVPs from the Service-Generic-Information AVP.void
setApplicationServerId(String applicationServerId)
Sets the value of the Application-Server-ID AVP, of type UTF8String.void
setApplicationServiceType(ApplicationServiceType applicationServiceType)
Sets the value of the Application-Service-Type AVP, of type Enumerated.void
setApplicationSessionId(long applicationSessionId)
Sets the value of the Application-Session-ID AVP, of type Unsigned32.void
setDeliveryStatus(String deliveryStatus)
Sets the value of the Delivery-Status AVP, of type UTF8String.void
setExtensionAvps(DiameterAvp[] avps)
Sets the set of extension AVPs with all the values in the given array.-
Methods inherited from interface org.jainslee.resources.diameter.base.DiameterAvp
byteArrayValue, clone, doubleValue, floatValue, getCode, getMandatoryRule, getName, getProtectedRule, getType, getVendorID, groupedAvpValue, intValue, longValue, stringValue
-
-
-
-
Method Detail
-
hasApplicationServerId
boolean hasApplicationServerId()
Returns true if the Application-Server-ID AVP is present in the Service-Generic-Information AVP.
-
getApplicationServerId
String getApplicationServerId()
Returns the value of the Application-Server-ID AVP, of type UTF8String.- Returns:
- the value of the Application-Server-ID AVP, or null if it has not been set.
-
setApplicationServerId
void setApplicationServerId(String applicationServerId)
Sets the value of the Application-Server-ID AVP, of type UTF8String.- Throws:
NullPointerException
- ifapplicationServerId
isnull
.
-
removeApplicationServerId
void removeApplicationServerId()
Removes the Application-Server-ID AVP from the Service-Generic-Information AVP. If the Application-Server-ID AVP is not present, this method returns silently.
-
hasApplicationServiceType
boolean hasApplicationServiceType()
Returns true if the Application-Service-Type AVP is present in the Service-Generic-Information AVP.
-
getApplicationServiceType
ApplicationServiceType getApplicationServiceType()
Returns the value of the Application-Service-Type AVP, of type Enumerated.- Returns:
- the value of the Application-Service-Type AVP, or null if it has not been set.
-
setApplicationServiceType
void setApplicationServiceType(ApplicationServiceType applicationServiceType)
Sets the value of the Application-Service-Type AVP, of type Enumerated.- Throws:
NullPointerException
- ifapplicationServiceType
isnull
.
-
removeApplicationServiceType
void removeApplicationServiceType()
Removes the Application-Service-Type AVP from the Service-Generic-Information AVP. If the Application-Service-Type AVP is not present, this method returns silently.
-
hasApplicationSessionId
boolean hasApplicationSessionId()
Returns true if the Application-Session-ID AVP is present in the Service-Generic-Information AVP.
-
getApplicationSessionId
long getApplicationSessionId()
Returns the value of the Application-Session-ID AVP, of type Unsigned32. UsehasApplicationSessionId()
to check the existence of this AVP.- Returns:
- the value of the Application-Session-ID AVP
- Throws:
IllegalStateException
- if the Application-Session-ID AVP has not been set.
-
setApplicationSessionId
void setApplicationSessionId(long applicationSessionId)
Sets the value of the Application-Session-ID AVP, of type Unsigned32.
-
removeApplicationSessionId
void removeApplicationSessionId()
Removes the Application-Session-ID AVP from the Service-Generic-Information AVP. If the Application-Session-ID AVP is not present, this method returns silently.
-
hasDeliveryStatus
boolean hasDeliveryStatus()
Returns true if the Delivery-Status AVP is present in the Service-Generic-Information AVP.
-
getDeliveryStatus
String getDeliveryStatus()
Returns the value of the Delivery-Status AVP, of type UTF8String.- Returns:
- the value of the Delivery-Status AVP, or null if it has not been set.
-
setDeliveryStatus
void setDeliveryStatus(String deliveryStatus)
Sets the value of the Delivery-Status AVP, of type UTF8String.- Throws:
NullPointerException
- ifdeliveryStatus
isnull
.
-
removeDeliveryStatus
void removeDeliveryStatus()
Removes the Delivery-Status AVP from the Service-Generic-Information AVP. If the Delivery-Status 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 Service-Generic-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 Service-Generic-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
- ifavps
isnull
.
-
removeExtensionAvps
void removeExtensionAvps()
Removes all extension AVPs from the Service-Generic-Information AVP. If no extension AVPs are present, this method returns silently.
-
-