Robert Burrell Donkin ha scritto:
thanks to the great work done by Oleg, Mime4J is much better and has
quite a lot more classes. a release should be really close now. so,
it's a good time to review packaging. i think the packages below need
some thought.
i think that the packaging strategy has become inconsistent. i think
that the choice is either to move lots of utility-ish classes out from
mime4j and into sub-packages, or to remove the decoder and util
subpackages and move their contents into mime4j.
i can see arguments either way. lots of classes in a single package is
less expressive. but libraries can benefit from flat packaging. flat
packaging can also be an advantage for OSGI.
opinions?
I only checked the sources for cyclic dependencies between packages and
somewhere 7 new cycles have been introduced.
The last time I fixed this the root package (org.apache.james.mime4j)
only depended on decoder and util packages, with decoder depending on
util too).
I think the first thing is to remove cycles.
Stefano
(i favour collapsing but there may well be good reasons to take the
other approach)
- robert
package org.apache.james.mime4j
(http://svn.apache.org/repos/asf/james/mime4j/trunk/src/main/java/org/apache/james/mime4j/)
# AbstractContentHandler.java
# AbstractEntity.java
# BasicBufferingInputStream.java
# BodyDescriptor.java
# BufferingInputStream.java
# BufferingInputStreamAdaptor.java
# ByteArrayBuffer.java
# CharArrayBuffer.java
# CloseShieldInputStream.java
# ContentDescriptor.java
# ContentHandler.java
# DefaultBodyDescriptor.java
# EOLConvertingInputStream.java
# EntityStateMachine.java
# EntityStates.java
# Event.java
# InputBuffer.java
# MaximalBodyDescriptor.java
# MimeBoundaryInputStream.java
# MimeEntity.java
# MimeException.java
# MimeParseEventException.java
# MimeStreamParser.java
# MimeTokenStream.java
# MutableBodyDescriptor.java
# RFC1864ContentMD5Descriptor.java
# RFC2045MimeDescriptor.java
# RFC2183ContentDispositionDescriptor.java
# RFC2557ContentLocationDescriptor.java
# RFC3066ContentLanguageDescriptor.java
# RawEntity.java
# RecursionMode.java
# RootInputStream.java
in org.apache.james.mime4j.decoder
(http://svn.apache.org/repos/asf/james/mime4j/trunk/src/main/java/org/apache/james/mime4j/decoder/)
# Base64InputStream.java
# ByteQueue.java
# DecoderUtil.java
# QuotedPrintableInputStream.java
# UnboundedFifoByteBuffer.java
in org.apache.james.mime4j.util
(http://svn.apache.org/repos/asf/james/mime4j/trunk/src/main/java/org/apache/james/mime4j/util/)
# CharsetUtil.java
# CodecUtil.java
# MessageUtils.java
# MimeUtil.java
# PartialInputStream.java
# PositionInputStream.java
# SimpleTempStorage.java
# StringArrayMap.java
# TempFile.java
# TempPath.java
# TempStorage.java
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]