<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'><BR>Hi Martin:<BR>
&nbsp;<BR>
I really appreciate your comments and all comments are <BR>
welcome. I really want to make a good work with the<BR>
ogr database access stuff.<BR>
&nbsp;<BR>
In next week I will work in a document describing all<BR>
ideas and I will create a uml class diagram&nbsp;and with<BR>
your help and help from other qgis developers create a<BR>
better design that do not interfere with the library.<BR><BR>Regards<BR>
Godofredo Contreras<BR><BR>

<HR id=stopSpelling>
<BR>
&gt; Date: Sat, 10 Nov 2007 13:59:32 +0100<BR>&gt; From: wonder.sk@gmail.com<BR>&gt; To: frdcn@hotmail.com<BR>&gt; Subject: Re: [Qgis-developer] [QGIS Commit] SVN [godofredo] r7284 - branches/ogr-plugin-branch/src/app<BR>&gt; CC: qgis-developer@lists.qgis.org<BR>&gt; <BR>&gt; On Nov 8, 2007 4:14 PM, godofredo contreras &lt;frdcn@hotmail.com&gt; wrote:<BR>&gt; &gt;<BR>&gt; &gt; The idea to keep qgsdatabaseconnectionbase and<BR>&gt; &gt; qgsconnectionmanager is to reuse<BR>&gt; &gt; this classes in the refactoring of spit and for the ogr plugin(layer cretion<BR>&gt; &gt; and utilities), If we move them to app<BR>&gt; &gt; how could we call that classes?<BR>&gt; <BR>&gt; Ah, I thought that you would implement that loading of layers directly<BR>&gt; in application and not as a plugin. Right if they're moved out of core<BR>&gt; lib they're not accessible for providers/plugins.<BR>&gt; <BR>&gt; Anyway, I still do not understand completely your design... and I fail<BR>&gt; to find any information about it, how it will be bound to the rest of<BR>&gt; QGIS and what will be changed.<BR>&gt; <BR>&gt; QgsConnectionManager does some managing of connections. This class is<BR>&gt; not well designed as it depends on all supported types of connections.<BR>&gt; Imagine that we want to add native oracle connection - in that case we<BR>&gt; would need to modify also this class - that's not very nice. My<BR>&gt; suggestion is to make it more generic: all provider-specific stuff can<BR>&gt; be propagated to the Qgs*DatabaseConnection classes.<BR>&gt; E.g. QgsConnectionManager::connect() would get just one parameter:<BR>&gt; pointer to QgsDatabaseConnectionBase and will do the connection. Or<BR>&gt; QgsConnectionManager::saveConnection() won't have hardcoded 'baseKey'<BR>&gt; for every type of connection but will ask for it using 'mConnection'<BR>&gt; instance. Does this make sense for you?<BR>&gt; <BR>&gt; <BR>&gt; &gt; Also I was thinking in using a similar aproach to<BR>&gt; &gt; QgsVectorLayerin QgsDatabaseConnectionBase but<BR>&gt; &gt; checking the code I saw that QgsProviderRegistry::instance() gives access<BR>&gt; &gt; just to provider class not to other<BR>&gt; &gt; classes compiled in provider(assuming that we move<BR>&gt; &gt; qgspostgresdatabaseconnection and qgsogrdatabaseconnection to their<BR>&gt; &gt; respective<BR>&gt; &gt; provider), do you know if there are a form to access other classes in the<BR>&gt; &gt; provider in runtime?<BR>&gt; <BR>&gt; I don't understand exactly the relation between Qgs*DatabaseConnection<BR>&gt; and according provider so I don't know.<BR>&gt; <BR>&gt; I hope you don't take my complains as a bad critism of your work - I<BR>&gt; just try to keep core library in a good shape.<BR>&gt; <BR>&gt; Martin<BR><BR><br /><hr />Peek-a-boo FREE Tricks & Treats for You! <a href='http://www.reallivemoms.com?ocid=TXT_TAGHM&loc=us' target='_new'>Get 'em!</a></body>
</html>