Template Version: @(#)sac_nextcase %I% %G% SMI This information is Copyright 2009 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: xstream 1.2. Name of Document Author/Supplier: Author: Vivek R. Titarmare 1.3 Date of This Document: 21 January, 2009 2. Project Summary 2.1 Project Description XStream is a simple library to serialize objects to XML and back again. 4. Technical Description: The architecture of XStream consists of the four main components: 1)Converters Whenever XStream encounters an object that needs to be converted to/from XML, it delegates to a suitable Converter implementation associated with the class of that Object. 2)Drivers (Writer and Reader) XStream is abstracted from the underlying XML data using the HierarchicalStreamWriter and HierarchicalStreamReader interfaces for serializing and deserializing respectively. 3)Context When XStream serializes or deserializes some objects, it creates a MarshallingContext or UnmarshallingContext, which handle the traversing of the data and delegation to the necessary Converters. 4)Facade The main XStream class is typically used as the entry point. This assembles the necessary components of XStream (Context, Converter, Writer/Reader and ClassMapper) and provides a simple to use API for common operations. XStream class is just a facade - it can always be bypassed for more advanced operations. Packages Notes ==================================================================================================== com.thoughtworks.xstream com.thoughtworks.xstream.alias com.thoughtworks.xstream.annotations com.thoughtworks.xstream.converters com.thoughtworks.xstream.converters.basic Converters for common basic types in Java. com.thoughtworks.xstream.converters.collections Converters for collection objects that write their items as nested elements, such as arrays, Lists, Sets and Maps. com.thoughtworks.xstream.converters.enums com.thoughtworks.xstream.converters.extended Extra converters that may not be enabled in XStream by default. com.thoughtworks.xstream.converters.javabean com.thoughtworks.xstream.converters.reflection com.thoughtworks.xstream.io com.thoughtworks.xstream.io.binary com.thoughtworks.xstream.io.copy com.thoughtworks.xstream.io.json com.thoughtworks.xstream.io.path Library for tracking paths of nodes in documents using a subset of XPath. com.thoughtworks.xstream.io.xml com.thoughtworks.xstream.mapper com.thoughtworks.xstream.persistence 5. Interfaces Exported interface Classification Interface type ============================= ============== ============== com.thoughtworks.xstream * MarshallingStrategy Uncommitted Interface com.thoughtworks.xstream.alias * ClassMapper Uncommitted Interface * NameMapper Uncommitted Interface com.thoughtworks.xstream.converters * Converter Uncommitted Interface * ConverterLookup Uncommitted Interface * ConverterMatcher Uncommitted Interface * ConverterRegistry Uncommitted Interface * DataHolder Uncommitted Interface * ErrorWriter Uncommitted Interface * MarshallingContext Uncommitted Interface * SingleValueConverter Uncommitted Interface * UnmarshallingContext Uncommitted Interface com.thoughtworks.xstream.converters.reflection * FieldKeySorter Uncommitted Interface * ReflectionProvider Uncommitted Interface * ReflectionProvider.Visitor Uncommitted Interface com.thoughtworks.xstream.io * ExtendedHierarchicalStreamWriter Uncommitted Interface * HierarchicalStreamDriver Uncommitted Interface * HierarchicalStreamReader Uncommitted Interface * HierarchicalStreamWriter Uncommitted Interface com.thoughtworks.xstream.io.xml * DocumentReader Uncommitted Interface * DocumentWriter Uncommitted Interface * XmlFriendlyReader Uncommitted Interface * XmlFriendlyWriter Uncommitted Interface com.thoughtworks.xstream.mapper * Interfaces Uncommitted Interface * AnnotationConfiguration Uncommitted Interface * CGLIBMapper.Marker Uncommitted Interface * Mapper Uncommitted Interface * Mapper.ImplicitCollectionMapping Uncommitted Interface com.thoughtworks.xstream.persistence * PersistenceStrategy Uncommitted Interface * StreamStrategy Uncommitted Interface SUNWxstream Uncommitted Package Name xstream-1.3.jar Uncommitted Jar File The Jar file would go in "usr/share/lib/java" Imported interface Classification Comments ======================= ============== =================================== SUNWcglib Uncommitted LSARC 2009/132 SUNWdom4j Uncommitted LSARC 2009/134 SUNWjdom Uncommitted LSARC 2009/127 SUNWjettison Uncommitted LSARC 2009/094 SUNWjodatime Uncommitted LSARC 2009/079 SUNWstaxapi Uncommitted LSARC 2009/055 SUNWxom Uncommitted LSARC 2009/126 SUNWxpp3min Uncommitted LSARC 2009/053 6. Resources and Schedule 6.4. Steering Committee requested information 6.4.1. Consolidation C-team Name: SFW 6.5. ARC review type: FastTrack 6.6. ARC Exposure: open