Re: Java interop with dynamic proxies

2013-03-13 Thread Thomas
@Brian

I want to translate the snippet above to Clojure.

@Jonathan

That is more or less what I tried, but I get this error:

 (.setName fred fred)
UnsupportedOperationException setName 
 x.x.proxy$java.lang.Object$Fred$8b90692b.setName (:-1)

from Java it all works (albeit kinda mysteriously for me).

Thank in advance
Thomas


-- 
-- 
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
Clojure group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Java interop with dynamic proxies

2013-03-13 Thread Gary Verhaegen
It would help if you could give an executable representative case (if
the library you are trying to use is not freely available, maybe try
to find an open source library that has a similar interface ? I am by
no means a Java wizard, but it seems pretty idiomatic).

On 13 March 2013 11:06, Thomas th.vanderv...@gmail.com wrote:
 @Brian

 I want to translate the snippet above to Clojure.

 @Jonathan

 That is more or less what I tried, but I get this error:

  (.setName fred fred)
 UnsupportedOperationException setName
 x.x.proxy$java.lang.Object$Fred$8b90692b.setName (:-1)

 from Java it all works (albeit kinda mysteriously for me).

 Thank in advance
 Thomas


 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with your
 first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 ---
 You received this message because you are subscribed to the Google Groups
 Clojure group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.



-- 
-- 
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
Clojure group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Java interop with dynamic proxies

2013-03-13 Thread Thomas
Not sure what I did previously different, but now it seems to work for me 
with the code snippet similar as the one above (And which I am sure I tried 
before as well).

Thank you all for your help,

Thomas

-- 
-- 
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
Clojure group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.




Java interop with dynamic proxies

2013-03-12 Thread Thomas
Hi All,

I have to interface with a Java project that is used in the following way:

Factory f = Factory.createInstance();
Fred fred = f.create( Fred.class);
fred.setName( Fred);

Where Fred is just an interface with some getters and setters, and I guess 
the dynamic proxy generates the right code behind the covers.

Any ideas how to do the equivalent in Clojure? (I figured out how to do the 
first line, but have tried various things for the second to no avail)

TIA
Thomas

-- 
-- 
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
Clojure group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Java interop with dynamic proxies

2013-03-12 Thread Brian Goslinga
Do you want to know how to define Fred, or how to translate the above code 
snippet?

-- 
-- 
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
Clojure group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.




Re: Java interop with dynamic proxies

2013-03-12 Thread Jonathan Fischer Friberg
I think you can simply use 'Fred' instead of 'Fred.class'.

Since, in the repl:

(class Integer)
;= java.lang.Class

I.e. just by using the name, we get a Class object, which should correspond
to .class in java.
In other words, you should be able to run:

(let [f (Factory/createInstance)
  fred (.create f Fred)]
  (.setName fred Fred))

Might be wrong though. :)

Jonathan


On Wed, Mar 13, 2013 at 12:08 AM, Brian Goslinga
brian.gosli...@gmail.comwrote:

 Do you want to know how to define Fred, or how to translate the above code
 snippet?

 --
 --
 You received this message because you are subscribed to the Google
 Groups Clojure group.
 To post to this group, send email to clojure@googlegroups.com
 Note that posts from new members are moderated - please be patient with
 your first post.
 To unsubscribe from this group, send email to
 clojure+unsubscr...@googlegroups.com
 For more options, visit this group at
 http://groups.google.com/group/clojure?hl=en
 ---
 You received this message because you are subscribed to the Google Groups
 Clojure group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to clojure+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.




-- 
-- 
You received this message because you are subscribed to the Google
Groups Clojure group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
Clojure group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.