Package cronapp.reports.j4c.dataset
Class J4CDataset
- java.lang.Object
-
- cronapp.reports.j4c.dataset.J4CDataset
-
- All Implemented Interfaces:
Serializable,Cloneable
public class J4CDataset extends Object implements Serializable, Cloneable
Objeto responsável por armazenar toda e qualquer informação com relação aos dados do relatório a partir de um ODBC.Created by arthemus on 20/06/16.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classJ4CDataset.SQLObjectPara manipulação da query antes de ser executada.
-
Constructor Summary
Constructors Constructor Description J4CDataset()J4CDataset(J4CObject parent)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description J4CDatasetaddColumn(J4CColumn column)voidaddJoin(J4CJoin join)J4CDatasetaddTable(J4CTable table)voidaddWhere(J4CWhereCondition whereCondition)J4CSQLBuilderbuild(Connection connection)Obtem uma nova instância do SQL Builder para trabalhar com os metadados de um banco.J4CSQLBuilderbuild(Connection connection, AutoObserver<String> autoObserver)Obtem uma nova instância do SQL Builder para trabalhar com os metadados de um banco.voidbyCollection(Collection<?> collection)Define a coleção de dados utilizada pelo dataset.J4CDatasetclone()booleanequals(Object o)Collection<?>getCollection()List<J4CColumn>getColumns()List<Map<J4CColumn,Object>>getDataPreview(Connection connection)Obtem uma lista de registros com forme a consulta sql realizada.List<J4CColumn>getDataPreviewWithoutRecords(URLClassLoader classLoader)List<J4CColumn>getDataPreviewWithoutRecords(Connection connection)Obtem uma referência da consulta afim de visualizar apenas os dados das colunas, sem a necessidade de ter os dados em sí.J4CDatasetTypegetDatasetType()J4CEntitygetEntity()StringgetJndiConnection()List<J4CJoin>getJoins()J4CObjectgetParent()List<J4CTable>getParentTables()Retorna as tabelas que compoem as clausulas from e join do dataset.StringgetPersistenceUnitName()intgetRecordLimit()StringgetSql(Connection connection)J4CDataset.SQLObjectgetSQLObject(Connection connection)List<J4CTable>getTables()List<J4CWhereCondition>getWheres()booleanhasColumn(J4CColumn column)Verifica se uma determinada coluna existe dentro do dataset.booleanhasColumn(Collection<J4CColumn> columnsSource, J4CColumn column)inthashCode()booleanhasParentTables()Verifica se o dataset já tem uma tabela adicionada.booleanisFreeQuery()voidonRefreshTransientObjects(Connection connection)J4CDatasetremoveColumn(J4CColumn column)voidremoveJoin(J4CJoin join)voidremoveTable(J4CTable table)voidremoveWhere(J4CWhereCondition j4CWhereCondition)voidreplaceColumns(List<J4CColumn> columns)Limpa todas as colunas do dataset e adiciona novas colunas.voidreset()Caso o dataset utilize a edição de query livre ou tenha seu datasource alterado, remove-se todas as tabelas, colunas, joins e cláusulas where.voidsetDatasetType(J4CDatasetType datasetType)voidsetEntity(J4CEntity entity)voidsetFreeQuery(boolean freeQuery)voidsetJndiConnection(String jndiConnection)voidsetPersistenceUnitName(String persistenceUnitName)voidsetRecordLimit(int recordLimit)voidsetSql(String sql)voidsynchronizeParent(J4CObject object)StringtoString()
-
-
-
Constructor Detail
-
J4CDataset
public J4CDataset()
-
J4CDataset
public J4CDataset(J4CObject parent)
-
-
Method Detail
-
getParent
public J4CObject getParent()
-
synchronizeParent
public void synchronizeParent(J4CObject object)
-
getCollection
public Collection<?> getCollection()
-
getDatasetType
public J4CDatasetType getDatasetType()
-
setDatasetType
public void setDatasetType(J4CDatasetType datasetType)
-
isFreeQuery
public boolean isFreeQuery()
-
setFreeQuery
public void setFreeQuery(boolean freeQuery)
-
getJndiConnection
public String getJndiConnection()
-
setJndiConnection
public void setJndiConnection(String jndiConnection)
-
setSql
public void setSql(String sql)
-
getRecordLimit
public int getRecordLimit()
-
setRecordLimit
public void setRecordLimit(int recordLimit)
-
addTable
public J4CDataset addTable(J4CTable table)
-
removeTable
public void removeTable(J4CTable table)
-
addJoin
public void addJoin(J4CJoin join)
-
removeJoin
public void removeJoin(J4CJoin join)
-
addColumn
public J4CDataset addColumn(J4CColumn column)
-
removeColumn
public J4CDataset removeColumn(J4CColumn column)
-
addWhere
public void addWhere(J4CWhereCondition whereCondition)
-
removeWhere
public void removeWhere(J4CWhereCondition j4CWhereCondition)
-
getWheres
public List<J4CWhereCondition> getWheres()
-
byCollection
public void byCollection(Collection<?> collection)
Define a coleção de dados utilizada pelo dataset.- Parameters:
collection- Coleção de objetos.
-
build
public J4CSQLBuilder build(Connection connection) throws SQLException
Obtem uma nova instância do SQL Builder para trabalhar com os metadados de um banco.- Returns:
- Classe utilitária.
- Throws:
SQLException
-
build
public J4CSQLBuilder build(Connection connection, AutoObserver<String> autoObserver) throws SQLException
Obtem uma nova instância do SQL Builder para trabalhar com os metadados de um banco. Prove o log do processamento através da classeAutoObserver.- Parameters:
connection- Conexão com o banco de dados.autoObserver- Instância da classe AutoObserver para log do processamento interno.- Returns:
- Nova instância da classe
J4CSQLBuilder - Throws:
SQLException
-
getSql
public String getSql(Connection connection)
- Returns:
- Uma query SQL com as informações do dataset.
-
getEntity
public J4CEntity getEntity()
-
setEntity
public void setEntity(J4CEntity entity)
-
getDataPreview
public List<Map<J4CColumn,Object>> getDataPreview(Connection connection) throws SQLException
Obtem uma lista de registros com forme a consulta sql realizada.- Returns:
- Lista de registros do banco.
- Throws:
SQLException
-
getSQLObject
public J4CDataset.SQLObject getSQLObject(Connection connection)
-
getDataPreviewWithoutRecords
public List<J4CColumn> getDataPreviewWithoutRecords(Connection connection) throws SQLException
Obtem uma referência da consulta afim de visualizar apenas os dados das colunas, sem a necessidade de ter os dados em sí.- Returns:
- Lista com os dados das colunas resultantes da consulta.
- Throws:
SQLException- Caso ocorra um erro durante a execução da Query no banco de dados.
-
getDataPreviewWithoutRecords
public List<J4CColumn> getDataPreviewWithoutRecords(URLClassLoader classLoader) throws Exception
- Throws:
Exception
-
clone
public J4CDataset clone()
-
hasParentTables
public boolean hasParentTables()
Verifica se o dataset já tem uma tabela adicionada.- Returns:
- true caso o dataset já tenha tabela adicionada.
-
getParentTables
public List<J4CTable> getParentTables()
Retorna as tabelas que compoem as clausulas from e join do dataset.- Returns:
- Lista com as tabelas já existentes no dataset.
-
hasColumn
public boolean hasColumn(J4CColumn column)
Verifica se uma determinada coluna existe dentro do dataset.- Parameters:
column- Coluna a ser analizada.- Returns:
- true ou false
-
hasColumn
public boolean hasColumn(Collection<J4CColumn> columnsSource, J4CColumn column)
-
onRefreshTransientObjects
public void onRefreshTransientObjects(Connection connection)
-
reset
public void reset()
Caso o dataset utilize a edição de query livre ou tenha seu datasource alterado, remove-se todas as tabelas, colunas, joins e cláusulas where.
-
getPersistenceUnitName
public String getPersistenceUnitName()
-
setPersistenceUnitName
public void setPersistenceUnitName(String persistenceUnitName)
-
-