Class AbstractDefinition
java.lang.Object
com._1c.g5.aef2.standard.definitions.AbstractDefinition
- All Implemented Interfaces:
IComponentFactory,IDefinition
- Direct Known Subclasses:
ContainerDefinition,LabeledDefinition,SeparatorDefinition
The basic class of the definition.
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractDefinition(IDefinitionIdentifier id, Class<? extends IComponent<?>> componentClass) Creates a new instance with void parameterization.protectedAbstractDefinition(IDefinitionIdentifier id, Class<? extends IComponent<?>> componentClass, IParameterization parameterization) Creates a new instance. -
Method Summary
Modifier and TypeMethodDescriptioncreateComponent(Object[] objects) Creates a component with the specified EObjects as input.booleanClass<? extends IComponent<?>>Returns the class of the component that was created using this definition last time.static Constructor<?>getConstructor(Class<? extends IComponent<?>> classCandidate, IParameterization parameterizationCandidate, boolean logWarnings) For aIComponentclass, returns a suitable constructor taking a given parameterization as the single argument.final IDefinitionIdentifiergetId()Returns the identifier of this definition.Returns the layout data object that is expected to be applied to the component created by this definition.Returns parameterization for component.Returns the parent definition.inthashCode()voidsetComponentClass(Class<? extends IComponent<?>> componentClass) Sets the class of the component.voidsetComponentFactory(IComponentFactory factory) Sets the component factory which will be directly used in component creation.voidsetLayoutData(IAefLayoutData layoutData) Sets the layout data object.voidsetModelFactory(IModelFactory modelFactory) Sets the model factory.voidsetParameterization(IParameterization parameterization) Sets the parameterization of the component.voidsetParent(IDefinition parent) Sets the parent definition.
-
Constructor Details
-
AbstractDefinition
protected AbstractDefinition(IDefinitionIdentifier id, Class<? extends IComponent<?>> componentClass, IParameterization parameterization) Creates a new instance.- Parameters:
id- the definition identifier, cannot benull.componentClass- the class of the component, can benull.parameterization- the parameterization, can benull.
-
AbstractDefinition
protected AbstractDefinition(IDefinitionIdentifier id, Class<? extends IComponent<?>> componentClass) Creates a new instance with void parameterization.- Parameters:
id- the definition identifier, can benull.componentClass- the class of the component, can benull.
-
-
Method Details
-
getConstructor
public static Constructor<?> getConstructor(Class<? extends IComponent<?>> classCandidate, IParameterization parameterizationCandidate, boolean logWarnings) For aIComponentclass, returns a suitable constructor taking a given parameterization as the single argument. If no such constructor exists,nullis returned.- Parameters:
classCandidate- Class to look the constructor forparameterizationCandidate- Parameterization for which the constructor will be searchedlogWarnings- Iftrue, a warning will be logged in case no constructor was found- Returns:
- Constructor or
null
-
getComponentClass
Description copied from interface:IDefinitionReturns the class of the component that was created using this definition last time.- Specified by:
getComponentClassin interfaceIDefinition- Returns:
- the class of the AEF component created by this definition last time, may be
nullif the component was never created.
-
getLayoutData
Description copied from interface:IDefinitionReturns the layout data object that is expected to be applied to the component created by this definition.- Specified by:
getLayoutDatain interfaceIDefinition- Returns:
- the layout data, may be
null.
-
getParent
Description copied from interface:IDefinitionReturns the parent definition.- Specified by:
getParentin interfaceIDefinition- Returns:
- the parent definition, may be
nullif the definition has no parent.
-
getParametrization
Description copied from interface:IDefinitionReturns parameterization for component.- Specified by:
getParametrizationin interfaceIDefinition- Returns:
- the parameterization, may be
null.
-
getId
Description copied from interface:IDefinitionReturns the identifier of this definition.- Specified by:
getIdin interfaceIDefinition- Returns:
- the identifier of the definition, may be
null.
-
hashCode
public int hashCode() -
equals
-
setParent
Sets the parent definition.- Parameters:
parent- the parent definition to set
-
setLayoutData
Sets the layout data object.- Parameters:
layoutData- the layout data.
-
setModelFactory
Sets the model factory.- Parameters:
modelFactory- the model factory instance. Cannot benull.
-
setComponentClass
Sets the class of the component.Note that if a direct component factory is
set, the class set by this method will be ignored during component creation.- Parameters:
componentClass- the class of the component.
-
setParameterization
Sets the parameterization of the component.Note that if a direct component factory is
set, the parameterization set by this method will be ignored during component creation.- Parameters:
parameterization- the parameterization to set.
-
setComponentFactory
Sets the component factory which will be directly used in component creation.Note that if this method was called, the component class and parameterization info will not be used.
- Parameters:
factory- the component factory to set
-
createComponent
Description copied from interface:IComponentFactoryCreates a component with the specified EObjects as input.- Specified by:
createComponentin interfaceIComponentFactory- Parameters:
objects- the EObjects comprising the input of the definition, may benull- Returns:
- a component, never
null
-