Re: Integration of Psycopg with XTA - Mailing list psycopg

From Federico Di Gregorio
Subject Re: Integration of Psycopg with XTA
Date
Msg-id 4d647279-19ae-75ea-83a7-b74b647c79bd@dndg.it
Whole thread Raw
In response to Re: Integration of Psycopg with XTA  (Christian Ferrari <camauz@yahoo.com>)
Responses Re: Integration of Psycopg with XTA  (Daniele Varrazzo <daniele.varrazzo@gmail.com>)
List psycopg
On 10/02/2018 10:07 PM, Christian Ferrari wrote:
> Hi Federico,
> I have been able to test _raw_pgconn using SWIG, as documented here 
> https://sourceforge.net/p/swig/mailman/message/27919299/ , the trick to 
> use PyCapsule and SWIG together is to specifically map the type with a 
> directive like this one:
> 
> %typemap(in) PGconn * {
>    $1 = (PGconn *) PyCapsule_GetPointer($input, 
> "psycopg2.connection._raw_pgconn");
> }
> 
> This is interesting because PyCapsule is for sure a "clean" way to pass 
> the pointer from Psycopg to XTA.
> 
> 
> A couple of questions to understand how to implement it as a re-usable 
> deliverable.
> 
> In current branch, _raw_pgconn is a property, it's not a method, I have 
> to retrieve it as below: 
> 
> pgconn = rm1._raw_pgconn
> xar1 = PostgresqlXaResource(pgconn, "PostgreSQL", "dbname=testdb")
> 
> what do you think about a "getter method":
> 
> pgconn = rm1._raw_pgconn()
> 
> the name of the method does not really matter to me.
> 
> _raw_pgconn() create a Capsule object that should be destroyed.

Right now the getter creates a new capsule at every invocation so 
transforming it into a method should be straightforward. I'll do it 
later today so that you can test.

 > What do you think about a factory to create and destroy a PyCapsule that
 > contains the PGconn pointer?

Mm. I don't understand what you need here? Can you show an example of usage?

federico

-- 
Federico Di Gregorio                         federico.digregorio@dndg.it
DNDG srl                                                  http://dndg.it
  Credo fermamente che da qualche parte, in una scatola ci sia un gatto
   che non è vivo ne morto. Credo anche che se i fisici non si sbrigano
   a dargli una scatoletta, ben presto sarà solo morto.
                               -- adattato da una frase di Sam Black Crow


psycopg by date:

Previous
From: Christian Ferrari
Date:
Subject: Re: Integration of Psycopg with XTA
Next
From: Daniele Varrazzo
Date:
Subject: Re: Integration of Psycopg with XTA