[jbosscache-dev] Method storeEntireState is ambiguous with null parameter

Manik Surtani manik at jboss.org
Tue Aug 29 08:01:09 EDT 2006


Are we not going to pull the byte[] methods from the interface, as  
per your conversation with Brian?
--
Manik Surtani

Lead, JBoss Cache
JBoss, a division of Red Hat

Email: manik at jboss.org
Telephone: +44 7786 702 706
MSN: manik at surtani.org
Yahoo/AIM/Skype: maniksurtani


On 25 Aug 2006, at 17:25, Vladimir Blagojevic wrote:

> Hi,
>
> As you might be aware Cacheloader 2.0 will add 4 methods for streaming
> state transfer:
>
> void storeEntireState(InputStream s);
> void storeState(Fqn subtree,InputStream s);
> void loadEntireState(OutputStream s);
> void loadState(Fqn subtree,OutputStream s);
>
> There is a slight problem will method overloading, namely we have now
> two methods:
>
> void storeEntireState(byte[] state) throws Exception;
> void storeEntireState(InputStream is) throws Exception;
>
> which are properly overloaded. However, java compiler will complain if
> somebody invokes
>
> cacheloader.storeEntireState(null);
>
> Workaround is to declare actual parameter explicitly , i.e:
>
>
> byte [] nullstate = null;
> cacheloader.storeEntireState(nullstate);
>
> so that compiler can distinguish which overloaded method to invoke.
> This is the case with our own BdbjeTest that was invoking
> cl.storeEntireState(null);
>
> Does anyone have any complaints or concerns? If not, I would proceed
> with adding
> stream based methods to CacheLoader and adding noop implementation
> methods to all
> implementers of CacheLoader interface.
>
> _______________________________________________
> jbosscache-dev mailing list
> jbosscache-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbosscache-dev




More information about the jbosscache-dev mailing list