1. Minor Java API Release

There are a few moderate changes coming with this release. The changes are backwards-compatible, so any code using API 16.x should work fine.

JIRA Version

New API Version

7.1+

16.4.0

See Structure API Versions for full version information and downloads.

2. Compatible Changes in the Java API

2.1. New methods in export API

Two new methods have been added to the export API to support the "after filtering" option in aggregated columns – ExportRequestContext.requireAttribute(AttributeSpec, boolean) and ExportRow.get(AttributeSpec, boolean).

Another new method, ExportRequestContext.getForestSpec(), gives the export renderer provider access to the actual ForestSpec being exported.

2.2. ItemTypeRegistry interface

ItemTypeRegistry allows you to convert string item type IDs like "com.almworks.jira.structure:type-issue" to numeric IDs for more efficient storage and transport. Structure uses this registry internally, and now it's been made public.

Please note that the numeric IDs generated by ItemTypeRegistry are valid only on the JIRA instance they were generated on (including JIRA Data Center – they are the same for all nodes in a cluster). You cannot transfer them between different JIRA instances, you'll need to use the long string IDs for that.

2.3. Description property in GeneratorPreset

We've added optional descriptions to generator presets, so there's a new constructor GeneratorPreset(label, description, parameters) and a new method GeneratorPreset.getDescription(). Descriptions, if present, are shown as tooltips in the user interface.

2.4. Miscellaneous

  • Added equals() and hashCode() implementations to HistoryEntry and HistoryEntry.Change.

  • Added info() methods to ConsiderateLogger.

  • Added encodeURIComponent() to StructureUtil.