summaryrefslogtreecommitdiff
path: root/connectivity/source/drivers/mysqlc/mysqlc_views.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'connectivity/source/drivers/mysqlc/mysqlc_views.cxx')
-rw-r--r--connectivity/source/drivers/mysqlc/mysqlc_views.cxx72
1 files changed, 23 insertions, 49 deletions
diff --git a/connectivity/source/drivers/mysqlc/mysqlc_views.cxx b/connectivity/source/drivers/mysqlc/mysqlc_views.cxx
index 5db17db83c85..1c79c9225d44 100644
--- a/connectivity/source/drivers/mysqlc/mysqlc_views.cxx
+++ b/connectivity/source/drivers/mysqlc/mysqlc_views.cxx
@@ -25,29 +25,16 @@
#include <comphelper/types.hxx>
#include <TConnection.hxx>
-using namespace ::comphelper;
-
-using namespace ::cppu;
-using namespace connectivity;
-using namespace connectivity::mysqlc;
-using namespace css::uno;
-using namespace css::beans;
-using namespace css::sdbcx;
-using namespace css::sdbc;
-using namespace css::container;
-using namespace css::lang;
-typedef connectivity::sdbcx::OCollection OCollection_TYPE;
-
-Views::Views(const Reference<XConnection>& _rxConnection, ::cppu::OWeakObject& _rParent,
- ::osl::Mutex& _rMutex, const ::std::vector<OUString>& _rVector)
+connectivity::mysqlc::Views::Views(const css::uno::Reference<css::sdbc::XConnection>& _rxConnection,
+ ::cppu::OWeakObject& _rParent, ::osl::Mutex& _rMutex,
+ const ::std::vector<OUString>& _rVector)
: sdbcx::OCollection(_rParent, true, _rMutex, _rVector)
, m_xConnection(_rxConnection)
, m_xMetaData(_rxConnection->getMetaData())
- , m_bInDrop(false)
{
}
-sdbcx::ObjectType Views::createObject(const OUString& _rName)
+connectivity::sdbcx::ObjectType connectivity::mysqlc::Views::createObject(const OUString& _rName)
{
OUString sCatalog, sSchema, sTable;
::dbtools::qualifiedNameComponents(m_xMetaData, _rName, sCatalog, sSchema, sTable,
@@ -55,60 +42,48 @@ sdbcx::ObjectType Views::createObject(const OUString& _rName)
return new View(m_xConnection, isCaseSensitive(), sSchema, sTable);
}
-void Views::impl_refresh() { static_cast<Catalog&>(m_rParent).refreshViews(); }
-
-void Views::disposing()
+void connectivity::mysqlc::Views::impl_refresh()
{
- m_xMetaData.clear();
- OCollection::disposing();
+ static_cast<Catalog&>(m_rParent).refreshViews();
}
-Reference<XPropertySet> Views::createDescriptor()
+css::uno::Reference<css::beans::XPropertySet> connectivity::mysqlc::Views::createDescriptor()
{
return new connectivity::sdbcx::OView(true, m_xMetaData);
}
// XAppend
-sdbcx::ObjectType Views::appendObject(const OUString& _rForName,
- const Reference<XPropertySet>& descriptor)
+connectivity::sdbcx::ObjectType connectivity::mysqlc::Views::appendObject(
+ const OUString& _rForName, const css::uno::Reference<css::beans::XPropertySet>& descriptor)
{
createView(descriptor);
return createObject(_rForName);
}
// XDrop
-void Views::dropObject(sal_Int32 _nPos, const OUString& /*_sElementName*/)
+void connectivity::mysqlc::Views::dropObject(sal_Int32 _nPos, const OUString& /*_sElementName*/)
{
- if (m_bInDrop)
- return;
-
- Reference<XInterface> xObject(getObject(_nPos));
+ css::uno::Reference<XInterface> xObject(getObject(_nPos));
bool bIsNew = connectivity::sdbcx::ODescriptor::isNew(xObject);
if (!bIsNew)
{
OUString aSql("DROP VIEW");
- Reference<XPropertySet> xProp(xObject, UNO_QUERY);
+ css::uno::Reference<css::beans::XPropertySet> xProp(xObject, css::uno::UNO_QUERY);
aSql += ::dbtools::composeTableName(m_xMetaData, xProp,
::dbtools::EComposeRule::InTableDefinitions, true);
- Reference<XConnection> xConnection = m_xMetaData->getConnection();
- Reference<XStatement> xStmt = xConnection->createStatement();
+ css::uno::Reference<css::sdbc::XConnection> xConnection = m_xMetaData->getConnection();
+ css::uno::Reference<css::sdbc::XStatement> xStmt = xConnection->createStatement();
xStmt->execute(aSql);
::comphelper::disposeComponent(xStmt);
}
}
-void Views::dropByNameImpl(const OUString& elementName)
-{
- m_bInDrop = true;
- OCollection_TYPE::dropByName(elementName);
- m_bInDrop = false;
-}
-
-void Views::createView(const Reference<XPropertySet>& descriptor)
+void connectivity::mysqlc::Views::createView(
+ const css::uno::Reference<css::beans::XPropertySet>& descriptor)
{
- Reference<XConnection> xConnection = m_xMetaData->getConnection();
+ css::uno::Reference<css::sdbc::XConnection> xConnection = m_xMetaData->getConnection();
OUString sCommand;
descriptor->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_COMMAND))
@@ -119,21 +94,20 @@ void Views::createView(const Reference<XPropertySet>& descriptor)
::dbtools::EComposeRule::InTableDefinitions, true)
+ " AS " + sCommand;
- Reference<XStatement> xStmt = xConnection->createStatement();
+ css::uno::Reference<css::sdbc::XStatement> xStmt = xConnection->createStatement();
if (xStmt.is())
{
xStmt->execute(aSql);
::comphelper::disposeComponent(xStmt);
}
- /* TODO find a way to refresh view to make the new one appear right away
- // insert the new view also in the tables collection
- Tables* pTables = static_cast<Tables*>(static_cast<Catalog&>(m_rParent).getPrivateTables());
- if ( pTables)
+ connectivity::mysqlc::Tables* pTables = static_cast<connectivity::mysqlc::Tables*>(
+ static_cast<connectivity::mysqlc::Catalog&>(m_rParent).getPrivateTables());
+ if (pTables)
{
- OUString sName = ::dbtools::composeTableName( m_xMetaData, descriptor, ::dbtools::EComposeRule::InDataManipulation, false );
+ OUString sName = ::dbtools::composeTableName(
+ m_xMetaData, descriptor, ::dbtools::EComposeRule::InDataManipulation, false);
pTables->appendNew(sName);
}
-*/
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */