Plug-in (Function & Smart Service)Free

Load Resource Bundle

by Appian Corporation

Description

Loads a properties file which is an Appian document and returns a dictionary of labels & values. This is useful for internationalizing form labels, instructions, etc. This differs from the resource() function in that the file is read from the Document Management system of Appian instead of from a specific path on disk. This function also loads the entire file into a dictionary instead of reading one key/value pair at a time.

How to i18n your Form:

  1. Store your key=value pairs in a properties file as an Appian document for each supported language.
  2. One each SAIL form, load the key=value pairs using one of the plugin functions.
  3. On your form, any place you want internationalized text, set the text by indexing into the returned dictionary of bundle data by specific keys.

Features

Functions

  • loadbundle() load a single bundle resource file which is an Appian document
  • loadbundlefromfolder() load one or more bundle resource files from an Appian folder for a specific locale

Release notes

Added license file

Version history (6)

1.3.0

Replace deprecated content APIs with modernized file management APIs. See the 23.2 Release notes here https://docs.appian.com/suite/help/23.2/Appian_Release_Notes.html#modernized-file-management-apis

1.2.3

Updated guava library

1.2.1

Library upgrade: https://docs.google.com/document/d/1z-rTjX2BlvYVx7txJacIYvBxWVORsUUZkTTU8OWFsvY/edit#

1.2.0

UPDATE 2019-08-09
The plugin has a new function loadbundlefromfolder()

UPDATE 2018-11-01
The plugin now uses a caching mechanism to minimize file reads. Keys are retrieved from cache and the cache is refreshed every minute. This improvements performance and scalability of your internationalization solution. It is recommended that everyone upgrades to this latest version.

UPDATE 2014-03-24
The plugin now supports complex characters (Chinese, Russian, etc.) by forcing UTF-8 character encoding.

1.2.0

UPDATE 2019-08-09
The plugin has a new function loadbundlefromfolder()

UPDATE 2018-11-01
The plugin now uses a caching mechanism to minimize file reads. Keys are retrieved from cache and the cache is refreshed every minute. This improvements performance and scalability of your internationalization solution. It is recommended that everyone upgrades to this latest version.

UPDATE 2014-03-24
The plugin now supports complex characters (Chinese, Russian, etc.) by forcing UTF-8 character encoding.

1.1.0

[MIGRATED] Loads a properties file from Collab and returns a dictionary of labels & values. This is useful for internationalizing Form labels, instructions, etc. This differs from the resource() function in that the file is read from the Document Management system of Appian instead of from a specific path on disk. This function also loads the entire file into a dictionary instead of reading one key/value pair at a time.
UPDATE 2018-11-01
The plugin now uses a caching mechanism to minimize file reads. Keys are retrieved from cache and the cache is refreshed every minute. This improvements performance and scalability of your internationalization solution. It is recommended that everyone upgrades to this latest version.

UPDATE 2014-03-24
The plugin now supports complex characters (Chinese, Russian, etc.) by forcing UTF-8 character encoding.

How to i18n your Form:

  1. Store your label=value pairs in a different file in the Document Area for each supported language.
  2. Add an EntityData node input to your form. We'll call the node input ac!bundle
  3. Use this plugin to load the label=value pairs into the EntityData.data field. Pass in a different document to the function based on the users locale (use an Expression Rule to do this)
  4. On your form, any place you want internationalized text, set the text value to the expression =ac!bundle.data["label1"] where "label1" is the key for your text. Repeat for each label.