Expiration Notifier

This plugin sends notification E-Mails about expiring assets.

More specifically spoken it searches for assets which fulfill a certain date-based condition and then determines a list of notification recipients for each asset found.

The primary use case is to send warnings about expiring usage rights to users who downloaded the expiring asset in the past.

Properties

To be configured in {home}/appserver/conf/custom.properties

expirationNotifier.1.warnAheadPeriodInDays

type: int, required: yes

How many days before reaching the expiration date should the notification be sent?

expirationNotifier.1.assetFinders

type: list of bean names, required: yes

A comma-separated list of bean names of type ExpiringAssetsFinder. By default the following asset finder beans are available:

availabilityExpiringAssetsFinder

Finds assets based on the Valid to date of the general Asset Availability.

dateInfofieldExpiringAssetsFinder

Finds assets based on a configured information field of type Date.

You can also define your own custom asset finder by implementing the ExpiringAssetsFinder interface.

expirationNotifier.1.dateInfofieldExpiringAssetsFinder.informationFieldId

type: long, required: yes (if dateInfofieldExpiringAssetsFinder is used)

The ID of the Date information field to use for dateInfofieldExpiringAssetsFinder.

expirationNotifier.1.recipientFinders

type: list of bean names, required: yes, default: -

A comma-separated list of bean names of type NotificationRecipientFinder. Each NotificationRecipientFinder returns a set of notification recipients for each asset. By default the following recipient finder beans are available:

statisticsNotificationRecipientFinder

Returns the E-Mail addresses of all users who have downloaded the expiring asset by querying the statistics database table.

globalStorageNotificationRecipientFinder

Tries to fetch a set of E-Mail addresses from the Global Data Storage using the configured storage key and the expiring asset as reference.

You can also define your own custom recipient finder by implementing the NotificationRecipientFinder interface.

expirationNotifier.1.globalStorageNotificationRecipientFinder.globalStorageKey

type: string, required: yes (if globalStorageNotificationRecipientFinder is used)

The Global Storage Key to use in globalStorageNotificationRecipientFinder.

expirationNotifier.1.subjectMessageKey

type: string, required: yes, default: expirationNotifier.mail.subject

The Spring message key to use to generate the mail subject. It is possible to use placeholders in the form $[propertyName] in your localized message. These will automatically be replaced with the corresponding configuration value, e.g. $[warnAheadPeriodInDays] will be replaced with the number value configured for the current notifier.

expirationNotifier.1.mailTemplatePath

type: string, required: yes, default: ch.brix.expirationNotifier.default

The path to the velocity mail template.

Release Notes

1.0

Initial Version