Class ExtendXStream
java.lang.Object
com.thoughtworks.xstream.XStream
com.github._1c_syntax.bsl.reader.common.xstream.ExtendXStream
Расширение функциональности XStream
-
Nested Class Summary
Nested classes/interfaces inherited from class com.thoughtworks.xstream.XStream
XStream.InitializationException
-
Field Summary
Fields inherited from class com.thoughtworks.xstream.XStream
COLLECTION_UPDATE_LIMIT, COLLECTION_UPDATE_SECONDS, ID_REFERENCES, NO_REFERENCES, PRIORITY_LOW, PRIORITY_NORMAL, PRIORITY_VERY_HIGH, PRIORITY_VERY_LOW, SINGLE_NODE_XPATH_ABSOLUTE_REFERENCES, SINGLE_NODE_XPATH_RELATIVE_REFERENCES, XPATH_ABSOLUTE_REFERENCES, XPATH_RELATIVE_REFERENCES
-
Constructor Summary
ConstructorDescriptionExtendXStream
(MDReader reader, ClassLoaderReference classLoaderReference, Mapper mapper) ExtendXStream
(MDReader reader, QNameMap qNameMap, ClassLoaderReference classLoaderReference, Mapper mapper) -
Method Summary
Modifier and TypeMethodDescriptionstatic Mapper
buildMapper
(ClassLoaderReference classLoaderReference) Читает объект из файлаstatic MDReader
Выполняет ссылку на MDReader, связанный с читатем файлаstatic Path
Возвращает путь текущего читаемого файлаstatic Class<?>
getRealClass
(HierarchicalStreamReader reader, String className) Возвращает класс реализации объекта по имени поля / строковому краткому имениClass<?>
getRealClass
(String className) Возвращает класс реализации объекта по имени поля / строковому краткому имениstatic Object
read
(HierarchicalStreamReader reader, Path contentPath) Выполняет чтение объекта из файлаstatic Object
read
(HierarchicalStreamReader reader, Path contentPath, String fullName) Выполняет чтение объекта из файла по имениstatic <T> T
readValue
(UnmarshallingContext context, Class<T> clazz) Читает значение из файлаstatic void
registerConverters
(ExtendXStream xStream, String convertersPackageName, Class<?> annotation) Регистрирует конверторы нужного типа, фильтруя по пакету и аннотацииprotected void
registerMDCConverter
(Object converter) Обертка для удобства регистрации разных конвертеров посредством чтения классов из пакетаprotected void
Переопределение списка регистрируемых конвертеров.Methods inherited from class com.thoughtworks.xstream.XStream
addDefaultImplementation, addImmutableType, addImmutableType, addImplicitArray, addImplicitArray, addImplicitArray, addImplicitCollection, addImplicitCollection, addImplicitCollection, addImplicitMap, addImplicitMap, addPermission, alias, alias, aliasAttribute, aliasAttribute, aliasField, aliasPackage, aliasSystemAttribute, aliasType, allowTypeHierarchy, allowTypes, allowTypes, allowTypesByRegExp, allowTypesByRegExp, allowTypesByWildcard, autodetectAnnotations, createObjectInputStream, createObjectInputStream, createObjectInputStream, createObjectInputStream, createObjectOutputStream, createObjectOutputStream, createObjectOutputStream, createObjectOutputStream, createObjectOutputStream, createObjectOutputStream, createObjectOutputStream, denyPermission, denyTypeHierarchy, denyTypes, denyTypes, denyTypesByRegExp, denyTypesByRegExp, denyTypesByWildcard, fromXML, fromXML, fromXML, fromXML, fromXML, fromXML, fromXML, fromXML, fromXML, getClassLoader, getClassLoaderReference, getConverterLookup, getMapper, getReflectionProvider, ignoreUnknownElements, ignoreUnknownElements, ignoreUnknownElements, marshal, marshal, newDataHolder, omitField, processAnnotations, processAnnotations, registerConverter, registerConverter, registerConverter, registerConverter, registerLocalConverter, registerLocalConverter, setClassLoader, setCollectionUpdateLimit, setMarshallingStrategy, setMode, setupAliases, setupDefaultImplementations, setupDefaultSecurity, setupImmutableTypes, setupSecurity, toXML, toXML, toXML, unmarshal, unmarshal, unmarshal, useAttributeFor, useAttributeFor, useAttributeFor, useXStream11XmlFriendlyMapper, wrapMapper
-
Constructor Details
-
ExtendXStream
-
ExtendXStream
public ExtendXStream(MDReader reader, QNameMap qNameMap, ClassLoaderReference classLoaderReference, Mapper mapper)
-
-
Method Details
-
fromXML
Читает объект из файла -
getRealClass
Возвращает класс реализации объекта по имени поля / строковому краткому имени- Parameters:
className
- Имя искомого класса- Returns:
- Найденный класс
-
getRealClass
Возвращает класс реализации объекта по имени поля / строковому краткому имени- Parameters:
reader
- Ридер файлаclassName
- Имя искомого класса- Returns:
- Найденный класс
-
read
Выполняет чтение объекта из файла- Parameters:
reader
- Ридер файлаcontentPath
- Путь к файлу- Returns:
- Найденный класс
-
read
Выполняет чтение объекта из файла по имени- Parameters:
reader
- Ридер файлаcontentPath
- Путь к файлуfullName
- Имя читаемого объекта- Returns:
- Найденный класс
-
getCurrentPath
Возвращает путь текущего читаемого файла- Parameters:
reader
- Текущий ридер- Returns:
- Путь к читаемому файлу
-
getCurrentMDReader
Выполняет ссылку на MDReader, связанный с читатем файла- Parameters:
reader
- Ридер файла- Returns:
- Найденный класс
-
readValue
Читает значение из файла- Parameters:
context
- Контекст чтения файлаclazz
- Класс для преобразования- Returns:
- Прочитанное значение
-
registerConverters
public static void registerConverters(ExtendXStream xStream, String convertersPackageName, Class<?> annotation) Регистрирует конверторы нужного типа, фильтруя по пакету и аннотации- Parameters:
xStream
- объект xStreamconvertersPackageName
- полное имя пакета, где расположены конверторыannotation
- аннотация, которой помечены конверторы
-
setupConverters
protected void setupConverters()Переопределение списка регистрируемых конвертеров. Оставлены только те, что нужны, особенно исключены те, что вызывают недовольство у JVM, в связи с неправильным доступом при рефлексии- Overrides:
setupConverters
in classXStream
-
registerMDCConverter
Обертка для удобства регистрации разных конвертеров посредством чтения классов из пакета- Parameters:
converter
- один из поддерживаемых конвертеров
-
buildMapper
-