Skip to main content

TvxSetup

TvxSetup = class(TvxModule)

Example

procedure ScriptEvent(var Value: Variant);
begin
if Setup <> nil then
Value := Setup.VeloxAPIUrl
else
Value := Null;
end;

Usage

TvxSetup represents the Velox-provided shared across the Velox process Velox setup used by scripts, email, files and API/web integrations.

Acquisition and ownership

Scripts do not construct this class. Use the global Setup reference and check it for nil. Velox binds the Velox-provided singleton when General Setup has been created and loaded.

Do not free, replace or retain the object beyond the current script execution. It is shared by unrelated actions and services in the same process, so a property assignment is a global configuration mutation rather than action-local state.

Additional Technical Info

TvxSetup is Velox's shared General Setup module. It supplies process-wide defaults for email, filesystem paths, reporting and Velox API/web addresses.

Script-visible members

There is no script-visible constructor, reload or save method on this class. Inherited members remain documented at their declaring classes.

Locking, mutation and durability

Each visible scalar getter/setter locks the setup object around one field operation. A computed URL locks while reading all its contributing fields. This does not make a sequence of separate script reads/writes transactional, and it does not protect consumers after they have copied a value.

EmailBody is the exception: its getter returns the owned live list after releasing the lock, so later list edits are unsynchronised. Its property setter copies items under the lock.

A setter changes the in-memory singleton immediately but does not call the setup SaveModule operation. The value can be lost or replaced by reload/restart, or included if host code later explicitly saves the setup. Use the General Setup workflow for governed durable changes.

When consumers see changes

Setting groupTypical consumption
Email sender/server/body/admin defaultsCopied when a new email helper is constructed; an existing helper keeps its snapshot.
Admin/notification action recipientsRead and tag-processed when action recipient defaults are resolved.
DefaultFilePathCopied into several file/action/transport objects and compile-time constants; existing instances can retain their older value.
API/web URLsComputed on each property read; service/REST objects can separately snapshot fields and listeners are not restarted by a setter.
EnableLogUserReportingStored and transferred, but the current product source has no operational consumer beyond setup/script access.

Security and operational boundaries

Changing this object can redirect notification email, change sender identity, alter future file paths or redirect API calls for other executions. Validate and authorise values before assignment, avoid secrets in domains/paths/body text, and never treat a successful setter as proof that a directory, mail server, URL, certificate or listener works.

Concurrent scripts can observe mixed configurations between separate property calls. Prefer read-only access during execution and perform persistent global changes through controlled administration and change management.

Created 2026-07-15