Package net.pricefx.common.apibuilder.clicoll


package net.pricefx.common.apibuilder.clicoll
The builder and the helper that every document header logic shares.

Entry point: the binding variable of the document's header logic. Examples are quoteProcessor for a Quote and cProcessor for a Contract. Each of those objects is a CalculableLineItemCollectionBuilder. Call getHelper() on it to read the document.

  • CalculableLineItemCollectionBuilder declares what a header logic can change. It adds and updates inputs and outputs, updates header fields, adds, moves and deletes line items and folders, opens and closes folders, selects and deselects items, and sets render information. switchToAsync() aborts a synchronous calculation and retries it as an asynchronous background job.
  • LineItemHelper reads the document. It returns the root, finds a line item by line ID or by label, and flattens the inputs of a line item.

A header logic collects changes, it does not apply them in statement order. The builder runs the collected changes once per phase, in a fixed order. CalculableLineItemCollectionBuilder documents that order. Read it before you write a logic that both creates a line item and reads it back.

The document-specific subclasses live in the sibling quote, contract, rebateagreement, compensation and customform packages.

See Also: