6. Glossary

Hammer M This glossary is still under construction

Angular library

A library developed by MetaFactory containing code instructions (patterns) and snippets for generation of front-ends written in Angular.

Attribute

The definition of the property of an object, stating its name and datatype.

Buildset

The definition of a collection of files that will be generated when the buildset is run.

Code Instruction

Formerly known as ‘Pattern’. A set of instructions for the generation process.

A Code Instruction is an abstract version of your application code, using an xml element structure to define java classes, methods (called ‘<operation>’), class/object fields and so on. The abstract code is converted to real source code during the generation process.

DTO

Data Transfer Object

External library

An external library is a means by which patterns and snippets may be shared between different MetaFactory projects. It can be used, for example, to make a library with patterns for web applications and a library with patterns and snippets for Swing applications.

Feature

Functionality that is realized by a combination of several Code Instructions.

Frame Component

Hammer S

Hook

A hook is a snippet that is project dependent. When a hook is called by (a snippet in) a Code Instruction and the hook exists in the directory for project-dependent snippets, it is executed.

In general a hook is used to modify the final output of the pattern by adding or replacing some statements.

Map

A collection of properties (key-value combinations).

Metadata

Metadata are switches or data that control the generation proces of Patterns. Technically speaking, Metadata are properties (key-value combinations) and are implemented as ‘metadata’ in the Model. They can have any name or data-type.

Loupe S Model-Code Instruction interaction: Metadata

Metafactory.xml

File name. Often used for the project configuration file.

Model

General name for the ‘Enriched Data Model’.

Object

Analogous tot an entity in a data model.

Package

Hammer S

Pattern

Warning S Deprecating term. Is replaced by Code Instruction.

Originally ‘pattern’ refers to a recurring piece of program code that can be considered to be generic. At MetaFactory the term ‘pattern’ has been used for set of code instructions for the MetaFactory Composer for a long time.

So a MetaFactory ‘Pattern’ is not a pattern in the strict sense. We are not really happy with it, but we are still using it because it has been an established term for a long time.

Patternization

Warning S Deprecating term. Is replaced by Building a Code Instruction.

Property

A key-value combination.

Properties can be defined at every level in a Model (as Metadata) and in Code Instructions. There are functions available to search for properties and read their values. This offers an enormous flexibility.

The drawback is that because there are many ways to use these properties, things can become quite complicated. So using properties asks for discipline and adherence to ‘Best Practices’.

Property File

Hammer S

Snippet

A snippet is a piece of code that enriches XML with real programming features. Besides the usual stuff like variables, conditions, loops, et cetera, there is an huge library of functions available for snippets.

MetaFactory supports Freemarker (recommended) and Velocity.

The “Metafactory” context object

Hammer S

Tool

Hammer S

YAML

YAML (a recursive acronym for “YAML Ain’t Markup Language”) is a human-readable data-serialization language. It is commonly used for configuration files and in applications where data is being stored or transmitted.