public interface ExtensionBalance
Modifier and Type | Method and Description |
---|---|
java.util.Map<java.lang.Integer,java.lang.String> |
fetchBalanceDetails()
This method Fetches the balance numeric code and beCode
|
void |
generateSpendingLimitNotificationEvents(java.lang.String beCode,
UnitValue existingCurrBalanceWithConsumed,
UnitValue newCurrBalanceWithConsumed,
java.util.Collection<oracle.communication.brm.charging.config.offerprofile.OfferProfile> offerProfiles,
java.time.ZonedDateTime eventTime,
oracle.communication.brm.charging.extensions.client.notification.UpdateExtensionContext extensionContext)
This method Generates the Spending Limit Notification Event
|
java.util.Map<java.lang.String,oracle.communication.brm.charging.util.misc.Pair<UnitValue,UnitValue>> |
getAllRemainingBalance()
This method returns the map of remaining balances with key as balance resource code
the first value in the pair is remaining balance without credit limit cap; the second value is up to credit limit
|
UnitValue |
getAvailableBalance(java.lang.Integer numericCode)
This method calculates and returns the available balance valid at current usage
session start time.Calculates and returns the available balance.
|
UnitValue |
getAvailableBalance(java.lang.Integer numericCode,
java.lang.String sessionId,
java.time.ZonedDateTime sessionStartTime)
This method calculates and returns the available balance as applicable at the sessionStartTime passed.
|
UnitValue |
getAvailableBalance(java.lang.String beCode,
java.lang.String sessionId,
java.time.ZonedDateTime sessionStartTime) |
UnitValue |
getAvailableBalanceUpToCreditLimit(java.lang.Integer paramInteger)
This method returns the Available Balance UpTo CreditLimit
|
java.lang.String |
getBalanceId()
This method returns the extension balance Id
|
ExtensionBusinessProfile |
getBusinessProfileDetails()
This method returns the extension business profile object
|
ExtensionCreditProfile |
getCreditProfileDetails()
This method returns the extension credit profile object that has the details
about the credit limits and thresholds.
|
UnitValue |
getCurrentBalance(java.lang.Integer numericCode,
java.time.ZonedDateTime sessionStartTime)
Returns the current balance for the given resource considering the balance items
valid during the specified validity range
|
java.lang.String |
getOwnerId()
This method returns the owner Id
|
UnitValue |
getRemainingBalance(java.lang.Integer numericCode)
This method returns the remaining balance valid at current usage
session start time.
|
UnitValue |
getRemainingBalanceUptoCreditLimit(java.lang.Integer numericCode)
This method returns the remaining balance valid at current usage
session start time capped at teh credit limit.
|
UnitValue getAvailableBalance(java.lang.Integer numericCode)
numericCode
- balanceElement's unique numeric code (eg, 840, 978, etc..)UnitValue getAvailableBalance(java.lang.Integer numericCode, java.lang.String sessionId, java.time.ZonedDateTime sessionStartTime)
Note: The reserved amount already has the opposite sign (debit) as current balance (credit) and hence is 'added' in the code below. This method calls the utility method to perform the actual functionality
numericCode
- balanceElement's unique numeric code (eg, 840, 978, etc..)sessionId
- that identifies the current session, if null is supplied
then the result will be the total unreserved available balance.sessionStartTime
- the session start timeUnitValue getAvailableBalance(java.lang.String beCode, java.lang.String sessionId, java.time.ZonedDateTime sessionStartTime)
void generateSpendingLimitNotificationEvents(java.lang.String beCode, UnitValue existingCurrBalanceWithConsumed, UnitValue newCurrBalanceWithConsumed, java.util.Collection<oracle.communication.brm.charging.config.offerprofile.OfferProfile> offerProfiles, java.time.ZonedDateTime eventTime, oracle.communication.brm.charging.extensions.client.notification.UpdateExtensionContext extensionContext)
java.util.Map<java.lang.Integer,java.lang.String> fetchBalanceDetails()
UnitValue getCurrentBalance(java.lang.Integer numericCode, java.time.ZonedDateTime sessionStartTime)
numericCode
- resource idsessionStartTime
- Session Start TimeUnitValue getRemainingBalance(java.lang.Integer numericCode)
numericCode
- balanceElement's unique numeric code (eg, 840, 978, etc..)UnitValue getRemainingBalanceUptoCreditLimit(java.lang.Integer numericCode)
numericCode
- balanceElement's unique numeric code (eg, 840, 978, etc..)java.util.Map<java.lang.String,oracle.communication.brm.charging.util.misc.Pair<UnitValue,UnitValue>> getAllRemainingBalance()
ExtensionCreditProfile getCreditProfileDetails()
ExtensionBusinessProfile getBusinessProfileDetails()
java.lang.String getBalanceId()
java.lang.String getOwnerId()
UnitValue getAvailableBalanceUpToCreditLimit(java.lang.Integer paramInteger)