|
4 | 4 |
|
5 | 5 | Autogenerate php classes and interfaces for NodeTypes with type safe property accessor methods that allow full static analysis. |
6 | 6 |
|
7 | | -- NodeTypeObject are created for each non abstract NodeType in the namespace of the given package. |
8 | | -- NodeTypeObjects are stored in the `NodeTypes` folder using all parts of the NodeTypeName as folders |
9 | | -- The namespace of each NodeTypeObject is derived from the package-key with added ``NodeTypes` |
10 | | -- The className of a NodeTypeObject is defined by the last part of the NodeTypeName with postfix `NodeTypeObject` |
| 7 | +- NodeObjects are created for each non abstract NodeType in the namespace of the given package. |
| 8 | +- NodeInterfaces are created for each NodeType in the namespace of the given package. |
| 9 | +- NodeObjects and NodeInterfaces are stored in the `NodeTypes` folder using all parts of the NodeTypeName as folders |
| 10 | +- The namespace of each NodeTypeObject/NodeInterface is derived from the package-key with added ``NodeTypes` |
| 11 | +- The className of a NodeObject is defined by the last part of the NodeTypeName with postfix `NodeObject` |
| 12 | +- The interfaceName of a NodeInterface is defined by the last part of the NodeTypeName with postfix `NodeInterface` |
11 | 13 |
|
12 | 14 | ## Preconditions |
13 | 15 |
|
14 | | -The following preconditions have to be met for a package to use NodeTypeObjects. |
| 16 | +The following preconditions have to be met for a package to use NodeObject. |
15 | 17 |
|
16 | 18 | - The php namespace of the package is directly derived from the Neos package key. As is the default and best practice. |
17 | 19 | - The Package registers a PSR4 Namespace for `NodeTypes` in the `composer.json` that points to the `NodeTypes` folder. |
18 | | -- The pattern `*NodeTypeObject.php` is added to `.gitignore` to avoid committing the generated files. |
19 | | -- The commands `nodetypeobjects:build` and `nodetypeobjects:clean` are integrated into build processes and watchers |
| 20 | +- The pattern `NodeTypes/**/*NodeObject.php` and `NodeTypes/**/*NodeInterface.php` are added to `.gitignore` to avoid committing the generated files. |
| 21 | +- The commands `nodeobjects:build` and `nodeobjects:clean` are integrated into build processes and watchers |
20 | 22 |
|
21 | 23 | ## Usage |
22 | 24 |
|
23 | 25 | The package defines the following cli commands |
24 | 26 |
|
25 | | -- `./flow nodetypeobjects:build Vendor.Site` : regenerate all NodeTypeObject in the given package. |
26 | | -- `./flow nodetypeobjects:clean Vendor.Site` : remove all NodeTypeObject in the given package. This will also remove orphaned NodeObjects. |
| 27 | +- `./flow nodeobjects:build Vendor.Site` : regenerate all NodeObject in the given package. |
| 28 | +- `./flow nodeobjects:clean Vendor.Site` : remove all NodeObject in the given package. This will also remove orphaned NodeObjects. |
27 | 29 |
|
28 | 30 | ## Installation |
29 | 31 |
|
|
0 commit comments