Interface Copyable<T extends Copyable<T>>
- All Known Subinterfaces:
Action<A>,ActionGrid<G>,ActionGroup<A>,ActionView<V>,AddAdjustmentModalFormAction<A>,AugmentableView<V>,BadgeColumn<C>,BadgeTileComponent<C>,BasicGroup<G>,BuilderFieldSource<D>,BulkOperationAction<A>,CloneModalFormAction<A>,CollapsibleGroup<G>,CollectionConditional<C>,Column<C>,Component<C>,ComputedField<F>,Conditional<C>,ConditionalAction<A>,ConditionalColumn<C>,ControlGroup<G>,CreateEntityView<V>,CreateModalFormAction<A>,CreateModalFormView<V>,CustomAttributesGridField<F>,CustomCssComponent<C>,DateColumn<C>,DateField<F>,DateRangeColumn<C>,DateRangeField<F>,Dependent<D>,DerivedColumn<C>,DerivedField<F>,DerivedSelectField<F>,DerivedUrlField<F>,Divider<D>,DurationColumn<C>,DurationField<F>,DynamicColumn<C>,DynamicField<F>,EmbeddedListColumn<C>,Endpoint<E>,EntityBrowseView<V>,EntityFormView<V>,EntityGridView<V>,EntityModalFormAction<A>,EntityView<V>,EnumColumn<C>,EnumSwitchField<F>,ExportGrid<G>,ExportGridAction<A>,ExportHistoryEntityGridView<V>,ExportHistoryGrid<G>,ExportHistoryGridExternal<E>,External<E>,ExternalFieldGroup<G>,FetchEntity<C>,FetchGrid<G>,Field<F>,FieldArrayBlockField<F>,FieldArrayField<F>,FieldArrayGridField<F>,FileInputField<F>,Filterable<D>,FilterableGrid<G>,FilterAction<A>,Form<F>,FormAction<A>,FormComponent<C>,FormFieldColumn<C>,FormView<V>,GenerateTemplateAction<A>,Grid<G>,GridExternal<E>,GridRowConditionalAction<A>,GridView<V>,Group<G>,ImportGrid<G>,ImportGridAction<A>,InlineGridSelectAction<A>,InlineGroup<G>,IntegerField<F>,InterdependentExternalGridsGroup<G>,LargeContentColumn<C>,LinkAction<A>,LinkColumn<C>,LinkExternal<E>,LinkGroup<G>,LinkTileComponent<C>,LogicalConditional<C>,LookupColumn<C>,LookupField<F>,LookupFieldModal<V>,LookupFilterAction<A>,Message<M>,ModalFormAction<A>,ModalLinkColumn<C>,ModalView<V>,MoneyColumn<C>,MoneyField<F>,Orderable<R>,OrderableModalFormAction<A>,PageableEndpoint<E>,PageableFetch<C>,PhoneField<F>,Pollable<G>,PreviewableView<V>,ProgressColumn<C>,PropertyConditional<C>,QueryBuilderField<F>,QueryBuilderFilterAction<A>,ResidentGridField<F>,ResidentMapCreateAction<A>,ResidentMapField<F>,ResourceGrid<G>,RowModalFormAction<A>,RsqlRuleColumn<C>,RuleBuilderField<F>,Selectable<S>,SelectField<F>,SelectTargetEntityFormView<V>,SelectTargetEntityGridView<V>,SlideOverFormAction<A>,SortableGrid<G>,SpelRuleColumn<C>,ThumbnailColumn<C>,ThumbnailTileComponent<C>,TileComponent<C>,TileGrid<G>,ToggleTileComponent<C>,Trackable<T>,Tree<T>,TreeExternal<E>,TreeGridView<V>,TreeView<V>,TriggerAction<A>,UpdateEntityView<V>,UpdateModalFormView<V>,ValidationMethod<M>,ValidationSchema<S>,View<V>,ViewFilter<C>
- All Known Implementing Classes:
AbstractAction,AbstractColumn,AbstractComponent,AbstractEndpoint,AbstractExternal,AbstractField,AbstractFormComponent,AbstractGroup,AbstractMessage,AbstractSelectTargetEntityFormView,AbstractTileComponent,AbstractValidationMethod,AbstractValidationSchema,AbstractView,AbstractViewFilter,CollectionMapping,ColumnList,ConditionalList,DefaultAction,DefaultActionGroup,DefaultAddAdjustmentModalFormAction,DefaultBadgeColumn,DefaultBadgeTileComponent,DefaultBasicGroup,DefaultBulkOperationAction,DefaultCloneModalFormAction,DefaultCollapsibleGroup,DefaultCollectionConditional,DefaultColumn,DefaultComputedField,DefaultConditionalAction,DefaultConditionalColumn,DefaultControlGroup,DefaultCreateEntityLongFormView,DefaultCreateEntityView,DefaultCreateModalFormAction,DefaultCreateModalFormView,DefaultCustomAttributesGridField,DefaultDateColumn,DefaultDateField,DefaultDateRangeColumn,DefaultDateRangeField,DefaultDerivedColumn,DefaultDerivedField,DefaultDerivedSelectField,DefaultDerivedUrlField,DefaultDivider,DefaultDurationColumn,DefaultDurationField,DefaultDynamicColumn,DefaultDynamicField,DefaultEmbeddedListColumn,DefaultEndpoint,DefaultEntityBrowseView,DefaultEntityFormView,DefaultEntityGridView,DefaultEntityModalFormAction,DefaultEnumArrayColumn,DefaultEnumColumn,DefaultEnumSwitchField,DefaultExportGridAction,DefaultExportHistoryEntityGridView,DefaultExportHistoryGridExternal,DefaultExternal,DefaultExternalFieldGroup,DefaultField,DefaultFieldArrayBlockField,DefaultFieldArrayGridField,DefaultFileInputField,DefaultFilterAction,DefaultFilterView,DefaultFormAction,DefaultFormFieldColumn,DefaultFormView,DefaultGenerateTemplateAction,DefaultGridExternal,DefaultGridRowConditionalAction,DefaultGroup,DefaultImportGridAction,DefaultInlineGridSelectAction,DefaultInlineGroup,DefaultIntegerField,DefaultInterdependentExternalGridsGroup,DefaultLargeContentColumn,DefaultLinkAction,DefaultLinkColumn,DefaultLinkExternal,DefaultLinkGroup,DefaultLinkTileComponent,DefaultLogicalConditional,DefaultLookupColumn,DefaultLookupField,DefaultLookupFieldModal,DefaultLookupFilterAction,DefaultMessage,DefaultModalFormAction,DefaultModalLinkColumn,DefaultModalView,DefaultMoneyColumn,DefaultMoneyField,DefaultOrderableModalFormAction,DefaultPageableEndpoint,DefaultPhoneField,DefaultProgressColumn,DefaultPropertyConditional,DefaultQueryBuilderField,DefaultQueryBuilderFilterAction,DefaultResidentGridField,DefaultResidentMapCreateAction,DefaultResidentMapField,DefaultRowModalFormAction,DefaultRSQLRuleColumn,DefaultRuleBuilderField,DefaultSelectField,DefaultSelectTargetEntityGridView,DefaultSlideOverFormAction,DefaultSpelRuleColumn,DefaultThumbnailColumn,DefaultThumbnailTileComponent,DefaultTileComponent,DefaultToggleTileComponent,DefaultTreeExternal,DefaultTreeGridView,DefaultTreeView,DefaultTriggerAction,DefaultUpdateEntityLongFormView,DefaultUpdateEntityView,DefaultUpdateModalFormView,DefaultValidationMethod,DefaultValidationSchema,Dependent.DependentFieldsList,Link,Mapping,MappingList,PickOmitMapping,PollableOptions,PollableOptions.ConstantPollStrategy,PollableOptions.ExponentialPollStrategy,PollableOptions.LinearPollStrategy,PollableOptions.PollStrategy,PropertyMapping,SelectOption,SelectOptionList,SortableGrid.Sort,TemplateMapping,TextTransformMapping,TransformBody
public interface Copyable<T extends Copyable<T>>
Interface that if implemented adds support for deep copy behavior to an object.
It is recommended for the implementation to follow a copy constructor pattern, for example:
public class MyCopyable implements Copyable{ private boolean myFlag = false; public MyCopyable() {} public MyCopyable(MyCopyable other) { this.myFlag = other.myFlag; } @Override public MyCopyable copy() { return new MyCopyable(this); } }
- Author:
- Nick Crum (ncrum)
-
Method Summary
-
Method Details
-
copy
T copy()- Returns:
- a deep copy of this instance
-