Package com.iizigo.vs.link
Class VSLinkField
- java.lang.Object
- com.iizigo.vs.link.VSLinkInfo<EditorVSField>
- com.iizigo.vs.link.VSLinkField
public class VSLinkField extends VSLinkInfo<EditorVSField>
Links a VSField to a target component, or replaces an existing one.- Author:
- Christopher Mindus
Constructor Summary
Constructors Constructor Description VSLinkField(Atom atom)
The constructor takes the VSFieldReference atom for the operation.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
getOperation(PropCnr target, EditorVSField component)
Returns the operation that linking will produce.java.lang.Class<EditorVSField>
getVSClass()
Returns the class used for linking.protected boolean
isAlreadyLinked(PropCnr target, EditorVSField component)
Verifies if the component has been linked already.protected boolean
isMultipleComponentsSupported()
Returns if the linker implementation supports multiple components or a single one.protected PropCnr
runOperation(PropCnr target, java.util.ArrayList<EditorVSField> components, VSSubLinkInfo subOperations, PropCnr mainContainer, ComplexOperation op)
Runs the main operation.Methods inherited from class com.iizigo.vs.link.VSLinkInfo
getAlreadyLinkedMessage, getNoComponentsMessage, getSubOperations, isSkipDialogAllowed
Constructor Detail
VSLinkField
public VSLinkField(Atom atom)
The constructor takes the VSFieldReference atom for the operation.- Parameters:
atom
- The atom for the reference property.
Method Detail
getVSClass
public java.lang.Class<EditorVSField> getVSClass()
Returns the class used for linking.- Specified by:
getVSClass
in classVSLinkInfo<EditorVSField>
- Returns:
- EditorVSField.class.
isAlreadyLinked
protected boolean isAlreadyLinked(PropCnr target, EditorVSField component)
Verifies if the component has been linked already.- Specified by:
isAlreadyLinked
in classVSLinkInfo<EditorVSField>
- Parameters:
target
- The target for linking.component
- The component.- Returns:
- true if already handled by this link info.
getOperation
protected java.lang.String getOperation(PropCnr target, EditorVSField component)
Returns the operation that linking will produce.- Specified by:
getOperation
in classVSLinkInfo<EditorVSField>
- Parameters:
target
- The target for linking.component
- The component to link.- Returns:
- The text inserted to the table.
isMultipleComponentsSupported
protected boolean isMultipleComponentsSupported()
Returns if the linker implementation supports multiple components or a single one.- Specified by:
isMultipleComponentsSupported
in classVSLinkInfo<EditorVSField>
- Returns:
- true if multiple components can be handled, or false for a single one in the list of components for the
operation.runOperation(PropCnr, ArrayList, VSSubLinkInfo, PropCnr, ComplexOperation)
runOperation
protected PropCnr runOperation(PropCnr target, java.util.ArrayList<EditorVSField> components, VSSubLinkInfo subOperations, PropCnr mainContainer, ComplexOperation op)
Runs the main operation.- Specified by:
runOperation
in classVSLinkInfo<EditorVSField>
- Parameters:
target
- The target for linking.components
- The components to link (just one due to "isMultipleComponentsSupported()==false").subOperations
- Sub-operations to execute, null for none.mainContainer
- The main container from a parent operation, null for main operation.op
- The complex operation.- Returns:
- Potential property container created, for use in sub-operations.