Re: Is there a way to reference the engine from a linker?
Oh, good one. Yes, I think that’ll do. It engages Nashorn’s built-in linker chain to find an appropriate conversion. Attila. > On 2018. Apr 4., at 19:28, Paulo Lopeswrote: > > Hi, > > I've worked around it by using: > > > ScriptUtils.convert(obj, Map.class) > > > When ever I needed to get a script object as a map or replacing the class > with List.class when I need a list... > > Is that a safe way to do it? > > > Original Message > From: szege...@gmail.com > Sent: April 4, 2018 7:21 PM > To: plo...@redhat.com > Cc: nashorn-dev@openjdk.java.net > Subject: Re: Is there a way to reference the engine from a linker? > > Sorry for an awfully late response, but hope it might still help: > Java.asJSONCompatible delegates on the Java side to > jdk.nashorn.api.scripting.wrapAsJSONCompatible. It’s part of Nashorn’s > supported public API, so it should be fine for you to call it. > > I’m actually wondering how useful is that API method - you need to pass a > “homeGlobal” parameter, and honestly I’m not really sure how you’d obtain > that. Maybe Sundar has an idea. > > Attila. > >> On 2018. Mar 15., at 20:02, Paulo Lopes wrote: >> >> Hi, >> >> I'm writing a guarded linker to allow custom casting from JSObject to Vertx >> custom types. So far so good, the basic tests seem to work but I think I'm >> writing too much boiler plate code as I need in many times to have an >> intermediate conversion from JSObject to Map or List. >> >> So I know that in the engine I could call Java.asJSONCompatible() but I >> don't see how I could get a reference to the engine in the linker. >> >> Could anyone see a way or let me know if there is a open API to do this? >> >> Thanks! >> Paulo >
Re: Is there a way to reference the engine from a linker?
Hi, I've worked around it by using: ScriptUtils.convert(obj, Map.class) When ever I needed to get a script object as a map or replacing the class with List.class when I need a list... Is that a safe way to do it? Original Message From: szege...@gmail.com Sent: April 4, 2018 7:21 PM To: plo...@redhat.com Cc: nashorn-dev@openjdk.java.net Subject: Re: Is there a way to reference the engine from a linker? Sorry for an awfully late response, but hope it might still help: Java.asJSONCompatible delegates on the Java side to jdk.nashorn.api.scripting.wrapAsJSONCompatible. It’s part of Nashorn’s supported public API, so it should be fine for you to call it. I’m actually wondering how useful is that API method - you need to pass a “homeGlobal” parameter, and honestly I’m not really sure how you’d obtain that. Maybe Sundar has an idea. Attila. > On 2018. Mar 15., at 20:02, Paulo Lopeswrote: > > Hi, > > I'm writing a guarded linker to allow custom casting from JSObject to Vertx > custom types. So far so good, the basic tests seem to work but I think I'm > writing too much boiler plate code as I need in many times to have an > intermediate conversion from JSObject to Map or List. > > So I know that in the engine I could call Java.asJSONCompatible() but I > don't see how I could get a reference to the engine in the linker. > > Could anyone see a way or let me know if there is a open API to do this? > > Thanks! > Paulo
Re: Is there a way to reference the engine from a linker?
Sorry for an awfully late response, but hope it might still help: Java.asJSONCompatible delegates on the Java side to jdk.nashorn.api.scripting.wrapAsJSONCompatible. It’s part of Nashorn’s supported public API, so it should be fine for you to call it. I’m actually wondering how useful is that API method - you need to pass a “homeGlobal” parameter, and honestly I’m not really sure how you’d obtain that. Maybe Sundar has an idea. Attila. > On 2018. Mar 15., at 20:02, Paulo Lopeswrote: > > Hi, > > I'm writing a guarded linker to allow custom casting from JSObject to Vertx > custom types. So far so good, the basic tests seem to work but I think I'm > writing too much boiler plate code as I need in many times to have an > intermediate conversion from JSObject to Map or List. > > So I know that in the engine I could call Java.asJSONCompatible() but I > don't see how I could get a reference to the engine in the linker. > > Could anyone see a way or let me know if there is a open API to do this? > > Thanks! > Paulo
Re: Is there a way to reference the engine from a linker?
Hi, Dynalink and its pluggable linkers are independent of Nashorn. If you want to access the current engine, you've to arrange to pass it. Thanks, -Sundar On 16/03/18, 12:32 AM, Paulo Lopes wrote: Hi, I'm writing a guarded linker to allow custom casting from JSObject to Vertx custom types. So far so good, the basic tests seem to work but I think I'm writing too much boiler plate code as I need in many times to have an intermediate conversion from JSObject to Map or List. So I know that in the engine I could call Java.asJSONCompatible() but I don't see how I could get a reference to the engine in the linker. Could anyone see a way or let me know if there is a open API to do this? Thanks! Paulo