See also: Writing Registry Plugins
Some additional conventions are required when writing a Normalization Plugin.
- The name of the Plugin should match the format
- The Plugin must implement one function, which is defined in
normalize(), which accepts an array of data in typical Cake format and returns an array of normalized data in the same format. This function should be sure to copy any data to the return array that it does not modify, not just normalized data.
Because of the way data is passed to plugins, if a model alias is in use the Plugin will only see that in the data. This typically happens during Enrollment Flows, where the model alias
EnrolleeCoPersonRole is used instead of
CoPersonRole, and so the Plugin will need to check both names to normalize CoPersonRole data.