xstream [LSARC/2009/135 FastTrack timeout 03/03/2009]

Mark Carlson markcarl at sac.sfbay.sun.com
Tue Feb 24 15:37:24 PST 2009


I am sponsoring this familiarity case for Vivek Titarmare. It requests minor 
binding and times out 03/03/2009. This Fast Track represents a component of 
LSARC 2008/748 - Drools.
The FOSS checklist, man page and javadoc (zip file) are in the case directory 
and also the checklist and man page are attached.

-- mark

Template Version: @(#)sac_nextcase 1.68 02/23/09 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 Titarmare
    1.3  Date of This Document:
	24 February, 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




FCL--FOSS Check List

1.0 Project Information
1.1 Name of project/component
	xstream Ver V1.3

1.2 Author of document
	Vivek R. Titarmare

2.0 Project Summary
  2.1 Project Description
       XStream is a simple library to serialize objects to XML and back again.
  
	This case is a dependency for LSARC 2008/748 - Drools. Drools is a dependency for PSARC 2007/210 Automatic Data Migration (ADM).
	Interface stabilities and contracts will be added to the consuming case(s) as needed.

  2.2 Release binding
      What is is the release binding?
      (see http://opensolaris.org/os/community/arc/policies/release-taxonomy/)
      [ ] Major
      [X] Minor
      [ ] Patch or Micro
      [ ] Unknown -- ARC review required

  2.3 Type of project
      Is this case a Linux Familiarity project?
      [X] Yes
      [ ] No

  2.4 Originating Community
    2.4.1 Community Name
		XStream (http://xstream.codehaus.org)
    
    2.4.2 Community Involvement
      Indicate Sun's involvement in the community
      [ ] Maintainer
      [ ] Contributor
      [X] Monitoring
      
      Will the project team work with the upstream community to resolve
      architectural issues of interest to Sun?
      [X] Yes 
      [ ] No - briefly explain
      
	
      Will we or are we forking from the community?
      [ ] Yes - ARC review required prior to forking
      [X] No
      
3.0 Technical Description
  3.1 Installation & Sharable
    3.1.1S Solaris Installation - section only required for Solaris Software
      (see http://opensolaris.org/os/community/arc/policies/install-locations/ for details)
      Does this project follow the Install Locations best practice?
      [X] Yes 
      [ ] No - ARC review required
      
      Does this project install into /usr under [sbin|bin|lib|include|man|share]?
      [X] Yes
      [ ] No or N/A
      
      Does this project install into /opt?
      [ ] Yes - explain below
      [X] No or N/A
      
      Does this project install into a different directory structure?
      [ ] Yes - ARC review required
      [X] No or N/A
      
      Do any of the components of this project conflict with anything under /usr?
      (see http://opensolaris.org/os/community/arc/caselog/2007/047/ for details)
      [ ] Yes - explain below
      [X] No
      
      If conflicts exist then will this project install under /usr/gnu?
      [ ] Yes
      [ ] No - ARC review required
      [X] N/A
      
      Is this project installing into /usr/sfw?
      [ ] Yes - ARC review required
      [X] No
      
    3.1.1W Windows Installation - section only required for Windows Software
      (see http://sac.sfbay/WSARC/2002/494 for details)
      Does this project install software into a 
      <system drive>:\Program Files\Sun\<product> or <system drive>:\Sun\<product>
      directory?
      [ ] Yes
      [ ] No - ARC review required
      
      Does the project use the Windows registry?
      [ ] Yes
      [ ] No - ARC review required
      
      Does the project use 
      HKEY_LOCAL_MACHINE\SOFTWARE\Sun Microsystems\<product>\<version>
      for the registry key?
      [ ] Yes
      [ ] No - ARC review required
      
      Is the project's stored location
      HKEY_LOCAL_MACHINE\SOFTWARE\Sun Microsystems\<product id>\<version id>\Path?
      [ ] Yes
      [ ] No - ARC review required
      
    3.1.2 Share and Sharable
      Does the module include any components that are used or shared by 
      other projects?
      [X] Yes
      [ ] No
    
      If yes are these components packaged to be shared with the other FOSS?
      [X] Yes
      [ ] No - ARC review required
      [ ] N/A
    
      Are these components already in the Solaris WOS?
      [ ] Yes
      [X] No - continue with next section (section 3.2)
    
      If yes are these newer versions being delivered?
      [ ] Yes
      [ ] No - ARC review required
      
      If yes are the newer versions replacing the existing versions?
      [ ] Yes
      [ ] No - ARC review required

  3.2 Exported Libraries
      Are libraries being delivered by this project?
      [X] Yes
      [ ] No - continue with next section (section 3.3)
      
      Are 64-bit versions of the libraries being delivered?
      [X] Yes
      [ ] No - ARC review required
    
      Are static versions of the libraries being delivered?
      [ ] Yes - ARC review required
      [X] No 
      
  3.3 Services and the /etc Directory
      (see http://opensolaris.org/os/community/arc/policies/SMF-policy/)
      Does the project integrate anything into /etc/init.d or /etc/rc?.d?
      [ ] Yes - ARC review required
      [X] No
      
      Does the project integrate any new entries into /etc/inittab or
      /etc/inetd.conf?
      [ ] Yes - ARC review required
      [X] No
      
      Does the project integrate any private non-public files into /etc/default
      or /etc/ configuration files?
      [ ] Yes - ARC review required
      [X] No
      
      Does the service manifests method context grant rights above that
      of the noaccess user and basic privilege set?
      [ ] Yes - ARC review required
      [X] No
        
  3.4 Security
    3.4.1 Secure By Default 
      (see http://opensolaris.org/os/community/arc/policies/secure-by-default/ for details)
      (see http://www.opensolaris.org/os/community/arc/policies/NITS-policy/ for details)
      (see parts of http://opensolaris.org/os/community/arc/policies/SMF-policy/ for
       addtional details)
      Are there any network services provided by this project?
      [ ] Yes
      [X] No - continue with the next section (section 3.4.2)
      
      Are network services enabled by default?
      [ ] Yes - ARC review required
      [ ] No
      [X] N/A
      
      Are network services automatically enabled by the project during installation?
      [ ] Yes - ARC review required
      [ ] No
      [X] N/A
      
      Are inbound network communications denied by default?
      [ ] Yes
      [ ] No - ARC review required
      [X] N/A
      
      Is inbound data checked to prevent content-based attacks?
      [ ] Yes
      [ ] No - ARC review required
      [X] N/A
      
      Is the outbound receiver authenticated?
      [ ] Yes
      [ ] No - ARC review required
      [X] N/A
      
      Is the receiver authenticated prior to receiving any sensitive outbound communication?
      [ ] Yes
      [ ] No - ARC review required
      [X] N/A
      
    3.4.2 Authorization
      (see http://opensolaris.org/os/community/arc/bestpractices/rbac-intro/ and
	   http://opensolaris.org/os/community/arc/bestpractices/rbac-profiles/ and
	   http://opensolaris.org/os/community/arc/bestpractices/rbac-profiles/
           for details)
      Are there any setuid/setgid privileged binaries in the project?
      [ ] Yes - ARC review required
      [X] No - continue with next section (section 3.4.3)
      
      If yes then are the setuid/setgid privileges handled by the use of roles?
      [ ] Yes
      [ ] No - ARC review required

    3.4.3 Auditing
      (see http://opensolaris.org/os/community/arc/policies/audit-policy/ for details)
      (see http://opensolaris.org/os/community/arc/caselog/2003/397 for details)
      Does this component contain administrative or security enforcing software?
      [ ] Yes - ARC review required
      [X] No - continue to next section (section 3.4.4)
      
      (see http://opensolaris.org/os/community/arc/caselog/2003/397 for details)
      Do the components create audit logs detailing what took place including what event
      took place, who was involved, when the event took place?
      [ ] Yes - ARC contract and Audit project team review required
      [ ] No - ARC review required
        
        
    3.4.4 Authentication
      (see http://opensolaris.org/os/community/arc/policies/PAM/)
      Do the components contain any authentication code?
      [ ] Yes
      [X] No - continue to next section (section 3.4.5)
      
      If yes do the components use PAM (plugable authentication modules) for authentication?
      [ ] Yes
      [ ] No - ARC review required
      
      If yes is a single PAM session maintained during authentication?
      [ ] Yes
      [ ] No - ARC review required
      
      If yes are the components sufficiently privileged to allow the requested 
      operations (authentication, password change, process credential manipulation, 
      audit state initialization)?
      [ ] Yes - briefly describe below
      [ ] No - ARC review required
      
    3.4.5 Passwords
      (see http://opensolaris.org/os/community/arc/bestpractices/passwords-cli/ and
           http://opensolaris.org/os/community/arc/bestpractices/passwords-files/ for details)
      Do any of the components for the project deal with passwords?
      [ ] Yes
      [X] No - continue to next section (section 3.4.6)
      
      If yes are these passwords entered via the CLI or environment?
      [ ] Yes - ARC review required
      [ ] No
      
      Are passwords stored within the file system for the component?
      [ ] Yes
      [ ] No - continue to next section (section 3.4.6)
      
      If yes are the permissions on the file such to protect exposing the password(s)?
      [ ] Yes
      [ ] No - ARC review required
      
    3.4.6 General Security Questions
      (see http://opensolaris.org/os/community/arc/bestpractices/security-questions/ for details)
      Are there any network protocols used by this project?
      [ ] Yes
      [X] No - continue with the next section (section 3.5)
      
      Do the components use standard network protocols?
      [ ] Yes
      [ ] No - ARC review required
      
      Do network services for the project make decisions based upon user, host or 
      service identities?
      [ ] Yes - explain below
      [ ] No
      [ ] N/A
      
      Do the components make use of secret information during authentication and/or
      authorization?
      [ ] Yes - explain below
      [ ] No
      [ ] N/A
  
  3.5 Networking
      Do the components access the network?
      [ ] Yes
      [X] No - continue with the next section (section 3.6)
      
      If yes do the components support IPv6?
      [ ] Yes 
      [ ] No - ARC review required
          
  3.6 Core Solaris Components
      Do the components of this project compete with or duplicate core 
      Solaris components?
      [ ] Yes - ARC review required
      [X] No 
      
        
4.0 Interfaces
    
   See project proposal



Introduction to Library Functions                      xstream(3)

NAME
     xstream - Java-based Library

DESCRIPTION
     xstream(3) is a simple library to serialize objects  to  XML
     and  back again.For additional information on using xstream,
     browse the complete html documentation at:

          file:/usr/share/lib/java/javadoc/xstream/index.html

LICENSE
     BSD

FILES
     /usr/share/lib/java/xstream-1.3.jar

          xstream jar file

     /usr/share/lib/java/javadoc/xstream/index.html

          xstream API documentation generated with javadoc.

ATTRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:

     _______________________________________
    |   ATTRIBUTE TYPE   |  ATTRIBUTE VALUE|
    |_______________________________________
    | Availability       |  SUNWxstream    |
    |_______________________________________
    | Interface Stability|  Uncommitted    |
    |____________________|_________________|

SEE ALSO
     http://xstream.codehaus.org

NOTES
     Source for xstream is available on http://opensolaris.org

SunOS 5.10           Last change: 4 Feb 2009                    1



More information about the opensolaris-arc mailing list