Interface TmaSubscriptionBaseFacade

All Known Implementing Classes:
DefaultTmaSubscriptionBaseFacade

public interface TmaSubscriptionBaseFacade
Facade gathering TmaSubscriptionBaseData related operations.
Since:
6.6
  • Method Details

    • createSubscriptionBase

      TmaSubscriptionBaseData createSubscriptionBase(String subscriberIdentity, String billingSystemId, String billingAccountId)
      Create new TmaSubscriptionBaseData with the given details.
      Parameters:
      subscriberIdentity - unique identifier of the subscriber from the given billing system.
      billingSystemId - unique identifier of the billing system
      billingAccountId - unique identifier of the billing account
      Returns:
      newly created SubscriptionBase
    • deleteSubscriptionBase

      void deleteSubscriptionBase(String subscriberIdentity, String billingSystemId)
      Deletes the TmaSubscriptionBaseModel associated to a given subscriber identity and a billing system id.
      Parameters:
      subscriberIdentity - unique identifier for subscriber from the billing system
      billingSystemId - unique identifier of the billing system
    • generateSubscriptionBase

      TmaSubscriptionBaseData generateSubscriptionBase(String billingAccountId)
      Create new TmaSubscriptionBaseData with the given details.
      Parameters:
      billingAccountId - unique identifier of the billing account
      Returns:
      newly created SubscriptionBase
    • getMainTariffSubscribedProductIdsForSubscriptionBases

      Set<String> getMainTariffSubscribedProductIdsForSubscriptionBases(List<TmaSubscriptionBaseData> subscriptionBaseList)
      Determines the Subscribed Product Id of the main tariffs corresponding to the each of the subscription bases given.
      Parameters:
      subscriptionBaseList - the list of subscription bases
      Returns:
      the set of Subscribed Product Id's or empty list if the input data is empty
    • getSubscriptionBaseForSubscriberIdentity

      TmaSubscriptionBaseData getSubscriptionBaseForSubscriberIdentity(String subscriberIdentity, String billingSystemID)
      Determines Subscription BaseData for given subscriberIdentity and billingSystemID
      Parameters:
      subscriberIdentity - String instance is Unique identifier for subscriber
      billingSystemID - String instance is Unique identifier for billing system
      Returns:
      TmaSubscriptionBaseData instance for given subscriberIdentity and billingSystemID
    • getAllSubscriptionBases

      Set<TmaSubscriptionBaseData> getAllSubscriptionBases()
      Retrieves a set containing all TmaSubscriptionBaseDatas present in the system.
      Returns:
      Set of TmaSubscriptionBaseDatas
    • getSubscriptionBaseBySubscriberIdentity

      TmaSubscriptionBaseData getSubscriptionBaseBySubscriberIdentity(String subscriberIdentity)
      Retrieve TmaSubscriptionBaseData for given subscriberIdentity.
      Parameters:
      subscriberIdentity - unique identifier of TmaSubscriptionBaseData
      Returns:
      TmaSubscriptionBaseData for given parameters.
    • findSubscriptionBasesByPrincipal

      List<TmaDetailedSubscriptionBaseData> findSubscriptionBasesByPrincipal(String principalUid)
      Get an existing subscription base object for user
      Parameters:
      principalUid - the unique identifier of the object which is intended to be updated
      Returns:
      A List of TmaSubscriptionBaseData belonging to the identified principal
    • isIdenticalBillAgremment

      boolean isIdenticalBillAgremment(List<TmaSubscriptionBaseData> subscriptionBases)
      Checks if subscriptionBases belongs to same TmaBillingAgreementModel
      Parameters:
      subscriptionBases - list of TmaSubscriptionBaseData
      Returns:
      boolean returns true if subscriptionBases belongs to same billingAgreement else false
    • doesSubscriptionBaseExist

      boolean doesSubscriptionBaseExist(String subscriptionBaseId)
      Check if subscription base exists
      Parameters:
      subscriptionBaseId - unique identifier of subscription base
      Returns:
      boolean returns true if subscriptionBase exists otherwise false
    • isSubscriptionBaseAccessibleToUser

      boolean isSubscriptionBaseAccessibleToUser(String subscriptionBaseId, String userId)
      Checks if user has access to subscription base
      Parameters:
      subscriptionBaseId - unique identifier of subscription base
      userId - identifier of user
      Returns:
      boolean true if user has either owner or beneficiary access to subscription base, otherwise false