public class UrlClassLoaderBuilder extends xyz.cofe.collection.list.SyncEventList<UrlClassLoaderEntry> implements ClassLoaderBuilder, xyz.cofe.scn.ScnChanged<UrlClassLoaderBuilder,Long>, MapStore, XmlElementStore, Xml2Object
| Modifier and Type | Field and Description |
|---|---|
protected xyz.cofe.io.File |
baseDirectory |
protected xyz.cofe.scn.ScnChanedListener |
childChangeListener |
protected xyz.cofe.collection.Func3<Object,Integer,UrlClassLoaderEntry,UrlClassLoaderEntry> |
childrenChangeListener |
protected ParentCL |
parentCL |
protected xyz.cofe.scn.LongScnChangedSupport<UrlClassLoaderBuilder> |
scnChangedSupport |
protected xyz.cofe.collection.Func3<Object,Integer,UrlClassLoaderEntry,UrlClassLoaderEntry> |
setSyncChild |
| Constructor and Description |
|---|
UrlClassLoaderBuilder()
Конструктор по умолчанию
|
UrlClassLoaderBuilder(List<UrlClassLoaderEntry> wraplist)
Конструктор
|
UrlClassLoaderBuilder(List<UrlClassLoaderEntry> wraplist,
Object sync)
Конструктор
|
UrlClassLoaderBuilder(UrlClassLoaderBuilder sample)
Конструктор копирования
|
UrlClassLoaderBuilder(UrlClassLoaderBuilder sample,
Object syncInst)
Конструктор копирования
|
| Modifier and Type | Method and Description |
|---|---|
void |
addScnChangedEvent(xyz.cofe.scn.ScnChangedEvent<UrlClassLoaderBuilder,Long> ev)
Добавляет уведомление в очередь
|
Closeable |
addScnChangedListener(xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long> listener) |
Closeable |
addScnChangedListener(xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long> listener,
boolean weakLink) |
ClassLoader |
build()
Создает ClassLoader
|
UrlClassLoaderBuilder |
clone() |
void |
fireScnChanged(Long old,
Long cur)
Уведомляет подписчиков о измении SCN минуя очередь уведомлений
|
void |
fireScnChangedEvent(xyz.cofe.scn.ScnChangedEvent<UrlClassLoaderBuilder,Long> event) |
void |
fireScnChangedEvents()
Рассылает уведомления из очереди
|
xyz.cofe.io.File |
getBaseDirectory()
Указывает базовый каталог для относительных путей.
|
Class |
getJavaType()
JAVA объект соответ тэгу
|
ParentCL |
getParentCL()
Указывает какой parent class loader использовать.
|
ConcurrentLinkedQueue<xyz.cofe.scn.ScnChangedEvent<UrlClassLoaderBuilder,Long>> |
getScnChangedEventQueue()
Возвращает очередь уведомлений
|
Set<xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long>> |
getScnChangedListeners() |
String |
getTagName()
XML Тег которым представлен объект
|
boolean |
hasScnChangedListener(xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long> listener) |
xyz.cofe.collection.Pair<Long,Long> |
nextscn()
Генерирует новый номер SCN.
|
xyz.cofe.collection.Pair<Long,Long> |
nextscn(boolean addEvent,
boolean fireEvent)
Генерирует новый номер SCN
|
void |
removeAllScnChangedListeners() |
void |
removeScnChangedListener(xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long> listener) |
Object |
restore(Element el)
Восстановление объекта из XML описания
|
void |
restore(Map map)
Восстановление состояния объекта
|
protected void |
restoreEntries(Element xe) |
protected void |
restoreProperties(Element xe) |
protected void |
restoreProperties(Map map) |
Long |
scn()
Возвращает текущий номер изменений
|
void |
scn(Runnable run)
Выполняет код в блоку try/finally а затем рассылает уведомления.
|
void |
setBaseDirectory(xyz.cofe.io.File baseDirectory)
Указывает базовый каталог для относительных путей
Базовый каталог не сохраняется в xml.
|
void |
setParentCL(ParentCL parentCL)
Указывает какой parent class loader использовать.
|
void |
store(Map map)
Сохранение состояния объекта
|
protected void |
storeEntries(Element xe) |
protected void |
storeProperties(Element xe) |
protected void |
storeProperties(Map map) |
void |
xmlElementRestore(Element xe)
Восстанавливает объект из контейнера XML
|
void |
xmlElementStore(Element el)
Сохраняет объект в XML представление
|
add, add0, iterator, iterator0, remove, remove, remove0, remove0, removeAll, removeAll0, retainAll, retainAll0add, add0, addAll, addAll, addAll0, addAll0, addEventListListener, addEventListListener, addEventToQueue, bulkInsert, clear, clear0, contains, containsAll, containsEventListListener, fireEventListMessage, fireQueueEvents, fireQueueEvents0, get, getListenersHelper, getWrappedList, indexOf, isEmpty, lastIndexOf, listIterator, listIterator, listIterator0, listIterator0, lockRun, onAdded, onAdding, onChanged, onChanged, onChanging, onChanging, onDeleted, onDeleted, onDeleting, onDeleting, onInserted, onInserted, onInserting, onInserting, onRemoved, onRemoving, onUpdated, onUpdated, onUpdating, onUpdating, removeEventListListener, set, set0, setWrappedList, size, subList, subList0, toArray, toArrayequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitequals, hashCode, replaceAll, sort, spliteratorparallelStream, removeIf, streamprotected final xyz.cofe.scn.LongScnChangedSupport<UrlClassLoaderBuilder> scnChangedSupport
protected final transient xyz.cofe.collection.Func3<Object,Integer,UrlClassLoaderEntry,UrlClassLoaderEntry> setSyncChild
protected final transient xyz.cofe.collection.Func3<Object,Integer,UrlClassLoaderEntry,UrlClassLoaderEntry> childrenChangeListener
protected final transient xyz.cofe.scn.ScnChanedListener childChangeListener
protected ParentCL parentCL
protected xyz.cofe.io.File baseDirectory
public UrlClassLoaderBuilder(List<UrlClassLoaderEntry> wraplist)
wraplist - список URL-Entry в качестве содержанияpublic UrlClassLoaderBuilder(List<UrlClassLoaderEntry> wraplist, Object sync)
wraplist - список URL-Entry в качестве содержанияsync - Объект синхронизацииpublic UrlClassLoaderBuilder()
public UrlClassLoaderBuilder(UrlClassLoaderBuilder sample)
sample - образец для копированияpublic UrlClassLoaderBuilder(UrlClassLoaderBuilder sample, Object syncInst)
sample - образец для копированияpublic UrlClassLoaderBuilder clone()
public Long scn()
scn in interface xyz.cofe.scn.ScnChanged<UrlClassLoaderBuilder,Long>public xyz.cofe.collection.Pair<Long,Long> nextscn(boolean addEvent, boolean fireEvent)
addEvent - true - добавляет извещение в очередьfireEvent - true - рассылает накопленные собщения из очередиpublic xyz.cofe.collection.Pair<Long,Long> nextscn()
Если уровень вложенности scn( Runnable ) - нулевой (нет вложенных блоков), то рассылает накопленные собщения из очереди.
Если уровень вложенности scn( Runnable ) - больше нуля, то просто добавляет извещения в очередь.
public boolean hasScnChangedListener(xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long> listener)
hasScnChangedListener in interface xyz.cofe.scn.ScnChanged<UrlClassLoaderBuilder,Long>public Set<xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long>> getScnChangedListeners()
getScnChangedListeners in interface xyz.cofe.scn.ScnChanged<UrlClassLoaderBuilder,Long>public Closeable addScnChangedListener(xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long> listener)
addScnChangedListener in interface xyz.cofe.scn.ScnChanged<UrlClassLoaderBuilder,Long>public Closeable addScnChangedListener(xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long> listener, boolean weakLink)
addScnChangedListener in interface xyz.cofe.scn.ScnChanged<UrlClassLoaderBuilder,Long>public void removeScnChangedListener(xyz.cofe.scn.ScnChanedListener<UrlClassLoaderBuilder,Long> listener)
removeScnChangedListener in interface xyz.cofe.scn.ScnChanged<UrlClassLoaderBuilder,Long>public void removeAllScnChangedListeners()
removeAllScnChangedListeners in interface xyz.cofe.scn.ScnChanged<UrlClassLoaderBuilder,Long>public void fireScnChangedEvent(xyz.cofe.scn.ScnChangedEvent<UrlClassLoaderBuilder,Long> event)
public ConcurrentLinkedQueue<xyz.cofe.scn.ScnChangedEvent<UrlClassLoaderBuilder,Long>> getScnChangedEventQueue()
public void addScnChangedEvent(xyz.cofe.scn.ScnChangedEvent<UrlClassLoaderBuilder,Long> ev)
ev - уведомлениеpublic void fireScnChangedEvents()
public void fireScnChanged(Long old, Long cur)
old - предыдущее значение SCNcur - текущее значение SCNpublic void scn(Runnable run)
Выполняет код в блоке try/finally. А по завершению верхнего уровня рассылает накопленные уведомления из очереди.
run - кодpublic ParentCL getParentCL()
public void setParentCL(ParentCL parentCL)
parentCL - тип parent class loader-аpublic xyz.cofe.io.File getBaseDirectory()
Базовый каталог не сохраняется в xml.
public void setBaseDirectory(xyz.cofe.io.File baseDirectory)
Базовый каталог не сохраняется в xml.
baseDirectory - Базовый каталог/nullpublic ClassLoader build()
ClassLoaderBuilderbuild in interface ClassLoaderBuilderpublic void store(Map map)
MapStoreprotected void storeProperties(Map map)
public void restore(Map map)
MapStoreprotected void restoreProperties(Map map)
public void xmlElementStore(Element el)
XmlElementStorexmlElementStore in interface XmlElementStoreel - контейнер XMLprotected void storeProperties(Element xe)
protected void storeEntries(Element xe)
public void xmlElementRestore(Element xe)
XmlElementStorexmlElementRestore in interface XmlElementStorexe - контейнер XMLprotected void restoreProperties(Element xe)
protected void restoreEntries(Element xe)
public String getTagName()
Xml2ObjectgetTagName in interface Xml2Objectpublic Class getJavaType()
Xml2ObjectgetJavaType in interface Xml2Objectpublic Object restore(Element el)
Xml2Objectrestore in interface Xml2Objectel - xml описаниеCopyright © 2019. All rights reserved.