Interface SummarySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface SummarySession extends OsidSession

This session defines methods for retrieving payment summaries.

This lookup session defines several views:

  • comparative summary view: elements may be silently omitted or re-ordered
  • plenary summary view: provides a complete result set or is an error condition
  • isolated business view: All summary methods in this session operate, retrieve and pertain to summaries defined explicitly in the current business. Using an isolated view is useful for managing Summaries with the SummaryAdminSession .
  • federated business view: All summary lookup methods in this session operate, retrieve and pertain to all summaries defined in this business and any other summaries implicitly available in this business through business inheritence.

The methods useFederatedBusinessView() and useIsolatedBusinessView() behave as a radio group and one should be selected before invoking any lookup methods.

Summaries may have an additional records indicated by their respective record types. The record may not be accessed through a cast of the Summary .

  • Method Details

    • getBusinessId

      Id getBusinessId()
      Gets the Business Id associated with this session.
      Returns:
      the Business Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getBusiness

      Gets the Business associated with this session.
      Returns:
      the business
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canLookupSummaries

      boolean canLookupSummaries()
      Tests if this user can perform Summary lookups. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PERMISSION_DENIED . This is intended as a hint to an application that may not offer lookup operations to unauthorized users.
      Returns:
      false if lookup methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeSummaryView

      void useComparativeSummaryView()
      The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.
      Compliance:
      mandatory - This method is must be implemented.
    • usePlenarySummaryView

      void usePlenarySummaryView()
      A complete view of the Summary returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.
      Compliance:
      mandatory - This method is must be implemented.
    • useFederatedBusinessView

      void useFederatedBusinessView()
      Federates the view for methods in this session. A federated view will include summaries in catalogs which are children of this catalog in the business hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedBusinessView

      void useIsolatedBusinessView()
      Isolates the view for methods in this session. An isolated view restricts retrievals to this business only.
      Compliance:
      mandatory - This method is must be implemented.
    • getCurrentSummaryForCustomer

      Summary getCurrentSummaryForCustomer(Id customerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the current Summary for the given customer.
      Parameters:
      customerId - a customer Id
      Returns:
      the returned Summary
      Throws:
      NotFoundException - customerId is not found
      NullArgumentException - customerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSummariesForCustomer

      SummaryList getSummariesForCustomer(Id customerId) throws OperationFailedException, PermissionDeniedException
      Gets a SummaryList for the given customer. In plenary mode, the returned list contains all known summaries or an error results. Otherwise, the returned list may contain only those summaries that are accessible through this session.
      Parameters:
      customerId - a customer Id
      Returns:
      the returned Summary list
      Throws:
      NullArgumentException - customerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSummariesByPeriod

      SummaryList getSummariesByPeriod(Id periodId) throws OperationFailedException, PermissionDeniedException
      Gets a SummaryList for the given period. In plenary mode, the returned list contains all known summaries or an error results. Otherwise, the returned list may contain only those summaries that are accessible through this session.
      Parameters:
      periodId - a period Id
      Returns:
      the returned Summary list
      Throws:
      NullArgumentException - periodId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSummariesByPeriodForCustomer

      SummaryList getSummariesByPeriodForCustomer(Id customerId, Id periodId) throws OperationFailedException, PermissionDeniedException
      Gets a SummaryList for the given customer and billing period. In plenary mode, the returned list contains all known summaries or an error results. Otherwise, the returned list may contain only those summaries that are accessible through this session.
      Parameters:
      customerId - a customer Id
      periodId - a period Id
      Returns:
      the returned Summary list
      Throws:
      NullArgumentException - customerId or periodId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPastDueSummaries

      Gets a SummaryList of currently past due payments. In plenary mode, the returned list contains all known summaries or an error results. Otherwise, the returned list may contain only those summaries that are accessible through this session.
      Returns:
      the returned Summary list
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSummaries

      Gets all Summaries . In plenary mode, the returned list contains all known summaries or an error results. Otherwise, the returned list may contain only those summaries that are accessible through this session.
      Returns:
      a list of Summary
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.