Module: Mxrb::Schema
- Defined in:
- lib/mxrb/schema/tables.rb
Constant Summary collapse
- TABLES =
Known .mpr SQLite tables and their purpose. Reverse-engineered from Mendix 9/10 projects + mxcli source inspection. Columns marked (?) are inferred / version-dependent.
{ "_MetaData" => { desc: "Single-row table with project-level metadata", columns: %w[MetaDataID MendixVersion ProjectID ProjectName], }, "Unit" => { desc: "Every Mendix artefact (module, entity, page, microflow…) is a Unit", columns: %w[UnitID ContainerID ContainmentName UnitTypeID ContentsHash Contents], }, "UnitType" => { desc: "Lookup table: numeric ID → qualified type name", columns: %w[UnitTypeID Name], }, "PreferredHash" => { desc: "Stores preferred/last-known hash per unit for change detection", columns: %w[UnitID Hash], }, }.freeze
- UNIT_TYPES =
Known UnitType names (qualified Mendix metamodel class names). These appear in UnitType.Name and drive how Contents is decoded.
%w[ Mxmodels.Projects.Project Mxmodels.Projects.Module Mxmodels.DomainModels.DomainModel Mxmodels.DomainModels.Entity Mxmodels.DomainModels.Attribute Mxmodels.DomainModels.Association Mxmodels.Pages.Page Mxmodels.Pages.Layout Mxmodels.Pages.Snippet Mxmodels.Microflows.Microflow Mxmodels.Microflows.Nanoflow Mxmodels.Microflows.Rule Mxmodels.Settings.ProjectSettings Mxmodels.Settings.RuntimeSettings Mxmodels.Security.ProjectSecurity Mxmodels.Security.ModuleSecurity Mxmodels.Texts.SystemTextCollection ].freeze
- ATTRIBUTE_TYPES =
Attribute types as used in the serialized Contents blob.
%w[ AutoNumber Boolean Currency DateTime Decimal Enum Float HashString Integer Long String ].freeze