CSDataFlowImportTransformationPlugin
extends CSPlugin
in package
The base of all quality rule action plugins To be included, it must be placed in a plugins/rule/action subfolder with a file name ending with RuleAction.php.
Tags
Table of Contents
- __call() : mixed|string
- All method calls which are not defined within the plugin are forwarded to the module Therefore it is possible to get, e.g. the label by calling the getSuiteName() method.
- _construct() : void
- The construct method may be used to initialize custom plugin properties it is called immediately after instantiating the plugin all arguments passed to the getPlugins method are also available in this method.
- addAlternativePluginFolder() : void
- A path to a specific folder in which should be search for plugins.
- addConfigField() : mixed
- Allows the plugin to add custom configuration fields to the editor it is opened with
- addConfigFields() : void
- Overwrite this method to add your config fields with calling {@see addConfigField}
- addTransformationFields() : mixed
- Overwrite this method to add your configuration fields
- addTransformationTargetField() : void
- This method prepares transformation target field on UI.
- getAlternativePluginFolder() : array<string|int, mixed>
- getConfigValue() : string
- Retrieves a configuration value
- getEditor() : CSGuiEditor
- Internal method to retrieve the editor connected with
- getExtractionFields() : mixed
- {@inheritdoc}
- getLevel() : int
- The getLevel method may be overwritten in the plugins and defines the order, the plugins are called, where the highest level is called first.
- getListDescription() : string
- getMetaData() : CSMetaData
- Returns the CSMetaData of the current plugin.
- getModule() : CSModule
- Returns the module, if the plugin is defined within a module.
- getPlugin() : CSPlugin|null
- Returns a CSPlugin for the given plugin type and plugin class name.
- getPluginChooser() : array<string|int, mixed>
- Returns an array all defined CSPlugins for the current plugin type
- getPluginData() : mixed
- getPluginDefinitionFile() : string
- Returns the path to the file, the plugin is defined.
- getPluginName() : mixed
- getPlugins() : array<string|int, CSPlugin>
- Returns all defined CSPlugins for the current plugin type It should be used to get all matching plugins for a given plugin api.
- getPluginsInModule() : array<string|int, mixed>
- Returns all CSPlugins for the current plugin type which are defined within the given module It should be used to get all matching plugins for a given plugin api.
- getSourceFields() : array<string|int, CSDataFlowExtractionField>
- getTargetFields() : array<string|int, mixed>
- getTransformation() : CSDataFlowImportTransformation
- getTransformationTargetField() : string
- Returns value of transformation target field.
- isAvailable() : bool
- This method is called to check, whether the plugin is available.
- isAvailableFor() : bool
- This method has to be overwritten to announce to which object types your plugin is compatible with
- isSubTransformation() : bool
- Method to check whether SubTransformation enabled for plugin
- onAfterImportFinished() : void
- Run any operations that need to be performed after the import job has finished, such as cleanup operations
- resetLoadedPlugins() : mixed
- reset the internal plugins cache for loaded plugins
- setEditor() : mixed
- Internal method to connect this plugin to an editor
- setTransformation() : void
- Internal method to connect this plugin to a transformation
- transform() : void|array<string|int, string>
- Overwrite this method to do the actual transformation work
Methods
__call()
All method calls which are not defined within the plugin are forwarded to the module Therefore it is possible to get, e.g. the label by calling the getSuiteName() method.
public
__call(mixed $methodName, mixed $methodArguments) : mixed|string
Parameters
- $methodName : mixed
- $methodArguments : mixed
Tags
Return values
mixed|string —_construct()
The construct method may be used to initialize custom plugin properties it is called immediately after instantiating the plugin all arguments passed to the getPlugins method are also available in this method.
public
_construct([array<string|int, mixed> $aPluginArguments = array() ]) : void
Parameters
- $aPluginArguments : array<string|int, mixed> = array()
-
The plugin arguments which are required for the import transformation plugin.
Tags
Return values
void —addAlternativePluginFolder()
A path to a specific folder in which should be search for plugins.
public
static addAlternativePluginFolder(mixed $sPluginFolder) : void
Parameters
- $sPluginFolder : mixed
Tags
Return values
void —addConfigField()
Allows the plugin to add custom configuration fields to the editor it is opened with
public
addConfigField(string $sName[, string $sLabel = '' ][, string $sType = '' ][, string $sDefault = '' ][, array<string|int, string> $aOptions = array() ]) : mixed
Parameters
- $sName : string
-
the name of the option
- $sLabel : string = ''
-
the visual label of the option
- $sType : string = ''
-
the type of the option, see CSGuiEditor for more examples
- $sDefault : string = ''
-
the default value the option should have
- $aOptions : array<string|int, string> = array()
-
further options, see CSGuiEditor for more examples
Tags
Return values
mixed —addConfigFields()
Overwrite this method to add your config fields with calling {@see addConfigField}
public
addConfigFields() : void
Tags
Return values
void —addTransformationFields()
Overwrite this method to add your configuration fields
public
addTransformationFields() : mixed
Tags
Return values
mixed —addTransformationTargetField()
This method prepares transformation target field on UI.
public
addTransformationTargetField(CSDataFlowImportLoaderPlugin $oLoader[, bool $bAllowStandardFields = true ][, string $sDefaultValue = '' ][, string $sFieldName = 'TargetFieldID' ][, array<string|int, mixed> $aAdditionalOptions = array() ]) : void
Parameters
- $oLoader : CSDataFlowImportLoaderPlugin
-
Object of Data flow import loader plugin.
- $bAllowStandardFields : bool = true
-
Decide to show standard fields or not.
- $sDefaultValue : string = ''
-
Default value of target field
- $sFieldName : string = 'TargetFieldID'
-
Name of target field
- $aAdditionalOptions : array<string|int, mixed> = array()
-
array of additional options
Tags
Return values
void —getAlternativePluginFolder()
public
static getAlternativePluginFolder() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —getConfigValue()
Retrieves a configuration value
public
getConfigValue(string $sName[, string $sDefault = '' ]) : string
Parameters
- $sName : string
-
the name of the config
- $sDefault : string = ''
-
the default name to be used if the value is empty
Tags
Return values
string —the value of the config
getEditor()
Internal method to retrieve the editor connected with
public
getEditor() : CSGuiEditor
Tags
Return values
CSGuiEditor —getExtractionFields()
{@inheritdoc}
public
getExtractionFields() : mixed
Tags
Return values
mixed —getLevel()
The getLevel method may be overwritten in the plugins and defines the order, the plugins are called, where the highest level is called first.
public
getLevel() : int
The method can also be set for all plugins within a module by overwriting the modules getLevel method.
Tags
Return values
int —the level of the plugin where it is called
getListDescription()
public
getListDescription() : string
Tags
Return values
string —a description that should be displayed in the transformation list
getMetaData()
Returns the CSMetaData of the current plugin.
public
getMetaData() : CSMetaData
Tags
Return values
CSMetaData —getModule()
Returns the module, if the plugin is defined within a module.
public
getModule() : CSModule
This method can be used in the plugin api and the plugin wherever access to the defining module is required. If it is used in the Api, it should be noticed that this method may return null, if the plugin is directly defined in the projects or admin.local plugins directory.
Tags
Return values
CSModule —the module object, if the plugin defined in a module or null otherwise
getPlugin()
Returns a CSPlugin for the given plugin type and plugin class name.
public
static getPlugin(string $pluginApiPath, string $className[, mixed $arguments = NULL ]) : CSPlugin|null
As standard behaviour the module subfolder is guessed from the forward URL parameter. If a plugin should point to something in a special module subfolder, this scope can be added by adding the module name in squared bracket at the end of the $pluginApiPath, e.g. 'core/api/plugins/CSRecordPlugin.php[pms]' to get all CSRecordPlugins defined for pms records.
Parameters
- $pluginApiPath : string
-
The relative path in filesystem for the requested plugin api (optional: ending with the module subfolder).
- $className : string
-
The target plugin class name, which should be loaded.
- $arguments : mixed = NULL
-
one or multiple arguments which should be passed to the isAvailable method.
Tags
Return values
CSPlugin|null —Returns the requested plugin for the given parameter.
getPluginChooser()
Returns an array all defined CSPlugins for the current plugin type
public
static getPluginChooser(string $pluginApiPath[, mixed $arguments = NULL ]) : array<string|int, mixed>
Parameters
- $pluginApiPath : string
-
the relative path in filesystem for the requested plugin api (optional: ending with the module subfolder).
- $arguments : mixed = NULL
-
one ore multiple arguments which should be passed to the isAvailable method.
Tags
Return values
array<string|int, mixed> —of CSPlugins in the form [CLASSNAME => LABEL] where the CLASSNAME may be used in the CSPlugin::getPlugin method
getPluginData()
public
getPluginData() : mixed
Tags
Return values
mixed —getPluginDefinitionFile()
Returns the path to the file, the plugin is defined.
public
getPluginDefinitionFile() : string
Tags
Return values
string —the path to the plugin
getPluginName()
public
getPluginName() : mixed
Tags
Return values
mixed —getPlugins()
Returns all defined CSPlugins for the current plugin type It should be used to get all matching plugins for a given plugin api.
public
static getPlugins(string $pluginApiPath[, mixed $arguments = NULL ]) : array<string|int, CSPlugin>
As standard behaviour the module subfolder is guessed from the forward URL parameter. If a plugin should point to something in a special module subfolder, this scope can be added by adding the module name in squared bracket at the end of the $pluginApiPath, e.g. 'core/api/plugins/CSRecordPlugin.php[pms]' to get all CSRecordPlugins defined for pms records.
Parameters
- $pluginApiPath : string
-
the relative path in filesystem for the requested plugin api (optional: ending with the module subfolder).
- $arguments : mixed = NULL
-
one ore multiple arguments which should be passed to the isAvailable method.
Tags
Return values
array<string|int, CSPlugin> —array of CSPlugin objects matching the defined plugin criteria
getPluginsInModule()
Returns all CSPlugins for the current plugin type which are defined within the given module It should be used to get all matching plugins for a given plugin api.
public
static getPluginsInModule(string $moduleName, string $pluginApiPath[, mixed $sFileNamePattern = '' ][, mixed $arguments = NULL ]) : array<string|int, mixed>
Parameters
- $moduleName : string
-
the module which should be searched for plugins
- $pluginApiPath : string
-
the relative path in filesystem for the requested plugin api.
- $sFileNamePattern : mixed = ''
- $arguments : mixed = NULL
-
one ore multiple arguments which should be passed to the isAvailable method.
Tags
Return values
array<string|int, mixed> —of CSPlugin objects matching the defined plugin criterias
getSourceFields()
public
getSourceFields() : array<string|int, CSDataFlowExtractionField>
Tags
Return values
array<string|int, CSDataFlowExtractionField> —array with the source fields that are transferred
getTargetFields()
public
getTargetFields() : array<string|int, mixed>
Tags
Return values
array<string|int, mixed> —with the target fields
getTransformation()
public
getTransformation() : CSDataFlowImportTransformation
Tags
Return values
CSDataFlowImportTransformation —the transformation object this plugin is connected to
getTransformationTargetField()
Returns value of transformation target field.
public
getTransformationTargetField([string $sFieldName = 'TargetFieldID' ]) : string
Parameters
- $sFieldName : string = 'TargetFieldID'
-
Name of the target field for which value is requested.
Tags
Return values
string —Returns value of target field.
isAvailable()
This method is called to check, whether the plugin is available.
public
isAvailable() : bool
If further arguments are added to the CSPlugin::getPlugins call, they are added as arguments to this method.
For simpler usage of the plugin concept: This method should be overwritten with the correct signature for a plugin call, if arguments are passed.
Tags
Return values
bool —whether the plugin is available for the given arguments
isAvailableFor()
This method has to be overwritten to announce to which object types your plugin is compatible with
public
isAvailableFor(CSItemApiItem $oObject) : bool
Parameters
- $oObject : CSItemApiItem
Tags
Return values
bool —true if your plugin can handle the object
isSubTransformation()
Method to check whether SubTransformation enabled for plugin
public
final isSubTransformation() : bool
Tags
Return values
bool —onAfterImportFinished()
Run any operations that need to be performed after the import job has finished, such as cleanup operations
public
onAfterImportFinished() : void
Tags
Return values
void —resetLoadedPlugins()
reset the internal plugins cache for loaded plugins
public
static resetLoadedPlugins() : mixed
Tags
Return values
mixed —setEditor()
Internal method to connect this plugin to an editor
public
setEditor(CSGuiEditor $oEditor) : mixed
Parameters
- $oEditor : CSGuiEditor
Tags
Return values
mixed —setTransformation()
Internal method to connect this plugin to a transformation
public
setTransformation(mixed $oTransformation) : void
Parameters
- $oTransformation : mixed
Tags
Return values
void —transform()
Overwrite this method to do the actual transformation work
public
transform(array<string|int, mixed> $aRecord, mixed $oObject, CSActiveScriptJob $oJob) : void|array<string|int, string>
Parameters
- $aRecord : array<string|int, mixed>
-
the record to import from the data source
- $oObject : mixed
-
the current object that will be updated
- $oJob : CSActiveScriptJob
-
the Active Script Job that imports the Record to the Object
Tags
Return values
void|array<string|int, string> —$aRecord if an array is returned it will replace the current data record to import
