axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dushshantha Chandradasa (JIRA)" <axis-c-...@ws.apache.org>
Subject [jira] Updated: (AXISCPP-722) Overloaded processException in AxisEngineException class
Date Tue, 05 Jul 2005 11:22:10 GMT
     [ http://issues.apache.org/jira/browse/AXISCPP-722?page=all ]

Dushshantha Chandradasa updated AXISCPP-722:
--------------------------------------------

    Attachment: ExceptionModel_before.JPG

Samisa wrote:

PFA the class diagram of current exception model we have.

            

            Looking into the several issues we have against the exception model, it is worth
considering a re-arrangement here.

http://issues.apache.org/jira/browse/AXISCPP-707

http://issues.apache.org/jira/browse/AXISCPP-721

http://issues.apache.org/jira/browse/AXISCPP-722

 

            The idea is *very* simple here.  (basic OO stuff)

1.       We have m_sMessage and m_iExceptionCode as data members in all the derived classes
– move them to base class. Move the access methods to the base class as well.

2.       Drop all processException() methods and move the logic to constructor

3.       getMessage() methods in the derived classes do not get the message rather return
the message corresponding to the exception code. Hence rename getMessage() getMessageForExceptionCode()

4.       We have “what()” in the base class to get the error message. This is a virtual
method inherited from the ‘exception’ class hence we cannot change the naming. However,
better to have a more sensible name like getMessage to wrap this

5.       There are too many constructors in the derived classes, I would like only two constructors
for each class

a.       Copy constructor

b.       Constructor with 2 parameters, exception code and message, with message defaulting
to null. ExceptionClass(int code, char* msg = null)



> Overloaded processException in AxisEngineException class
> --------------------------------------------------------
>
>          Key: AXISCPP-722
>          URL: http://issues.apache.org/jira/browse/AXISCPP-722
>      Project: Axis-C++
>         Type: Bug
>   Components: Server - Engine
>     Versions: current (nightly)
>  Environment: All
>     Reporter: Dushshantha Chandradasa
>     Assignee: Dushshantha Chandradasa
>  Attachments: ExceptionModel_before.JPG
>
> Samisa Abeysinghe <samisa.abeysinghe@gmail.com> wrote on 30/06/2005
> > 11:04:29:
> > 
> > > Hi All,
> > >     We have several overloaded forms of processException in 
> > > AxisEngineException class.
> > > 
> > >     I am sure that we are not using all of those. It is quite hard
> > to
> > > undestand and locate the problem locations when maintaining the 
> > > implementation. Shall we drop those that are not used from the list 
> > > below?
> > > 
> > >     void processException(const exception* e);
> > >     void processException(const exception* e, const int
> > iExceptionCode);
> > >     void processException (const exception* e, char* pcMessage);
> > >     void processException(const int iExceptionCode);
> > >     void processException(const int iExceptionCode, char*
> > pcMessage);
> > > 
> > >     BTW, some can be replaced with the copy constructor. I think we 
> > > can drop the top 3 and keep the bottom 2. Sometime it is better to 
> > > KISS ;-)
> > > 
> > > Thanks,
> > > Samisa...

-- 
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


Mime
View raw message