namespace com::sun::star { namespace beans { class XPropertySet;
}
}
namespace weld { class Window; }
namespace abp
{
struct ODataSourceContextImpl; class ODataSource; /// a non-UNO wrapper for the data source context class ODataSourceContext
{ private:
std::unique_ptr<ODataSourceContextImpl> m_pImpl;
/// retrieves the names of all data sources void getDataSourceNames( StringBag& _rNames ) const;
/// disambiguates the given name by appending successive numbers void disambiguate(OUString& _rDataSourceName);
/// creates a new Thunderbird data source
ODataSource createNewThunderbird( const OUString& _rName );
/// creates a new Evolution local data source
ODataSource createNewEvolution( const OUString& _rName );
/// creates a new Evolution LDAP data source
ODataSource createNewEvolutionLdap( const OUString& _rName );
/// creates a new Evolution GROUPWISE data source
ODataSource createNewEvolutionGroupwise( const OUString& _rName );
/// creates a new KDE address book data source
ODataSource createNewKab( const OUString& _rName );
/// creates a new macOS address book data source
ODataSource createNewMacab( const OUString& _rName );
/// creates a new Other data source; tdf117101: Spreadsheet by default
ODataSource createNewOther( const OUString& _rName );
};
struct ODataSourceImpl; struct AddressSettings; /** a non-UNO wrapper for a data source <p>Thisclassallowstoaccessdatasourceswithouttheneedtocompiletherespectivefilewith exceptionhandlingenabled(hopefully:).</p> <p>InadditiontowrappingaUNOdatasource,aninstanceofthisclasscanhandleatmost onevalidconnection,asobtainedfromthedatasource.</p>
*/ class ODataSource
{ private:
std::unique_ptr<ODataSourceImpl> m_pImpl;
public:
// - ctor/dtor/assignment
/// constructs an object which is initially invalid explicit ODataSource( const css::uno::Reference< css::uno::XComponentContext >& _rxORB
);
/// checks whether or not the object represents a valid data source bool isValid() const;
/// removes the data source represented by the object from the data source context void remove(); // TODO: put this into the context class
/// returns the name of the data source const OUString &
getName() const;
/// renames the data source bool rename( const OUString& _rName ); // TODO: put this into the context class
// - connection handling
/** connects to the data source represented by this object @param_pMessageParent thewindowtouseasparentforanyerrormessages.Ifthisis<NULL/>,nomessagesaredisplayed atall. @seeisConnected
*/ bool connect(weld::Window* _pMessageParent);
/// returns <TRUE/> if the object has a valid connection, obtained from its data source bool isConnected( ) const;
/// disconnects from the data source (i.e. disposes the UNO connection hold internally) void disconnect( );
/// stores the database file void store(const AddressSettings& rSettings);
/// register the data source under the given name in the configuration void registerDataSource( const OUString& _sRegisteredDataSourceName );
/** retrieves the tables names from the connection <p>tobecalledwhen<method>isConnected</method>returns<TRUE/>only</p>
*/ const StringBag& getTableNames() const;
/** determines whether a given table exists
*/ bool hasTable( const OUString& _rTableName ) const;
/// return the internal data source object
css::uno::Reference< css::beans::XPropertySet > getDataSource() const;
/** set a new data source. <p>Availabletoselectedclientsonly</p>
*/ void setDataSource( const css::uno::Reference< css::beans::XPropertySet >& _rxDS
,const OUString& _sName
);
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.