Hi Uvindra,

+1 for defining specific exceptions.
How about when defining a new APIMDAOException, extending it from a
general APIManagementException?
When there's another specific DAO related exception we can extend it from
APIMDAOException.
In that way, we can group specific types of exceptions in a hierarchical
manner.
WDYT?

Thanks!

On Thu, Oct 20, 2016 at 2:27 PM, Uvindra Dias Jayasinha <[email protected]>
wrote:

> I would like to know your thoughts on $subject.
>
> Previously we have a single custom exception class in APIM called
> 'APIManagementException' and this was used when throwing exceptions
> specific to the APIM product. Pros and Cons of doing it this way are,
>
> *Pros* - Only one APIM specific exception needs to be handled in the
> entire APIM code base
>
> *Cons* - When an exception is thrown its very difficult to pin point the
> reason for the exception to be thrown. This results in,
>
> 1. Having to solely depend on the error message of the exception to
> determine what has happened(Provided that the error message is clear)
>
> 2. Difficult to handle exception appropriately at code level because we
> are not aware of the specifics of the exception
>
>
> In light of this doesn't it make sense to define specific custom
> exceptions? For example when interacting with the DAO component of APIM if
> any data access errors are encountered we could define an
> 'APIMDAOException' and throw that. This allows users of the DAO component
> to clearly identify and handle that specific exception appropriately.
>
>
> This obviously needs to be applied in a way that makes sense at component
> level(DAO, Gateway, etc.) so its clear which specific component has run
> into an issue.
>
> WDYT?
>
> --
> Regards,
> Uvindra
>
> Mobile: 777733962
>



-- 
Malintha Amarasinghe
Software Engineer
*WSO2, Inc. - lean | enterprise | middleware*
http://wso2.com/

Mobile : +94 712383306
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to