Package com.axelor.meta.headless
package com.axelor.meta.headless
-
ClassDescriptionA question the browser would put to the user: an
alertfrom an action, a button'sprompt, or a request to re-authenticate.An action chain as its actions' definitions write it out — read, never run: groups flattened with their conditions, validations and conditions with their checks, records and attributes with their fields, Java steps and navigation by name.Anaction-recordoraction-attrs: what it sets.A check of a validation or condition.Anaction-condition: checks that set field errors, which stop the chain.A field anaction-recordsets, or an attribute anaction-attrssets.Anaction-group, its items in order.A Java step:class:method, directly or through anaction-method.A name no action answers to: it does nothing, and a run skips it.Anaction-view: navigation, returned to the caller rather than followed.Another kind of action: a script, a report, an export, a web service...A place in a chain where a run meets something only a person or the browser handles.save,validate,closeornew, handled by the client.An action already written out above it, not repeated: a cycle, or too deep.One element of a chain, written out.Anaction-validate: its alerts, errors and messages in order.The only way a session asks for a decision: wherever the browser would put a dialog in front of the user.A caller's answer where the browser would ask the user.Something a browser would do with a form that a session does not, found from the definitions alone.A node of a form's record tree: the root, a line of one of its collections, a line of a line, to any depth.How a segment names its line.One step down the tree: a line of a collection of the node above.A node's path and a name under it, asFormPath.split(java.lang.String)finds them.What oneFormSession.run(java.util.List<com.axelor.meta.headless.FormStep>, com.axelor.meta.headless.ActionInteraction)orFormSession.resume(com.axelor.meta.headless.Decision, com.axelor.meta.headless.ActionInteraction)came to: the record as the session holds it, whether it was saved, what the actions set and said, and why the run stopped.A message the browser would have shown.A record an action wrote in its own round trip, committed with it (ActionWrites).A form on a record, run on the server: steps change the record and its lines and run the chains the form declares for them, each in the context of the record or line it acts on, as the web client runs it.What a session needs to know about a form, compiled from views once and cached: the model, its hooks, fields and buttons, the fields a record is read with, the limits of running it without a browser, and, for each one-to-many, the spec of a line there — a line is a form too.A button or a menu item of the form.A field of the form's model, a custom field (attrs.color), a dotted field the form shows (customer.email) or a dummy field of the view.Everything aFormSessionholds between two requests: which form, the record tree and its open lines, the steps and where the run is in them, and the open question with what to do with each answer.An operation on a form's record tree.Adds a line: the line's defaults, itsonNewin the line's context, then the seed.Asks a button'spromptas a question, then runs itsonClick.Commits a line into its collection: the collection'sonChange, in the parent's context.Takes a line out of its collection; the collection'sonChangeruns straight away.Runs a chain the form declares for the node — a hook, a field'sonChange, a button'sonClick— and nothing else.Saves the root with its lines: commits the open lines, runsonSave, saves, reads the root back, runsonLoad.Writes values into their nodes, in order, each followed by its field'sonChangein that node's context.Runs forms on the server, with no browser: the entry point of headless forms.Registers the listener that tellsActionWriteswhat a form's actions write: each write once its transaction commits, on the thread that committed it.The record a session opens on.