Skip to content

Latest commit

 

History

History
370 lines (250 loc) · 14.9 KB

File metadata and controls

370 lines (250 loc) · 14.9 KB

GLOSSARY.md

Unified Terminology Reference — JWebMP AgGrid Plugin v2.0.0-SNAPSHOT

This glossary provides consistent terminology across this project and links to topic-specific glossaries in the Rules Repository. Topic glossaries take precedence over this root glossary for their scope.


Glossary Precedence Policy

  1. Topic Glossaries (highest precedence for their scope):

  2. Root GLOSSARY.md (this file): Links to topic glossaries; copies only enforced Prompt Language Alignment mappings

  3. Project-Specific Terms: Defined and used only within this repository

When in doubt: Check the most specific topic glossary first; if not found, check root glossary.


Core AgGrid Terms

Grid Component

Definition: A Java class that extends AgGrid<J> and provides server-driven data grid functionality.

Synonyms: Grid, Data Grid, Table Component

Usage: "Create a custom grid by extending AgGrid."

Related:


AgGridOptions

Definition: Configuration container for grid-level settings (columns, rows, pagination, selection mode, theming).

Synonyms: Grid Configuration, Grid Settings

Key Properties:

  • columnDefs — List of column definitions
  • rowData — Row data collection
  • pagination — Enable/disable pagination
  • rowSelection — Row selection mode (single/multiple)

Usage: "Pass AgGridOptions to the grid to configure sorting and filtering."

Related:


AgGridColumnDef

Definition: Represents a single grid column; binds field name, header text, cell renderer, and AG Grid configuration (sortable, filterable, resizable, etc.).

Synonyms: Column Definition, ColDef

Key Properties:

  • field — Data property name
  • headerName — Column title
  • cellRenderer — Optional custom renderer component
  • sortable, filter, resizable — Column features

Usage: "Create a column definition for the 'status' field with a custom cell renderer."

Related:


Cell Renderer

Definition: An Angular component that renders the content of a grid cell. Implements IComponent interface.

Synonyms: Renderer, CellComponent, Custom Renderer

Lifecycle: Instantiated per cell; lifecycle managed by Angular (OnInit, OnDestroy, etc.).

Usage: "Use a custom cell renderer to display status badges or action buttons in each cell."

Related:


Row Data

Definition: The collection of objects displayed as rows in the grid. Each row is a POJO (Plain Old Java Object).

Synonyms: Row Objects, Data Rows, Data Collection

Properties:

  • Each row is identified by a unique field (specified by getRowIdFieldName())
  • Rows are fetched via fetchData() method
  • Updates pushed via WebSocket in real-time

Usage: "Fetch row data from the database and pass it to the grid."

Related:


WebSocket Listener

Definition: A server-side message handler (AgGridFetchDataReceiver) that receives grid data requests from the client and pushes updates back.

Synonyms: Message Handler, Event Receiver, Data Receiver

Registration: One listener per grid ID; registered in AgGrid.init()

Lifecycle: Created when grid initializes; destroyed when grid destroyed (ngOnDestroy)

Usage: "WebSocket listeners enable real-time grid updates without polling."

Related:


Fluent API

Definition: A method-chaining pattern that returns this (or a subclass) to enable expressive configuration.

Synonyms: Method Chaining, Builder Pattern (not Lombok @Builder)

Pattern: CRTP (Curiously Recurring Template Pattern)

Example:

new MyGrid()
    .setHeight("500px")
    .setTheme("ag-theme-alpine")
    .enablePagination()
    .bindColumnDefs("columnDefs");

Usage: "Use the fluent API to configure grids with expressive, readable code."

Related:


Grid Ready Event

Definition: Fired when the grid is initialized in the browser, ready to receive user interaction or data updates.

Synonyms: Grid Initialization, Component Ready

Trigger: Angular @NgAfterViewInit lifecycle hook

Usage: "Grid ready event signals to the server to send initial data via WebSocket."

Related:


Pagination

Definition: Server-side or client-side splitting of large row datasets into fixed-size pages.

Synonyms: Paging, Page-Based Navigation

Configuration:

  • pagination — Enable/disable
  • paginationPageSize — Rows per page (e.g., 20)

Usage: "Enable pagination to display 20 rows per page in large datasets."

Related:


Row Selection

Definition: User ability to select one or more rows in the grid via checkboxes or row click.

Synonyms: Row Picking, Selection Mode

Modes:

  • SINGLE (singleRow) — Select only one row
  • MULTIPLE — Select multiple rows (with checkbox support)

Events: RowSelectedEvent fired when selection changes

Usage: "Enable multiple row selection with checkboxes for bulk actions."

Related:


Theme

Definition: CSS theme applied to the grid; controls colors, fonts, borders, etc.

Synonyms: Grid Theme, Styling, CSS Class

Built-in Themes (AG Grid Community):

  • ag-theme-alpine — Light, clean design
  • ag-theme-balham — Material Design-inspired
  • ag-theme-material — Material 3 design

Usage: "Apply the ag-theme-alpine theme to the grid."

Related:


JWebMP Core Terms (Linked to Rules Repository)

The following terms are defined in the JWebMP Core glossary and should be used consistently:

Term Definition Location Usage Context
Component JWebMP GLOSSARY UI building block; AgGrid is a component
INgComponent JWebMP GLOSSARY Interface for Angular-capable components
IComponent JWebMP GLOSSARY Base component interface
Fluent API Fluent API Rules Method-chaining configuration pattern
CRTP CRTP Rules Generic programming pattern for type-safe fluent APIs
Page Configurator JWebMP GLOSSARY Plugin lifecycle hook

Angular Terms (Linked to Rules Repository)

The following terms are specific to Angular 20 and should use Angular's definitions:

Term Definition Location Usage Context
NgComponent Angular 20 Rules Angular component class
@NgAfterViewInit Angular 20 Rules Lifecycle hook after view initialization
@NgOnDestroy Angular 20 Rules Lifecycle hook on component destruction
@ViewChild Angular 20 Rules Decorator to access child component
GridApi AG Grid Documentation AG Grid API for programmatic grid control
GridOptions AG Grid Documentation Configuration object for AG Grid

Vert.x & Reactive Terms (Linked to Rules Repository)

The following terms relate to reactive programming and Vert.x:

Term Definition Location Usage Context
Uni Vert.x Rules Reactive single value (async/non-blocking)
Multi Vert.x Rules Reactive stream of values (async/non-blocking)
WebSocket Vert.x Rules Bidirectional persistent connection
Subscription RxJS Documentation Subscription to reactive stream
Non-Blocking Vert.x Rules I/O operation does not block thread; returns Uni/Multi

GuicedEE Terms (Linked to Rules Repository)

The following terms relate to dependency injection and GuicedEE:

Term Definition Location Usage Context
IGuiceContext GuicedEE GLOSSARY IoC container; look up instances
SPI GuicedEE GLOSSARY Service Provider Interface; auto-discovery
PageConfigurator GuicedEE GLOSSARY Plugin lifecycle hooks
WebSocketReceiver GuicedEE GLOSSARY Abstract class for WebSocket handlers

Java Language Terms (Linked to Rules Repository)

The following terms are specific to Java 25 LTS:

Term Definition Location Usage Context
Record Java 25 Rules Immutable data carrier class
Pattern Matching Java 25 Rules Type-safe conditionals (switch expressions)
Sealed Class Java 25 Rules Class with restricted subclasses
Generics Java 25 Rules Type parameters (no raw types)
@NonNull / @Nullable Java 25 Rules JSpecify nullness annotations

Acronyms & Abbreviations

Acronym Expansion Usage
CRTP Curiously Recurring Template Pattern Generic programming pattern for fluent APIs
POJO Plain Old Java Object Serializable data class
SPI Service Provider Interface Framework auto-discovery mechanism
IoC Inversion of Control Dependency injection container (GuicedEE)
UI User Interface What users see in the browser
WebSocket Web Socket Protocol Bidirectional network connection
HTTP HyperText Transfer Protocol Request-response protocol (contrasted with WebSocket)
AJAX Asynchronous JavaScript and XML Browser-to-server async request
JSON JavaScript Object Notation Data serialization format
RxJS Reactive Extensions for JavaScript Reactive library for Angular subscriptions
CSS Cascading Style Sheets Grid theming and styling

Prompt Language Alignment (Enforced Mappings)

When prompting AI assistants or describing features, use these terms consistently:

Concept Java Term Angular Term Usage
Grid AgGrid ag-grid-angular Always use "grid" or "AgGrid" in Java; "ag-grid-angular" in templates
Options AgGridOptions gridOptions Container for grid settings
Columns AgGridColumnDef ColDef Column definition
Cell Renderer ICellRenderer Custom component Component that renders cell content
Row Selection RowSelectionMode RowSelectionOptions User ability to select rows
Theme setTheme(String) CSS class Visual styling

Deprecated Terms

The following terms are no longer used in this project (forward-only policy):

Term Replacement Notes
(None yet) - As features are deprecated, old terms will be listed here

Related Documents


How to Update This Glossary

  1. Adding New Terms: Define in the appropriate section (AgGrid Terms, Topic Terms, or Acronyms)
  2. Linking to Topic Glossaries: When a term is defined in the Rules Repository, link rather than copy
  3. Enforcing Prompt Language Alignment: If a term has multiple valid names, document the canonical form in the "Prompt Language Alignment" table
  4. Removing Terms: Mark as deprecated and move to "Deprecated Terms" section (forward-only policy)

Document Metadata

  • Created: December 2, 2025 (Stage 1)
  • Version: 1.0
  • Status: Active
  • Custodian: JWebMP AgGrid Team
  • Last Review: December 2025

Feedback & Suggestions

If you find ambiguities in terminology or need new definitions, please:

  1. Open an issue with the term and context
  2. Propose a definition or link to the appropriate topic glossary
  3. Include where the term should appear (which section)