[rules-dev] Drools API improvement sugestion
Greg Barton
greg_barton at yahoo.com
Fri Dec 12 11:30:57 EST 2008
I vote for runtime exception. That gives you the option of catching it or not. Just from experience I can't tell you how nice it was when HibernateException went from a checked to an unchecked exception.
That being said, the API methods that can throw it should still declare it in the throws clause, even if it's a runtime exception. That helps IDEs like Eclipse wrap method calls in the right try/catch blocks when generating code. (See the "Source->Surround With->try/catch block" menu option)
--- On Fri, 12/12/08, Zoltan Farkas <zoly at daxtechnologies.com> wrote:
> From: Zoltan Farkas <zoly at daxtechnologies.com>
> Subject: RE: [rules-dev] Drools API improvement sugestion
> To: "Rules Dev List" <rules-dev at lists.jboss.org>
> Date: Friday, December 12, 2008, 10:10 AM
> >From my point of view as a developer who writes code
> against the api,
> I have to handle to case of a Resource not being there, or
> being
> invalid/corupt... theese are casses that I need to recover
> from in my
> code...
> and I have no way of knowing what do I need to catch and
> where, without
> first writing the code, run tests against it, and examine
> stack traces.
> I find this quite inefficient...
>
> If you google for ResourceNotFoundException, you will find
> out that
> there is quite a few APIs out there that implement it.
> There is other
> apis that have InvalidResourceException... or
> javx.resource.ResourceException
>
> My preference would be toward catched Exceptions in this
> case.
>
> --zoly
>
>
> ________________________________
>
> From: rules-dev-bounces at lists.jboss.org
> [mailto:rules-dev-bounces at lists.jboss.org] On Behalf Of
> Mark Proctor
> Sent: Thursday, December 11, 2008 8:04 PM
> To: Rules Dev List
> Subject: Re: [rules-dev] Drools API improvement sugestion
>
>
> Zoltan Farkas wrote:
>
> Based on current implementation, the following methods I
> think
> should throw a exception, something like:
> ResourceNotFoundException
>
> do you want this as runtime or catched exception? At the
> moment we are
> trying to avoid catched exceptions.
>
> Mark
>
>
>
> org.drools.compiler.PackageBuilder.addKnowledgeResource()
> org.drools.builder.impl.KnowledgeBuilderImpl.add()
>
> another option might be to verify the validity of a
> Resource
> object at creation time and make ResourceFactory factory
> methods throw
> ResourceNotFoundException.
>
> I believe the case of a "not found resource" the
> user of the api
> should be "ecouraged" to handle.
>
> Another case that might be needed to be handled could be
> InvalidResource?
>
> Let me know what you guys think
>
> Regards
>
> --zoly
>
> ________________________________
>
>
> _______________________________________________
> rules-dev mailing list
> rules-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-dev
>
>
>
> _______________________________________________
> rules-dev mailing list
> rules-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-dev
More information about the rules-dev
mailing list