1*0c4d7b72SSadaf Ebrahimi<?xml version="1.0"?> 2*0c4d7b72SSadaf Ebrahimi<!-- 3*0c4d7b72SSadaf EbrahimiLicensed to the Apache Software Foundation (ASF) under one or more 4*0c4d7b72SSadaf Ebrahimicontributor license agreements. See the NOTICE file distributed with 5*0c4d7b72SSadaf Ebrahimithis work for additional information regarding copyright ownership. 6*0c4d7b72SSadaf EbrahimiThe ASF licenses this file to You under the Apache License, Version 2.0 7*0c4d7b72SSadaf Ebrahimi(the "License"); you may not use this file except in compliance with 8*0c4d7b72SSadaf Ebrahimithe License. You may obtain a copy of the License at 9*0c4d7b72SSadaf Ebrahimi 10*0c4d7b72SSadaf Ebrahimi http://www.apache.org/licenses/LICENSE-2.0 11*0c4d7b72SSadaf Ebrahimi 12*0c4d7b72SSadaf EbrahimiUnless required by applicable law or agreed to in writing, software 13*0c4d7b72SSadaf Ebrahimidistributed under the License is distributed on an "AS IS" BASIS, 14*0c4d7b72SSadaf EbrahimiWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15*0c4d7b72SSadaf EbrahimiSee the License for the specific language governing permissions and 16*0c4d7b72SSadaf Ebrahimilimitations under the License. 17*0c4d7b72SSadaf Ebrahimi--> 18*0c4d7b72SSadaf Ebrahimi<document> 19*0c4d7b72SSadaf Ebrahimi <properties> 20*0c4d7b72SSadaf Ebrahimi <title>Proposal</title> 21*0c4d7b72SSadaf Ebrahimi <author email="[email protected]">Commons Documentation Team</author> 22*0c4d7b72SSadaf Ebrahimi </properties> 23*0c4d7b72SSadaf Ebrahimi <body> 24*0c4d7b72SSadaf Ebrahimi 25*0c4d7b72SSadaf Ebrahimi 26*0c4d7b72SSadaf Ebrahimi<section name="Proposal for IO Package"> 27*0c4d7b72SSadaf Ebrahimi 28*0c4d7b72SSadaf Ebrahimi 29*0c4d7b72SSadaf Ebrahimi 30*0c4d7b72SSadaf Ebrahimi<subsection name="(0) Rationale"> 31*0c4d7b72SSadaf Ebrahimi 32*0c4d7b72SSadaf Ebrahimi<p>Many software projects have a need to perform I/O in various ways, and 33*0c4d7b72SSadaf Ebrahimithe JDK class libraries provide a lot of functionality, but sometimes you 34*0c4d7b72SSadaf Ebrahimineed just a little bit more. The io package seeks to encapsulate some of 35*0c4d7b72SSadaf Ebrahimithe most popular i/o base classes into one easy to use package.</p> 36*0c4d7b72SSadaf Ebrahimi 37*0c4d7b72SSadaf Ebrahimi</subsection> 38*0c4d7b72SSadaf Ebrahimi<subsection name="(1) Scope of the Package"> 39*0c4d7b72SSadaf Ebrahimi 40*0c4d7b72SSadaf Ebrahimi<p>This proposal is to create a package of Java utility classes for various 41*0c4d7b72SSadaf Ebrahimitypes of i/o related activity.</p> 42*0c4d7b72SSadaf Ebrahimi 43*0c4d7b72SSadaf Ebrahimi</subsection> 44*0c4d7b72SSadaf Ebrahimi<subsection name="(1.5) Interaction With Other Packages"> 45*0c4d7b72SSadaf Ebrahimi 46*0c4d7b72SSadaf Ebrahimi<p><em>IO</em> relies only on standard JDK 1.2 (or later) APIs for production 47*0c4d7b72SSadaf Ebrahimideployment. It utilizes the JUnit unit testing framework for developing 48*0c4d7b72SSadaf Ebrahimiand executing unit tests, but this is of interest only to developers of the 49*0c4d7b72SSadaf Ebrahimicomponent. IO will be a dependency for several existing components in the 50*0c4d7b72SSadaf Ebrahimiopen source world.</p> 51*0c4d7b72SSadaf Ebrahimi 52*0c4d7b72SSadaf Ebrahimi<p>No external configuration files are utilized.</p> 53*0c4d7b72SSadaf Ebrahimi 54*0c4d7b72SSadaf Ebrahimi</subsection> 55*0c4d7b72SSadaf Ebrahimi<subsection name="(2) Initial Source of the Package"> 56*0c4d7b72SSadaf Ebrahimi 57*0c4d7b72SSadaf Ebrahimi<p>The original Java classes are splashed around various Apache subprojects. 58*0c4d7b72SSadaf Ebrahimi We intend to seek them out and integrate them.</p> 59*0c4d7b72SSadaf Ebrahimi 60*0c4d7b72SSadaf Ebrahimi<p>The proposed package name for the new component is <code>org.apache.commons.io</code>.</p> 61*0c4d7b72SSadaf Ebrahimi 62*0c4d7b72SSadaf Ebrahimi</subsection> 63*0c4d7b72SSadaf Ebrahimi<subsection name="(3) Required Jakarta-Commons Resources"> 64*0c4d7b72SSadaf Ebrahimi 65*0c4d7b72SSadaf Ebrahimi<ul> 66*0c4d7b72SSadaf Ebrahimi <li>CVS Repository - New directory <code>io</code> in the <code>jakarta-commons</code> 67*0c4d7b72SSadaf EbrahimiCVS repository.</li> 68*0c4d7b72SSadaf Ebrahimi <li>Mailing List - Discussions will take place on the general <em>[email protected]</em> 69*0c4d7b72SSadaf Ebrahimimailing list. To help list subscribers identify messages of interest, 70*0c4d7b72SSadaf Ebrahimiit is suggested that the message subject of messages about this component 71*0c4d7b72SSadaf Ebrahimibe prefixed with [IO].</li> 72*0c4d7b72SSadaf Ebrahimi <li>Bugzilla - New component "IO" under the "Commons" product category, 73*0c4d7b72SSadaf Ebrahimiwith appropriate version identifiers as needed.</li> 74*0c4d7b72SSadaf Ebrahimi <li>Jyve FAQ - New category "commons-io" (when available).</li> 75*0c4d7b72SSadaf Ebrahimi 76*0c4d7b72SSadaf Ebrahimi</ul> 77*0c4d7b72SSadaf Ebrahimi 78*0c4d7b72SSadaf Ebrahimi</subsection> 79*0c4d7b72SSadaf Ebrahimi<subsection name="(4) Initial Committers"> 80*0c4d7b72SSadaf Ebrahimi 81*0c4d7b72SSadaf Ebrahimi<p>The initial committers on the IO component shall be Scott Sanders and 82*0c4d7b72SSadaf EbrahimiNicola Ken Barozzi and Henri Yandell</p> 83*0c4d7b72SSadaf Ebrahimi 84*0c4d7b72SSadaf Ebrahimi</subsection> 85*0c4d7b72SSadaf Ebrahimi</section> 86*0c4d7b72SSadaf Ebrahimi</body> 87*0c4d7b72SSadaf Ebrahimi</document> 88