Interface CoverageInfo
-
- All Superinterfaces:
Cloneable
,DiameterAvp
,GroupedAvp
public interface CoverageInfo extends GroupedAvp
Defines an interface representing the Coverage-Info grouped AVP type. From the Diameter Ro Reference Point Protocol Details (3GPP TS 32.299 V12.11.0) specification:7.2.46 aAa Coverage-Info AVP The Coverage-Info AVP (AVP code 3459) is of type Grouped and provides information on the coverage status (i.e., whether the UE is served by E-UTRAN or not) and the time when the coverage status changed to its current state. When in E-UTRAN coverage, additionally includes a list of location changes (i.e., ECGI change) and associated time for each change. It has the following ABNF grammar: Coverage-Info ::= < AVP Header: 3459> [ Coverage-Status ] [ Change-Time ] * [ Location-Info ]
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 Date
getChangeTime()
Returns the value of the Change-Time AVP, of type Time.CoverageStatus
getCoverageStatus()
Returns the value of the Coverage-Status AVP, of type Enumerated.DiameterAvp[]
getExtensionAvps()
Returns the set of extension AVPs.LocationInfo[]
getLocationInfos()
Returns the set of Location-Info AVPs.boolean
hasChangeTime()
Returns true if the Change-Time AVP is present in the Coverage-Info AVP.boolean
hasCoverageStatus()
Returns true if the Coverage-Status AVP is present in the Coverage-Info AVP.void
removeChangeTime()
Removes the Change-Time AVP from the Coverage-Info AVP.void
removeCoverageStatus()
Removes the Coverage-Status AVP from the Coverage-Info AVP.void
removeExtensionAvps()
Removes all extension AVPs from the Coverage-Info AVP.void
removeLocationInfos()
Removes all Location-Info AVPs from the Coverage-Info AVP.void
setChangeTime(Date changeTime)
Sets the value of the Change-Time AVP, of type Time.void
setCoverageStatus(CoverageStatus coverageStatus)
Sets the value of the Coverage-Status AVP, of type Enumerated.void
setExtensionAvps(DiameterAvp[] avps)
Sets the set of extension AVPs with all the values in the given array.void
setLocationInfo(LocationInfo locationInfo)
Sets a single Location-Info AVP in the Coverage-Info AVP, of type Grouped.void
setLocationInfos(LocationInfo[] locationInfos)
Sets the set of Location-Info 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
-
hasCoverageStatus
boolean hasCoverageStatus()
Returns true if the Coverage-Status AVP is present in the Coverage-Info AVP.
-
getCoverageStatus
CoverageStatus getCoverageStatus()
Returns the value of the Coverage-Status AVP, of type Enumerated.- Returns:
- the value of the Coverage-Status AVP, or null if it has not been set.
-
setCoverageStatus
void setCoverageStatus(CoverageStatus coverageStatus)
Sets the value of the Coverage-Status AVP, of type Enumerated.- Throws:
NullPointerException
- ifcoverageStatus
isnull
.
-
removeCoverageStatus
void removeCoverageStatus()
Removes the Coverage-Status AVP from the Coverage-Info AVP. If the Coverage-Status AVP is not present, this method returns silently.
-
hasChangeTime
boolean hasChangeTime()
Returns true if the Change-Time AVP is present in the Coverage-Info AVP.
-
getChangeTime
Date getChangeTime()
Returns the value of the Change-Time AVP, of type Time.- Returns:
- the value of the Change-Time AVP, or null if it has not been set.
-
setChangeTime
void setChangeTime(Date changeTime)
Sets the value of the Change-Time AVP, of type Time.- Throws:
NullPointerException
- ifchangeTime
isnull
.
-
removeChangeTime
void removeChangeTime()
Removes the Change-Time AVP from the Coverage-Info AVP. If the Change-Time AVP is not present, this method returns silently.
-
getLocationInfos
LocationInfo[] getLocationInfos()
Returns the set of Location-Info AVPs. The returned array contains the AVPs in the order they appear in the Coverage-Info AVP. A return value of null implies that no Location-Info AVPs have been set. The elements in the given array are LocationInfo objects.
-
setLocationInfo
void setLocationInfo(LocationInfo locationInfo)
Sets a single Location-Info AVP in the Coverage-Info AVP, of type Grouped.- Throws:
NullPointerException
- iflocationInfo
isnull
.
-
setLocationInfos
void setLocationInfos(LocationInfo[] locationInfos)
Sets the set of Location-Info AVPs, with all the values in the given array. The AVPs will be added to the Coverage-Info 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 getLocationInfos() is not guaranteed to return the same array instance, e.g. an "==" check would fail.- Throws:
NullPointerException
- iflocationInfos
isnull
.
-
removeLocationInfos
void removeLocationInfos()
Removes all Location-Info AVPs from the Coverage-Info AVP. If no Location-Info 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 Coverage-Info 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 Coverage-Info 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 Coverage-Info AVP. If no extension AVPs are present, this method returns silently.
-
-