freedom of choice : codez dans votre langage · 2019-11-15 · xepquery.setparameter(1,3); //...
TRANSCRIPT
![Page 1: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/1.jpg)
Freedom of choice : Codez dans votre langage
Guillaume RongierSales Engineer
![Page 2: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/2.jpg)
Introduction
![Page 3: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/3.jpg)
IRIS Data Platform
![Page 4: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/4.jpg)
![Page 5: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/5.jpg)
![Page 6: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/6.jpg)
JDBC/ODBC
XEP
Native API
Hibernate/EntiyFrameWork
PEXEnsemble
Gateway
![Page 7: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/7.jpg)
Native APIGlobals
![Page 8: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/8.jpg)
Native API
Class Method
Routine
![Page 9: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/9.jpg)
Native API// Java
IRISConnection conn = (IRISConnection) java.sql.DriverManager.getConnection(connStr,user,password);
IRIS dbnative = IRIS.createIRIS(conn);
dbnative.set("Hello","global","sub1");
dbnative.set("World","global","sub2");
global
global("sub2")
"World"
global("sub1")
"Hello"
![Page 10: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/10.jpg)
Native API/ClassMethod
// Java
String className = "User.JavaTest";
String result = IRIS.classMethodString(className,"String","Java Test"));
// ObjectScript
Class User.JavaTest{
ClassMethod String(p1 As %String) As %String{
Quit "Hello "_p1}
}
![Page 11: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/11.jpg)
XEPExtreme Event Processing
![Page 12: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/12.jpg)
XEP
![Page 13: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/13.jpg)
![Page 14: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/14.jpg)
XEP// Java
// Connexion
EventPersisterxepPersister = PersisterFactory.createPersister();
xepPersister.connect("127.0.0.1",51773,"User","_SYSTEM","SYS");
// Import flat schema
xepPersister.importSchema("xep.samples.SingleStringSample");
// Event
Event xepEvent = xepPersister.getEvent("xep.samples.SingleStringSample");
SingleStringSample sample = new xep.samples.SingleStringSample("Test");
xepEvent.store(sample);
![Page 15: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/15.jpg)
XEP Query
String sqlQuery = "SELECT * FROM xep_samples.SingleStringSample WHERE %ID BETWEEN ? AND ?";
EventQuery<SingleStringSample> xepQuery = xepEvent.createQuery(sqlQuery);
xepQuery.setParameter(1,3); // assign value 3 to first SQL parameterxepQuery.setParameter(2,12); // assign value 12 to second SQL parameterxepQuery.execute(); // get resultset for IDs between 3 and 12
![Page 16: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/16.jpg)
GatewayJava, .Net, Python
![Page 17: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/17.jpg)
Gateway
Gateway EnsembleTCP/IP
![Page 18: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/18.jpg)
Gateway// ObejctScriptset ..proxyGateway = ##class(%Net.Remote.Object).%New(..GW,"Allergie.Allergie")set tReturn = ..proxyGateway.getReactions(pName)
// C#
using System;using System.Collections.Generic;
namespace Allergie{
public class Allergie{
public List<string> getReactions(String aliment){
return getContainsList(aliment,aliments,"reaction");}
}}
![Page 19: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/19.jpg)
PEXPolyglot Ensemble Extension
![Page 20: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/20.jpg)
PEX Ensemble
PEX
Json
![Page 21: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/21.jpg)
PEXPEX Ensemble
EnsLib.InboundAdapterOnInit()OnTearDown()OnTask()
com.intersystems.enslib.InboundAdapterOnInit()OnTearDown()OnTask()
com.intersystems.enslib.pex.BusinessOperationOnInit()OnTearDown()OnMessage()
com.intersystems.enslib.pex.Message
EnsLib.BusinessOperationOnInit()OnTearDown()OnMessage()
Ens.Request/Ens.Response
com.intersystems.enslib.pex.BusinessProcessOnInit()OnTearDown()OnRequestOnResponseOnComplete
EnsLib.BusinessProcess
![Page 22: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/22.jpg)
DEMO !
![Page 23: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/23.jpg)
La puissance par la simplicité.
Merci.
![Page 24: Freedom of choice : Codez dans votre langage · 2019-11-15 · xepQuery.setParameter(1,3); // assign value 3 to firstSQL parameter xepQuery.setParameter(2,12); // assign value 12](https://reader034.vdocuments.mx/reader034/viewer/2022050418/5f8de6cd47dabc4db45e9d9a/html5/thumbnails/24.jpg)
GIT
https://github.com/grongierisc/YCSB/tree/master/iris
https://github.com/grongierisc/PEX
https://github.com/grongierisc/RestToDll