java.lang.Object
xyz.cofe.collection.BasicEventSet<java.lang.Class>
xyz.cofe.collection.ClassSet
- All Implemented Interfaces:
java.lang.Iterable<java.lang.Class>,java.util.Collection<java.lang.Class>,java.util.Set<java.lang.Class>,CollectionEventPublisher<EventSet<java.lang.Class>,java.lang.Class>,EventSet<java.lang.Class>,GetReadLock,GetWriteLock,ReadWriteLockSupport,Eterable<java.lang.Class>,LongScn<EventSet<java.lang.Class>,CollectionEvent<EventSet<java.lang.Class>,java.lang.Class>>,Scn<EventSet<java.lang.Class>,java.lang.Long,CollectionEvent<EventSet<java.lang.Class>,java.lang.Class>>
public class ClassSet extends BasicEventSet<java.lang.Class>
Набор классов с поддержкой конструкции instanceof
- Author:
- gocha
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classClassSet.ClassHeirarchyComparerСтравивает два класса на предмет иерархии.Nested classes/interfaces inherited from interface xyz.cofe.collection.EventSet
EventSet.DummyIterator, EventSet.EIterator<E> -
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description protected java.util.Collection<java.lang.Class>createAssignableCollection()Создает пустую коллекцию для хранения перечня классовjava.lang.ClassfirstItem()Возвращает первый элемент коллекцииjava.util.Collection<java.lang.Class>getAssignableFrom(java.lang.Class cls, boolean parentClasses, boolean childrenClasses)Возвращает классы удовлетворяющие заданным конструкцииjava.util.Collection<java.lang.Class>getChildClassesFrom(java.lang.Class cls)Возвращает дочерние классы (включая этот клас)java.lang.ClassgetFirstChildClassesFrom(java.lang.Class cls)Возвращает первый дочерний класс (возможно указанный) и выборки getChildClassesFrom()java.lang.ClassgetFirstParentClassesFrom(java.lang.Class cls)Возвращает первый родитеский класс (возможно указанный) и выборки getParentClassesFrom()java.lang.ClassgetLastChildClassesFrom(java.lang.Class cls)Возвращает последний дочерний класс (возможно указанный) и выборки getChildClassesFrom()java.lang.ClassgetLastParentClassesFrom(java.lang.Class cls)Возвращает последний родитеский класс (возможно указанный) и выборки getParentClassesFrom()java.util.Collection<java.lang.Class>getParentClassesFrom(java.lang.Class cls)Возвращает родительские классы (включая этот клас)java.lang.ClasslastItem()Возвращает последний элемент коллекцииMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface xyz.cofe.collection.CollectionEventPublisher
addCollectionEvent, addCollectionListener, addCollectionListener, getCollectionEventQueue, getCollectionListeners, hasCollectionListener, removeCollectionListener, withCollectionEventQueue, withCollectionEventQueueMethods inherited from interface xyz.cofe.iter.Eterable
count, filter, first, limit, map, notNull, product, product, product, product, product, reduce, toList, union, unionMethods inherited from interface xyz.cofe.collection.EventSet
add, addAll, clear, contains, containsAll, fireCollectionEvent, fireDeleted, fireInserted, isEmpty, iterator, onAdded, onRemoved, remove, removeAll, removeIf, retainAll, size, toArray, toArrayMethods inherited from interface xyz.cofe.ecolls.ReadWriteLockSupport
readLock, readLock, writeLock, writeLockMethods inherited from interface xyz.cofe.scn.Scn
addScnChangedListener, addScnChangedListener, fireScnChanged, fireScnChanged, getScnChangedListeners, hasScnChangedListener, onScn, removeAllScnChangedListeners, removeScnChangedListener, scn, scn
-
Constructor Details
-
ClassSet
public ClassSet()Конструктор -
ClassSet
public ClassSet(boolean inverse)Конструктор- Parameters:
inverse- true - в порядке от дочернего к родит; false - от родител. к дочернему
-
ClassSet
public ClassSet(boolean inverse, java.lang.Iterable<java.lang.Class> itr)Конструктор- Parameters:
inverse- true - в порядке от дочернего к родит; false - от родител. к дочернемуitr- Начальное наполнение
-
-
Method Details
-
getAssignableFrom
public java.util.Collection<java.lang.Class> getAssignableFrom(java.lang.Class cls, boolean parentClasses, boolean childrenClasses)Возвращает классы удовлетворяющие заданным конструкции- Parameters:
cls- КлассparentClasses- Результат(Класс) - является этим же классом либо родительским.
Результат принимает (=) значения Параметра(cls instanceof Результат)
childrenClasses- Результат - является дочерним либо этим же классом.
Параметр принимает (=) результат(Класс)(Результат instanceof cls)
- Returns:
- Классы
-
getParentClassesFrom
public java.util.Collection<java.lang.Class> getParentClassesFrom(java.lang.Class cls)Возвращает родительские классы (включая этот клас)- Parameters:
cls- Класс относительного которого производится отчет родительских классов- Returns:
- Родительские классы
-
getFirstParentClassesFrom
public java.lang.Class getFirstParentClassesFrom(java.lang.Class cls)Возвращает первый родитеский класс (возможно указанный) и выборки getParentClassesFrom()- Parameters:
cls- Класс относительного которого производится отчет родительских классов- Returns:
- Родительский класс или null
- See Also:
getParentClassesFrom(java.lang.Class)
-
getLastParentClassesFrom
public java.lang.Class getLastParentClassesFrom(java.lang.Class cls)Возвращает последний родитеский класс (возможно указанный) и выборки getParentClassesFrom()- Parameters:
cls- Класс относительного которого производится отчет родительских классов- Returns:
- Родительский класс или null
- See Also:
getParentClassesFrom(java.lang.Class)
-
getChildClassesFrom
public java.util.Collection<java.lang.Class> getChildClassesFrom(java.lang.Class cls)Возвращает дочерние классы (включая этот клас)- Parameters:
cls- Класс относительного которого производится отчет дочерних классов- Returns:
- Дочерние классы
-
getFirstChildClassesFrom
public java.lang.Class getFirstChildClassesFrom(java.lang.Class cls)Возвращает первый дочерний класс (возможно указанный) и выборки getChildClassesFrom()- Parameters:
cls- Класс относительного которого производится отчет дочерних классов- Returns:
- Дочерний класс или null
- See Also:
getChildClassesFrom(java.lang.Class)
-
getLastChildClassesFrom
public java.lang.Class getLastChildClassesFrom(java.lang.Class cls)Возвращает последний дочерний класс (возможно указанный) и выборки getChildClassesFrom()- Parameters:
cls- Класс относительного которого производится отчет дочерних классов- Returns:
- Дочерний класс или null
- See Also:
getChildClassesFrom(java.lang.Class)
-
createAssignableCollection
protected java.util.Collection<java.lang.Class> createAssignableCollection()Создает пустую коллекцию для хранения перечня классов- Returns:
- Пустая коллекция классов
-
firstItem
public java.lang.Class firstItem()Возвращает первый элемент коллекции- Returns:
- Первый элемент или null, если коллеция пуста
-
lastItem
public java.lang.Class lastItem()Возвращает последний элемент коллекции- Returns:
- Последний элемент или null, если коллеция пуста
-