Class SamplePostRatingComplexTaxationExtension

java.lang.Object
oracle.communication.brm.charging.sdk.extensions.SamplePostRatingComplexTaxationExtension
All Implemented Interfaces:
PostRatingExtension, oracle.communication.brm.charging.extensions.framework.ExtensionCallback<PostRatingExtensionContext>

public final class SamplePostRatingComplexTaxationExtension extends Object implements PostRatingExtension
Sample post rating custom logic for doing complex taxation. Applies federal tax and sales tax based on the tax configuration loaded into the extension cache This program overrides default tax configuration using the following table:

| TaxCode | Pkg | Rate(%) | Start | End | Level | List | Descr | Rule | | usage | U | 5.0 | 01/01/2011 | 12/31/2012 | Fed | US | USF | Std | | usage | U | 8.0 | 01/01/2011 | 12/31/2012 | Sta | CA | USTA | Std | | usage | U | 6.0 | 01/01/2013 | 12/31/2018 | Fed | US | USF | Std | | usage | U | 8.5 | 01/01/2013 | 12/31/2018 | Sta | CA,AZ | USTA | Std | | purchase | V | 8.25 | 01/01/2011 | 12/31/2019 | Sales | CA | PSLS | Std |

The default tax configuration in "charging-settings.xml' config file must include a row for the tax code which will be overridden by the extension. Note: If you do not want any default tax to be applied, include a row for the tax code with 0% tax rate

  • Constructor Details

    • SamplePostRatingComplexTaxationExtension

      public SamplePostRatingComplexTaxationExtension()
  • Method Details

    • initialize

      public void initialize(ExtensionContext extensionContext) throws ExtensionException
      Description copied from interface: oracle.communication.brm.charging.extensions.framework.ExtensionCallback
      method is invoked once at ECS Node startup time to allow integrators a spot to populate private data members that are required by the extension callback.
      Specified by:
      initialize in interface oracle.communication.brm.charging.extensions.framework.ExtensionCallback<PostRatingExtensionContext>
      Specified by:
      initialize in interface PostRatingExtension
      Parameters:
      extensionContext - the context which exposes objects that are needed at initialization time.
      Throws:
      ExtensionException - if a non-recoverable error occurs during initialization.
    • execute

      public void execute(PostRatingExtensionContext extensionContext) throws ExtensionException
      Description copied from interface: PostRatingExtension
      This execute method is specific to a PostRatingExtension hook. Operator should implement this method to perform their custom logic that is specific to their Post OCS Rating needs.
      Specified by:
      execute in interface PostRatingExtension
      Parameters:
      extensionContext - context information pertaining to Post OCS Rating.
      Throws:
      ExtensionException - throw and exception if a non-recoverable error occurs. This exception will be logged and a EXTENSION_ERROR ServiceEvent will be set into the UsageResponse.
    • shutdown

      public void shutdown(ExtensionContext extensionContext) throws ExtensionException
      Description copied from interface: oracle.communication.brm.charging.extensions.framework.ExtensionCallback
      method is invoked once at ECS Node shutdown time to allow integrators a spot to release any resources that were acquired by the Extension.
      Specified by:
      shutdown in interface oracle.communication.brm.charging.extensions.framework.ExtensionCallback<PostRatingExtensionContext>
      Specified by:
      shutdown in interface PostRatingExtension
      Parameters:
      extensionContext - the context which exposes objects that are needed at shutdown time.
      Throws:
      ExtensionException - if a non-recoverable error occurs during shutdown.