[ 
https://issues.apache.org/jira/browse/THRIFT-1232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13060658#comment-13060658
 ] 

Henrique Mendonca commented on THRIFT-1232:
-------------------------------------------

actually... following THRIFT-724 and 
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Error , I 
think it shouldn't inherit TException at all...

Perhaps extend it from Error like MDN suggests?

DerivedException = function(args) {
  this.prototype = Error.prototype;
  this.name = 'DerivedException';
...
}

then you could even get rid of Thrift.inherits() and Thrift.TException on 
Thrift.js all together.



> JavaScript TException should be a constructor function
> ------------------------------------------------------
>
>                 Key: THRIFT-1232
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1232
>             Project: Thrift
>          Issue Type: Bug
>          Components: JavaScript - Library
>            Reporter: Pascal Bach
>            Priority: Minor
>              Labels: exception-handling, js
>
> The JavaScript TException is declared as an object with a prototype property 
> assigned to it.
> It should be declared as a constructor function with a prototype. Otherwise 
> exceptions derived from TException using Thrift.inherits are not instances of 
> TException.
> Example:
> function DerivedException() {};
> Thrift.inherits(DerivedException, Thrift.TException);
> var ex = new DerivedException();
> ex instanceof Thrift.TException // => Error as TException is not a function

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to