pt.despodata.java.connection
Class DDataSourcePool

java.lang.Object
  extended bypt.despodata.java.connection.DDataSourcePool
Direct Known Subclasses:
DDataSourcePool

public class DDataSourcePool
extends java.lang.Object

Pool onde serão guardadas as conexões à base de dados ou a outros data sources como por exemplo jar(s) com objectos serializados ou XML
O problema de usar a conection pooling do JDBC 2.0 é a agregação apenas por utilizador e não por uma qualquer classificação interna.
Aparece por causa do projecto do IAPMEI em que se pretende que as tabelas de descodificação sejam locais (de um .jar de objectos serializados) e os dados especidificos sejam obtidos do SGBD através da linha lenta.


Constructor Summary
DDataSourcePool()
           
 
Method Summary
static void blindLogin()
          Login directo sem apresentar qualquer interface visual
Pelo menos nos testes poupa algum trabalho
static DDataSource getDataSource(java.lang.Object classificationID)
          Procura na pool um data source relativo à classificação pedida
O conteudo da string identificadora fica ao critério dos utilizadores poderá ser desde o nome da tabela até apenas a todas as tabelas
Se não existir devolve o data source implicito
static java.sql.Connection getImplicitConnection()
          Devolve a conxeão do data source implicito
A conexão implicita é em geral aberta no inicio de um programa client/server e sempre usada até ao final, dado que a identificação do utilizador em geral não muda.
static DDataSource getImplicitDataSource()
           
static void login()
          Faz um login à base de dados de acordo com o tipo de interface corrente
Guarda a conexão no implicit data source
static void setDataSource(java.lang.Object classificationID, DDataSource dataSource)
          Adiciona um data source identificado por uma classificação à pool de data sources
static void setImplicitDataSource(DDataSource _implicitDataSource)
          Afecta o data source implicito
static void setInterfaceType(int _interfaceType)
          Afecta o tipo de interface usado
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DDataSourcePool

public DDataSourcePool()
Method Detail

login

public static void login()
Faz um login à base de dados de acordo com o tipo de interface corrente
Guarda a conexão no implicit data source


blindLogin

public static void blindLogin()
Login directo sem apresentar qualquer interface visual
Pelo menos nos testes poupa algum trabalho


setInterfaceType

public static void setInterfaceType(int _interfaceType)
Afecta o tipo de interface usado

Parameters:
_interfaceType - Tipo de interface (SWING ou HTML)

setImplicitDataSource

public static void setImplicitDataSource(DDataSource _implicitDataSource)
Afecta o data source implicito

Parameters:
_implicitDataSource - Referência para o data source implicito

getImplicitDataSource

public static DDataSource getImplicitDataSource()
Returns:
Referência para o data source implicito

getImplicitConnection

public static java.sql.Connection getImplicitConnection()
Devolve a conxeão do data source implicito
A conexão implicita é em geral aberta no inicio de um programa client/server e sempre usada até ao final, dado que a identificação do utilizador em geral não muda.

Returns:
Conexão implicita

setDataSource

public static void setDataSource(java.lang.Object classificationID,
                                 DDataSource dataSource)
Adiciona um data source identificado por uma classificação à pool de data sources

Parameters:
classificationID - Classificação do data source
dataSource - Referência para o data source

getDataSource

public static DDataSource getDataSource(java.lang.Object classificationID)
Procura na pool um data source relativo à classificação pedida
O conteudo da string identificadora fica ao critério dos utilizadores poderá ser desde o nome da tabela até apenas a todas as tabelas
Se não existir devolve o data source implicito

Returns:
Data source entretanto descoberto ou null caso não exista