Hi Bryan,

If I try this alternative way, I get this error

[javac]
/home/abhinav/Documents/Derby/Derby-6801/java/shared/org/apache/derby/shared/common/error/MessageUtils.java:88:
error: ')' expected
    [javac]         return (cause instanceof carrier.getClass())
    [javac]
         ^
    [javac]
/home/abhinav/Documents/Derby/Derby-6801/java/shared/org/apache/derby/shared/common/error/MessageUtils.java:88:
error: illegal start of expression
    [javac]         return (cause instanceof carrier.getClass())
    [javac]
          ^
    [javac]
/home/abhinav/Documents/Derby/Derby-6801/java/shared/org/apache/derby/shared/common/error/MessageUtils.java:88:
error: ';' expected
    [javac]         return (cause instanceof carrier.getClass())
    [javac]
           ^
    [javac]
/home/abhinav/Documents/Derby/Derby-6801/java/shared/org/apache/derby/shared/common/error/MessageUtils.java:89:
error: not a statement
    [javac]                 ? cause : null;
    [javac]                                 ^
    [javac] 4 errors


I understand from this, that java is unable to parse "carrier.getClass()",
am I right ? Also I think I don't understand what would be passed as an
argument for the Exception carrier, when getArgumentFerry(SQLException se,
Exception carrier) is called ?



On Mon, Jul 13, 2015 at 8:23 AM, Bryan Pendleton <[email protected]
> wrote:

> Now when I included buildSqlerrmc(),  It needs
>> StandardException.getArgumentFerry() to be precise.
>>
>> How should we solve this ?
>>
>
> Hi Abhinav,
>
> Another possibility would be to move StandardException.getArgumentFerry
> out of StandardException and into MessageUtils.
>
> It's not a very complicated function, although it does need to
> be able to run 'instanceof'.
>
> Perhaps a MessageUtils implementation of this function could be
> something like:
>
>
>     /**
>      * Unpack the exception, looking for a StandardException, which carries
>      * the Derby messageID and arguments.
>      * @see org.apache.derby.impl.jdbc.SQLExceptionFactory
>      * @see org.apache.derby.impl.jdbc.Util
>      */
>     public static Exception getArgumentFerry(SQLException se, Exception
> carrier)
>     {
>         Throwable cause = se.getCause();
>         return (cause instanceof carrier.getClass()) ? cause : null;
>     }
>
> Something like this might be an alternative approach.
>
> bryan
>
>

Reply via email to