Package com._1c.g5.aef2.standard.models
Class ViewModelList<T>
- java.lang.Object
-
- com._1c.g5.aef2.validators.Validable
-
- com._1c.g5.aef2.models.Model
-
- com._1c.g5.aef2.models.EditableModel
-
- com._1c.g5.aef2.models.list.ListModel<T>
-
- com._1c.g5.aef2.standard.models.ViewModelList<T>
-
- All Implemented Interfaces:
IAttribute<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EStructuralFeature>
,IEditableModel
,IEmfAttribute<org.eclipse.emf.ecore.EObject>
,IModel
,IEmfListAttribute<T,org.eclipse.emf.ecore.EObject>
,IList<T>
,IViewModelList<T>
,IViewModelModel
,IValidable
,Iterable<T>
,Collection<T>
,List<T>
public class ViewModelList<T> extends ListModel<T> implements IEmfListAttribute<T,org.eclipse.emf.ecore.EObject>, IViewModelList<T>
The special list model implementation forIViewModel
. It performs all operations within root component processing queue instead of immediate processing.- See Also:
EmfList
-
-
Constructor Summary
Constructors Constructor Description ViewModelList(IViewModel object, org.eclipse.emf.ecore.EStructuralFeature feature, IEventChannel channel)
Instantiates a new ViewModel list.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
beginInitialization()
Sets the model initialization flag which means that all model operations performed beforeIViewModelModel.endInitialization()
will not invoke notification events.void
commit()
Commits the changes to the data model.void
dispose()
Disposes this model.void
endInitialization()
Resets the model initialization flag that is set byIViewModelModel.beginInitialization()
.IChange
getChange()
org.eclipse.emf.ecore.EObject
getObject()
Returns the object that keeps the attribute.org.eclipse.emf.ecore.EStructuralFeature
getProperty()
Returns the property.protected void
queueNotifyListChanged()
Queues the runnable that notifies the listeners about a change of this list.void
setComponent(IComponent<?> component)
Associate this model with the component.-
Methods inherited from class com._1c.g5.aef2.models.list.ListModel
add, add, addAll, addAll, addListListener, clear, contains, containsAll, createWorkingCopy, discard, fill, get, getCommittedList, getUncommittedList, indexOf, isElementEqual, isEmpty, isEqual, iterator, lastIndexOf, listIterator, listIterator, notifyListChanged, remove, remove, removeAll, removeListListener, retainAll, set, setCommittedList, setList, setUncommitedList, size, subList, toArray, toArray, toString
-
Methods inherited from class com._1c.g5.aef2.models.EditableModel
isEditable, setEditable
-
Methods inherited from class com._1c.g5.aef2.models.Model
addModelListener, beginExternalUpdate, checkOffline, checkOnline, endExternalUpdate, getComponent, getCurrentChangeOrigin, getRunnableQueue, isOnline, notifyModelChanged, notifyModelCommitted, removeModelListener, setOnline
-
Methods inherited from class com._1c.g5.aef2.validators.Validable
addValidator, getValidatorTarget, removeValidator, validate, validate
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
-
Methods inherited from interface com._1c.g5.aef2.models.list.IList
addListListener, createWorkingCopy, fill, isEqual, removeListListener
-
Methods inherited from interface com._1c.g5.aef2.models.IModel
addModelListener, discard, getComponent, isOnline, removeModelListener
-
Methods inherited from interface com._1c.g5.aef2.validators.IValidable
addValidator, removeValidator, validate, validate
-
Methods inherited from interface java.util.List
add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray
-
-
-
-
Constructor Detail
-
ViewModelList
public ViewModelList(IViewModel object, org.eclipse.emf.ecore.EStructuralFeature feature, IEventChannel channel)
Instantiates a new ViewModel list.- Parameters:
object
- the object, cannot benull
.feature
- the feature, cannot benull
.channel
- theIEventChannel
, cannot benull
.
-
-
Method Detail
-
beginInitialization
public void beginInitialization()
Description copied from interface:IViewModelModel
Sets the model initialization flag which means that all model operations performed beforeIViewModelModel.endInitialization()
will not invoke notification events.- Specified by:
beginInitialization
in interfaceIViewModelModel
-
endInitialization
public void endInitialization()
Description copied from interface:IViewModelModel
Resets the model initialization flag that is set byIViewModelModel.beginInitialization()
.- Specified by:
endInitialization
in interfaceIViewModelModel
-
getChange
public IChange getChange()
-
dispose
public void dispose()
Description copied from interface:IModel
Disposes this model.
-
commit
public void commit()
Description copied from interface:IModel
Commits the changes to the data model.
-
getObject
public org.eclipse.emf.ecore.EObject getObject()
Description copied from interface:IAttribute
Returns the object that keeps the attribute.- Specified by:
getObject
in interfaceIAttribute<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EStructuralFeature>
- Returns:
- the object that keeps the attribute.
-
getProperty
public org.eclipse.emf.ecore.EStructuralFeature getProperty()
Description copied from interface:IAttribute
Returns the property.- Specified by:
getProperty
in interfaceIAttribute<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EStructuralFeature>
- Returns:
- the property.
-
setComponent
public void setComponent(IComponent<?> component)
Description copied from interface:IModel
Associate this model with the component.- Specified by:
setComponent
in interfaceIModel
- Overrides:
setComponent
in classModel
- Parameters:
component
- the component to associate with.
-
queueNotifyListChanged
protected void queueNotifyListChanged()
Description copied from class:ListModel
Queues the runnable that notifies the listeners about a change of this list. In fact it queues a runnable that performsListModel.notifyListChanged(ChangeOrigin)
.- Overrides:
queueNotifyListChanged
in classListModel<T>
-
-