This week's book giveaway is in the Kotlin forum.
We're giving away four copies of Kotlin in Action and have Dmitry Jemerov & Svetlana Isakova on-line!
See this thread for details.
Win a copy of Kotlin in Action this week in the Kotlin forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

narrowing  RSS feed

 
Dan T
Ranch Hand
Posts: 66
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What would happen if you narrow something that doesnt need to be narrowed ?

(ie. calling create() / findByPrimaryKey(...) )
 
Jason Mowat
Ranch Hand
Posts: 79
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hey Ryan,

I don't think you can narrow something that is not itself remote. The API states that PortableRemoteObject.narrow:

Checks to ensure that an object of a remote or abstract interface type can be cast to a desired type


It states that you would get a ClassCastException if narrowFrom cannot be cast to narrowTo. If narrowFrom (i.e. your object that doesn't need to be narrowed) is not a Remote interface, I am guessing you would get a ClassCastException. I'm not quite sure what they mean by an abstract interface type...aren't all interfaces abstract? If that's the case, then perhaps you can narrow to anything as long as it implements the interface you are using to do the narrow?

You could verify this for certain by either trying it yourself, or cracking open the code for PortableRemoteObject and seeing what it really does.

Cheers,
Jason
[ August 13, 2004: Message edited by: Jason Mowat ]
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!