te::vp::Merge Class Reference

#include <Merge.h>

Inheritance diagram for te::vp::Merge:
te::vp::Algorithm

Public Types

enum  MergeStrategy { PUREMERGE = 0, TRYGETMAX = 1, AUTOINCREMENT = 2 }
 

Public Member Functions

bool executeMemory (te::vp::AlgorithmParams *mainParams)
 
bool executeQuery (te::vp::AlgorithmParams *mainParams)
 
 Merge ()
 
virtual ~Merge ()
 

Protected Member Functions

MergeStrategy checkStrategy ()
 
std::unique_ptr< te::da::DataSetTypegetOutputDataSetType (te::vp::AlgorithmParams *mainParams)
 
int getPropertyType (const te::dt::Property *p)
 
std::vector< std::pair< std::string, std::string > > getPropNames (const std::map< std::string, te::dt::AbstractData * > &specificParams)
 
bool isPrimaryKeyProperty (const te::da::DataSetType *dst, const std::string &p)
 
bool isUpdate (const std::map< std::string, te::dt::AbstractData * > &specificParams)
 
int tryGetMax ()
 
void updateInputDst (te::da::DataSourceTransactor *transactor)
 

Private Attributes

bool m_isUpdate
 
te::da::DataSetm_originDs
 
te::da::DataSetTypem_originDst
 
te::da::DataSourcePtr m_originSource
 
std::string m_outDsetName
 
te::da::DataSourcePtr m_outDsrc
 
std::vector< std::pair< std::string, std::string > > m_properties
 
te::da::DataSetm_targetDs
 
te::da::DataSetTypem_targetDst
 
te::da::DataSourcePtr m_targetSource
 
int m_targetSRID
 

Detailed Description

Definition at line 60 of file Merge.h.

Member Enumeration Documentation

Enumerator
PUREMERGE 
TRYGETMAX 
AUTOINCREMENT 

Definition at line 64 of file Merge.h.

Constructor & Destructor Documentation

te::vp::Merge::Merge ( )

Definition at line 70 of file Merge.cpp.

virtual te::vp::Merge::~Merge ( )
inlinevirtual

Definition at line 73 of file Merge.h.

References p.

Member Function Documentation

bool te::vp::Merge::executeMemory ( te::vp::AlgorithmParams mainParams)
virtual

Implements te::vp::Algorithm.

Definition at line 81 of file Merge.cpp.

References te::mem::DataSet::add(), te::da::AssociateDataSetTypeConverterSRID(), AUTOINCREMENT, checkStrategy(), te::common::Exception::code(), DataSet(), ds, te::da::GetFirstGeomProperty(), te::da::DataSet::getGeometry(), te::vp::AlgorithmParams::getInputParams(), te::dt::Property::getName(), te::vp::AlgorithmParams::getOutputDataSetName(), getOutputDataSetType(), te::vp::AlgorithmParams::getOutputDataSource(), te::dt::CompositeProperty::getPropertyPosition(), getPropertyType(), getPropNames(), te::vp::AlgorithmParams::getSpecificParams(), te::gm::GeometryProperty::getSRID(), te::da::DataSet::getValue(), te::da::HideColumns(), te::dt::INT16_TYPE, te::dt::INT32_TYPE, te::common::TaskProgress::isActive(), te::da::DataSet::isEmpty(), te::da::DataSet::isNull(), isPrimaryKeyProperty(), isUpdate(), m_isUpdate, m_originDs, m_originDst, m_originSource, m_outDsetName, m_outDsrc, m_properties, m_targetDs, m_targetDst, m_targetSource, m_targetSRID, te::vp::MEMORY, te::da::DataSet::moveBeforeFirst(), te::da::DataSet::moveNext(), te::common::TaskProgress::pulse(), PUREMERGE, te::mem::DataSetItem::setGeometry(), te::mem::DataSetItem::setInt16(), te::mem::DataSetItem::setInt32(), te::mem::DataSetItem::setInt64(), te::common::TaskProgress::setTotalSteps(), te::mem::DataSetItem::setValue(), te::da::DataSet::size(), TE_LOG_ERROR, TE_LOG_INFO, TE_TR, TRYGETMAX, tryGetMax(), updateInputDst(), te::common::TaskProgress::useTimer(), te::vp::ValidateAlgorithmParams(), and te::common::Exception::what().

Referenced by te::vp::MergeDialog::onOkPushButtonClicked().

bool te::vp::Merge::executeQuery ( te::vp::AlgorithmParams mainParams)
virtual

Implements te::vp::Algorithm.

Definition at line 814 of file Merge.cpp.

int te::vp::Merge::getPropertyType ( const te::dt::Property p)
protected
std::vector< std::pair< std::string, std::string > > te::vp::Merge::getPropNames ( const std::map< std::string, te::dt::AbstractData * > &  specificParams)
protected

Definition at line 517 of file Merge.cpp.

References te::vp::ComplexData< T >::getValue().

Referenced by executeMemory().

bool te::vp::Merge::isPrimaryKeyProperty ( const te::da::DataSetType dst,
const std::string &  p 
)
protected

Definition at line 710 of file Merge.cpp.

References te::da::DataSetType::getPrimaryKey(), te::da::PrimaryKey::getProperties(), and p.

Referenced by executeMemory().

bool te::vp::Merge::isUpdate ( const std::map< std::string, te::dt::AbstractData * > &  specificParams)
protected

Definition at line 490 of file Merge.cpp.

References te::vp::ComplexData< T >::getValue().

Referenced by executeMemory().

int te::vp::Merge::tryGetMax ( )
protected

Member Data Documentation

bool te::vp::Merge::m_isUpdate
private

Definition at line 109 of file Merge.h.

Referenced by executeMemory().

te::da::DataSet* te::vp::Merge::m_originDs
private

Definition at line 104 of file Merge.h.

Referenced by executeMemory().

te::da::DataSetType* te::vp::Merge::m_originDst
private

Definition at line 103 of file Merge.h.

Referenced by executeMemory(), getOutputDataSetType(), and updateInputDst().

te::da::DataSourcePtr te::vp::Merge::m_originSource
private

Definition at line 102 of file Merge.h.

Referenced by executeMemory().

std::string te::vp::Merge::m_outDsetName
private

Definition at line 107 of file Merge.h.

Referenced by executeMemory(), and getOutputDataSetType().

te::da::DataSourcePtr te::vp::Merge::m_outDsrc
private

Definition at line 106 of file Merge.h.

Referenced by checkStrategy(), executeMemory(), and getOutputDataSetType().

std::vector<std::pair<std::string, std::string> > te::vp::Merge::m_properties
private

Definition at line 113 of file Merge.h.

Referenced by executeMemory(), getOutputDataSetType(), and updateInputDst().

te::da::DataSet* te::vp::Merge::m_targetDs
private

Definition at line 101 of file Merge.h.

Referenced by executeMemory().

te::da::DataSetType* te::vp::Merge::m_targetDst
private
te::da::DataSourcePtr te::vp::Merge::m_targetSource
private

Definition at line 99 of file Merge.h.

Referenced by checkStrategy(), executeMemory(), and tryGetMax().

int te::vp::Merge::m_targetSRID
private

Definition at line 111 of file Merge.h.

Referenced by executeMemory().


The documentation for this class was generated from the following files: