harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tony Wu" <wuyue...@gmail.com>
Subject Re: [jira] Created: (HARMONY-2862) [classlib][suncompat] ICU references sun.io classes that are absent
Date Thu, 28 Dec 2006 06:29:42 GMT
On 12/28/06, Geir Magnusson Jr. <geir@pobox.com> wrote:
>
> On Dec 27, 2006, at 10:28 PM, Tony Wu wrote:
>
> > Hi all
> >
> > I got the confirmation from ICU team.
> >
> > 1.It's done so by legacy design. Prior to JDK 1.4 the conversion
> > classes were in sun.io package. To provide external conversion
> > services, ICU had to extend sun.io classes. And they still stay there
> > for backward compatible.
> >
> > 2.If you are using ICU4JNI with other JVMs then you should not use
> > these classes.
>
> What classes do you use instead?
>

I think all the functionalities have been covered by nio_char. That is
why it was deprecated.

If we need the function only, I suggest to use CharsetEncoder/Decoder instead.
If we do need these class for backward compatibility, we would have to
implement it. And I think it is easy to do that by delegating to
CharsetEncoder/Decoder .
If we decide to have a suncompat.jar, I vote for implementing them by ourselves.

> >
> > 3.If you do not want to use the conversion services, it would be ok to
> > remove them.
> >
> > On 12/28/06, Geir Magnusson Jr. <geir@pobox.com> wrote:
> >>
> >> On Dec 26, 2006, at 10:13 PM, Zakharov, Vasily M wrote:
> >>
> >> >
> >> > I wonder how complex a task could adding these classes be?
> >> > They're not interfaces or fully-abstracts, they do some actual
> >> > conversion, as one may guess from these links:
> >> > http://icu.sourceforge.net/apiref/icu4jni/com/ibm/icu4jni/
> >> > converters/Byt
> >> > eToCharConverterICU.html
> >> > http://icu.sourceforge.net/apiref/icu4jni/com/ibm/icu4jni/
> >> > converters/Cha
> >> > rToByteConverterICU.html
> >> >
> >> > From the other point of view, Harmony never had these classes,
> >> and was
> >> > still able to run Eclipse and whatever else, so probably they're
> >> > not so
> >> > much needed. Can we ask ICU guys what those classes could be really
> >> > needed for?
> >> >
> >> > And by the way, they're Deprecated.
> >>
> >> But people probably still use them.
> >>
> >> >
> >> > Probably we could add stubs or something like that to suncompat,
> >> that
> >> > would throw new
> >> > UnsupportedOperationException("sun.io.ByteToCharConverter is
> >> > deprecated
> >> > and not supported") on each method call? That's not much pain
> >> and if
> >> > someone ever needs them, it's anyway better than
> >> NoClassDefFoundError,
> >> > isn't it?
> >>
> >> No really - your app still falls over and dies.
> >>
> >>
> >> geir
> >>
> >> >
> >> >  Vasily
> >> >
> >> >
> >> > -----Original Message-----
> >> > From: Paulex Yang [mailto:paulex.yang@gmail.com]
> >> > Sent: Wednesday, December 27, 2006 4:29 AM
> >> > To: dev@harmony.apache.org
> >> > Subject: Re: [jira] Created: (HARMONY-2862) [classlib]
> >> [suncompat] ICU
> >> > references sun.io classes that are absent
> >> >
> >> > Geir Magnusson Jr. wrote:
> >> >>
> >> >> On Dec 26, 2006, at 8:12 PM, Paulex Yang wrote:
> >> >>
> >> >>> Geir Magnusson Jr. wrote:
> >> >>>> ROTFL
> >> >>>>
> >> >>>> Who makes this library?  IBM?  :)
> >> >>>>
> >> >>>> I think we need to add these classes to our suncompat package...
> >> >>>>
> >> >>>> geir
> >> >>>>
> >> >>>>
> >> >>>> On Dec 25, 2006, at 8:20 PM, Zakharov, Vasily M wrote:
> >> >>>>
> >> >>>>>
> >> >>>>> I wonder what must we do to this issue.
> >> >>>>> Any opinions?
> >> >>> AFAIK, these four classes in ICU4JNI are not used by Harmony's
> >> >>> nio_char module, whatever directly or indirectly(i.e., you can
> >> >>> remove
> >> >
> >> >>> these classes from ICU4JNI without affecting Harmony
> >> functionality),
> >> >>> and nio_char should be the only module which refers to
> >> ICU4JNI, so I
> >> >>> suppose they are not needed to be loaded?
> >> >>
> >> >> What if a users wanted to use this package on Harmony?
> >> > I've no objection to add sun.io.CharToByteConverter to suncompat,
> >> > because I guess this is one of the most used Sun JDK implementation
> >> > classes, but I think we may have other options to deal with this
> >> > ICU4JNI
> >> >
> >> > issue, for example, remove these four classes from our build if
> >> legal,
> >> > ICU4JNI is provided only in source codes, so we need to build it
> >> > into a
> >> > binary jar ourselves anyway.
> >> >>
> >> >> geir
> >> >>
> >> >>>>>
> >> >>>>>  Vasily
> >> >>>>>
> >> >>>>>
> >> >>>>> -----Original Message-----
> >> >>>>> From: Vasily Zakharov (JIRA) [mailto:jira@apache.org]
> >> >>>>> Sent: Friday, December 22, 2006 7:54 PM
> >> >>>>> To: commits@harmony.apache.org
> >> >>>>> Subject: [jira] Created: (HARMONY-2862) [classlib]
> >> [suncompat] ICU
> >> >>>>> references sun.io classes that are absent
> >> >>>>>
> >> >>>>> [classlib][suncompat] ICU references sun.io classes that
are
> >> >>>>> absent
> >> >>>>>
> >> ------------------------------------------------------------------
> >> >>>>> -
> >> >>>>>
> >> >>>>>                  Key: HARMONY-2862
> >> >>>>>                  URL:
> >> >>>>> http://issues.apache.org/jira/browse/HARMONY-2862
> >> >>>>>              Project: Harmony
> >> >>>>>           Issue Type: Bug
> >> >>>>>           Components: Classlib
> >> >>>>>             Reporter: Vasily Zakharov
> >> >>>>>             Priority: Minor
> >> >>>>>
> >> >>>>>
> >> >>>>> DRLVM bootclasspath contains icu4jni-3.4.jar, that contains
4
> >> > classes
> >> >>>>> that can't be loaded. These classes are:
> >> >>>>>
> >> >>>>> com.ibm.icu4jni.converters.ByteToCharConverterICU extends
> >> >>>>> sun.io.ByteToCharConverter
> >> >>>>> com.ibm.icu4jni.converters.ByteToCharGB18030 extends
> >> >>>>> ByteToCharConverterICU
> >> >>>>> com.ibm.icu4jni.converters.CharToByteConverterICU extends
> >> >>>>> sun.io.CharToByteConverter
> >> >>>>> com.ibm.icu4jni.converters.CharToByteGB18030 extends
> >> >>>>> CharToByteConverterICU
> >> >>>>>
> >> >>>>> These classes can't be loaded because they extend classes
from
> >> > sun.io
> >> >>>>> package that are not available in Harmony classlib.
> >> >>>>>
> >> >>>>> There're two ways to resolve this issue:
> >> >>>>>
> >> >>>>> 1. Create stubs for sun.io.ByteToCharConverterICU and
> >> >>>>> sun.io.CharToByteConverter in suncompat module.
> >> >>>>>
> >> >>>>> 2. Consider the four classes mentioned above non-needed
for
> >> >>>>> Harmony
> >> >>>>> operation and close this issue as Won't Fix.
> >> >>>>>
> >> >>>>>
> >> >>>>> --This message is automatically generated by JIRA.
> >> >>>>> -
> >> >>>>> If you think it was sent incorrectly contact one of the
> >> >>>>> administrators:
> >> >>>>> http://issues.apache.org/jira/secure/Administrators.jspa
> >> >>>>> -
> >> >>>>> For more information on JIRA, see:
> >> >>>>> http://www.atlassian.com/software/jira
> >> >>>>>
> >> >>>>>
> >> >>>>
> >> >>>>
> >> >>>
> >> >>>
> >> >>> --Paulex Yang
> >> >>> China Software Development Lab
> >> >>> IBM
> >> >>>
> >> >>>
> >> >>
> >> >>
> >> >
> >> >
> >> > --
> >> > Paulex Yang
> >> > China Software Development Lab
> >> > IBM
> >>
> >>
> >
> >
> > --
> > Tony Wu
> > China Software Development Lab, IBM
>
>


-- 
Tony Wu
China Software Development Lab, IBM

Mime
View raw message