⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lndb.hpp

📁 IBM Lotus C++ API 7.0a for IBM Lotus Notes/Domino Directory Release --------- ------------------
💻 HPP
📖 第 1 页 / 共 2 页
字号:
//===========================================================================
//
// Module:		LNDB.HPP
//
// Description:
//
//		Class library definition for LNDatabase and related classes.
//
//===========================================================================
//
// Copyright (c) 1996-1999 Lotus Development Corporation. All rights reserved.
// This software is subject to the Lotus Software Agreement, Restricted
// Rights for U.S. government users, and applicable export regulations.
//
//===========================================================================

#ifndef LNDB_HPP
#define LNDB_HPP

#ifndef LNGLOBAL_H
#include "lnglobal.h"
#endif

#ifndef LNACL_HPP
#include "lnacl.hpp"
#endif

class LNSelectiveReplication {};
//
//	Class definition for LNSearchOptions.
//
class LNIMPEXPCL LNSearchOptions : public LNNotesClass
{

public:
	LNSearchOptions();

	LNSearchOptions( const LNSearchOptions &other );

	~LNSearchOptions();

	LNSearchOptions & operator=( const LNSearchOptions &other );

	LNDatetime GetBeginDate() const;

	virtual LNCLASSID GetClassID() const {return LNCLASSID_LNSEARCHOPTIONS;}

	LNDatetime GetCompletedDate() const;
	LNString GetDesignFlagsPattern() const;
	LNString GetDesignFlagsAny() const;
	LNString GetDesignFlagsNone() const;
	LNString GetDesignFlagsAll() const;

	LNDatetime GetEndDate() const;

	LNINT GetMaxNotes() const;

	LNNOTETYPE GetNoteType() const;

	LNSTATUS SetBeginDate( const LNString &begindate );
	LNSTATUS SetBeginDate( const LNDatetime &begindate );
	LNSTATUS SetDesignFlagsPattern(const LNString &pattern);

	LNSTATUS SetEndDate( const LNString &enddate );
	LNSTATUS SetEndDate( const LNDatetime &enddate );

	LNSTATUS SetMaxNotes( LNINT maxnotes );

	LNSTATUS SetNoteType( LNNOTETYPE notetype );

private:
//	LNSTATUS ParsePattern();
	LNSTATUS SetCompletedDate( TIMEDATE *completeddate );

	TIMEDATE BeginDate;
	TIMEDATE CompletedDate;
	TIMEDATE EndDate;
	LNINT MaxNotes;
	LNNOTETYPE NoteType;
	LNString Pattern;
	LNString Any;
	LNString None;
	LNString All;
};

//
//	Class definition for LNFTIndexStatistics.
//
class LNIMPEXPCL LNFTIndexStatistics : public LNNotesClass
{

public:
	LNFTIndexStatistics();

	LNFTIndexStatistics( const LNFTIndexStatistics &other );

	~LNFTIndexStatistics();

	LNFTIndexStatistics & operator=( const LNFTIndexStatistics &other );

	LNCLASSID GetClassID() const {return LNCLASSID_LNFTINDEXSTATISTICS;}

	LNINT GetNumberOfBytesIndexed() const;

	LNINT GetNumberOfDocsAdded() const;

	LNINT GetNumberOfDocsDeleted() const;

	LNINT GetNumberOfDocsUpdated() const;

private:
	void Assign( FT_INDEX_STATS stats );

	FT_INDEX_STATS Statistics;
};

//
//	Class definition for LNFTSearchOptions.
//
class LNIMPEXPCL LNFTSearchOptions : public LNNotesClass
{

public:
	LNFTSearchOptions();

	LNFTSearchOptions( const LNFTSearchOptions &other );

	~LNFTSearchOptions();

	LNFTSearchOptions & operator=( const LNFTSearchOptions &other );

	LNCLASSID GetClassID() const {return LNCLASSID_LNFTSEARCHOPTIONS;}

	LNBOOL GetDatabaseIndex() const;

	LNBOOL GetDomainSearch() const;

	LNBOOL GetFileIndex() const;

	LNBOOL GetFuzzySearch() const;

	LNINT GetMaxDocuments() const;

	LNFTSEARCHORDER GetSortOrder() const;

	LNBOOL GetStemWords() const;

	LNBOOL GetThesaurusWords() const;

	LNBOOL GetURLFormat() const;

	void SetDatabaseIndex( LNBOOL dbindex );

	void SetDomainSearch( LNBOOL domainflag );

	void SetFileIndex( LNBOOL fileindex );

	void SetFuzzySearch( LNBOOL fuzzyflag );

	LNSTATUS SetMaxDocuments( LNINT maxdocuments );

	LNSTATUS SetSortOrder( LNFTSEARCHORDER sortorder );

	void SetStemWords( LNBOOL stemwords );

	void SetThesaurusWords( LNBOOL theswords );

	void SetURLFormat( LNBOOL urlflag );

private:
	DWORD GetOptions() const {return Options;}

	WORD MaxDocuments;
	DWORD Options;
};

#ifndef LNRTTYPE_HPP
#include "lnrttype.hpp"
#endif
//
//	Class definition for LNDatabase.
//
class LNIMPEXPCL LNDatabase : public LNSmartPtr
{
friend class LNCalendar;
friend class LNCalendarEntryArray;
friend class LNNote;
friend class LNNoteArray;
friend class LNNotesSession;

public:
	LNDatabase() : LNSmartPtr() {}
	LNDatabase( const LNDatabase &other ) : LNSmartPtr(other) {}

	~LNDatabase() {}
	
	LNDatabase & operator=( const LNDatabase &other );

	LNBOOL AgentExists( const LNString &agentname ) const;

	LNSTATUS CreateAgent( const LNString &agentname, LNBOOL shared, LNAgent *newagent );
	LNSTATUS CreateAgent( LNAgent &agent, LNAgent *newagent);

	LNSTATUS DeleteAgent( const LNString &agentname );
	LNSTATUS DeleteAgent( LNAgent *agent );

	LNSTATUS GetAgent( const LNString &agentname, LNAgent *agent );
	LNSTATUS GetAgent( const char *agentname, LNAgent *agent )
		{ return GetAgent(LNString(agentname), agent); }
	LNSTATUS GetAgent( const NOTEID idnote, LNAgent *agent );
	LNSTATUS GetAgent( const UNID *unidnote, LNAgent *agent );
	LNSTATUS GetAgent( NOTEHANDLE handle, LNAgent *agent )
		{ return GetNote(handle, (LNNote *) agent); }
	
	LNSTATUS GetAgents( LNAgentArray *agents, LNBOOL getPrivate = TRUE );

	LNBOOL AppletExists( const LNString &appletname ) const;

	LNSTATUS CreateApplet( const LNString &appletname,
							const LNString &codepath,
							const LNText &files,
							LNAppletResource *newapplet = 0 );
	LNSTATUS CreateApplet( LNAppletResource &applet, LNAppletResource *newapplet);

	LNSTATUS DeleteApplet( const LNString &appletname );
	LNSTATUS DeleteApplet( LNAppletResource *applet );

	LNSTATUS GetApplet( const LNString &appletname, LNAppletResource *applet );
	LNSTATUS GetApplet( const char *appletname, LNAppletResource *applet )
		{ return GetApplet(LNString(appletname), applet); }
	LNSTATUS GetApplet( const NOTEID idnote, LNAppletResource *applet );
	LNSTATUS GetApplet( const UNID *unidnote, LNAppletResource *applet );
	LNSTATUS GetApplet( NOTEHANDLE handle, LNAppletResource *applet )
		{ return GetNote(handle, (LNNote *) applet); }
	
	LNSTATUS GetApplets( LNAppletResourceArray *applets );
	
	LNSTATUS CreateDocument( LNDocument *newdoc );
	LNSTATUS CreateDocument( LNDocument *newdoc, const LNString &form );
	LNSTATUS CreateDocument( LNDocument &document, LNDocument *newdoc = 0 );

	LNSTATUS DeleteDocument( LNDocument *document );
	
	LNSTATUS GetDocument( const NOTEID idnote, LNDocument *doc );
	LNSTATUS GetDocument( const UNID *unidnote, LNDocument *doc );
	LNSTATUS GetDocument( NOTEHANDLE handle, LNDocument *doc )
		{ return GetNote(handle, (LNNote *) doc); }

	LNSTATUS GetDocuments( LNDocumentArray *docs );

	LNSTATUS CreateForm( const LNString &formname, LNForm *newform );
	LNSTATUS CreateForm( LNForm &form, LNForm *newform );

	LNSTATUS DeleteForm( const LNString &formname )
		{ return DeleteFormXYZ(formname); }
	LNSTATUS DeleteForm( LNForm *form )
		{ return DeleteFormXYZ(form); }

	LNBOOL FormExists( const LNString &formname ) const;
	
	LNSTATUS GetDefaultForm( LNForm *form ) const;

	LNSTATUS GetForm( const LNString &formname, LNForm *form )
		{ return GetFormXYZ(formname,form); }
	LNSTATUS GetForm( const char *formname, LNForm *form )
		{ return GetFormXYZ(LNString(formname), form); }
	LNSTATUS GetForm( const NOTEID idnote, LNForm *form )
		{ return GetFormXYZ(idnote,form); }
	LNSTATUS GetForm( const UNID *unidnote, LNForm *form )
		{ return GetFormXYZ(unidnote,form); }
	LNSTATUS GetForm( NOTEHANDLE handle, LNForm *form )
		{ return GetNote(handle, (LNNote *) form); }
	
	LNSTATUS GetForms( LNFormArray *forms );

	// Framesets
	LNBOOL FramesetExists( const LNString &framesetname) const;

	LNSTATUS CreateFrameset( const LNString &framesetname, 
	const LNFrameSplitOptions &options, LNFrameset* newframeset = 0);
	LNSTATUS CreateFrameset( LNFrameset &frameset, LNFrameset *newframeset = 0);

	LNSTATUS DeleteFrameset( const LNString &framesetname );
	LNSTATUS DeleteFrameset( LNFrameset *Frameset );

	LNSTATUS GetFrameset( const LNString &framesetname, LNFrameset *Frameset );
	LNSTATUS GetFrameset( const char *framesetname, LNFrameset *Frameset )
		{ return GetFrameset(LNString(framesetname), Frameset); }
	LNSTATUS GetFrameset( const NOTEID idnote, LNFrameset *Frameset );
	LNSTATUS GetFrameset( const UNID *unidnote, LNFrameset *Frameset );
	LNSTATUS GetFrameset( NOTEHANDLE handle, LNFrameset *Frameset )
		{ return GetNote(handle, (LNNote *) Frameset); }
	
	LNSTATUS GetFramesets( LNFramesetArray *framesets );

	// Image resources
	LNBOOL ImageExists( const LNString &imagename) const;


	LNSTATUS CreateImage( const LNString &imagename, 
		const LNString &filepath, LNImageResource *newimage = 0);
	LNSTATUS CreateImage( LNImageResource &image, LNImageResource *newimage = 0);

	LNSTATUS DeleteImage( const LNString &imagename );
	LNSTATUS DeleteImage( LNImageResource *Image );

	LNSTATUS GetImage( const LNString &imagename, LNImageResource *Image );
	LNSTATUS GetImage( const char *imagename, LNImageResource *Image )
		{ return GetImage(LNString(imagename), Image); }
	LNSTATUS GetImage( const NOTEID idnote, LNImageResource *Image );
	LNSTATUS GetImage( const UNID *unidnote, LNImageResource *Image );
	LNSTATUS GetImage( NOTEHANDLE handle, LNImageResource *Image )
		{ return GetNote(handle, (LNNote *) Image); }
	
	LNSTATUS GetImages( LNImageResourceArray *images );

		// Navigators
	LNBOOL NavigatorExists( const LNString &navigatorname) const;

	LNSTATUS CreateNavigator( const LNString &navigatorname, LNNavigator *newnavigator = 0);
	LNSTATUS CreateNavigator( LNNavigator &navigator, LNNavigator *newnavigator = 0);

	LNSTATUS DeleteNavigator( const LNString &navigatorname );
	LNSTATUS DeleteNavigator( LNNavigator *Navigator );

	LNSTATUS GetNavigator( const LNString &navigatorname, LNNavigator *Navigator );
	LNSTATUS GetNavigator( const char *navigatorname, LNNavigator *Navigator )
		{ return GetNavigator(LNString(navigatorname), Navigator); }
	LNSTATUS GetNavigator( const NOTEID idnote, LNNavigator *Navigator );
	LNSTATUS GetNavigator( const UNID *unidnote, LNNavigator *Navigator );
	LNSTATUS GetNavigator( NOTEHANDLE handle, LNNavigator *Navigator )
		{ return GetNote(handle, (LNNote *) Navigator); }
	
	LNSTATUS GetNavigators( LNNavigatorArray *navigators );


	// Outlines
	LNBOOL OutlineExists( const LNString &outlinename ) const;

	LNSTATUS CreateOutline( const LNString &outlinename, LNOutline *newoutline = 0 );
	LNSTATUS CreateOutline( LNOutline &outline, LNOutline *newoutline);

	LNSTATUS DeleteOutline( const LNString &outlinename );
	LNSTATUS DeleteOutline( LNOutline *outline );

	LNSTATUS GetOutline( const LNString &outlinename, LNOutline *outline );
	LNSTATUS GetOutline( const char *outlinename, LNOutline *outline )
		{ return GetOutline(LNString(outlinename), outline); }
	LNSTATUS GetOutline( const NOTEID idnote, LNOutline *outline );
	LNSTATUS GetOutline( const UNID *unidnote, LNOutline *outline );
	LNSTATUS GetOutline( NOTEHANDLE handle, LNOutline *outline )
		{ return GetNote(handle, (LNNote *) outline); }
	
	LNSTATUS GetOutlines( LNOutlineArray *outlines );

	// Pages
	LNBOOL PageExists( const LNString &pagename) const;

	LNSTATUS CreatePage( const LNString &pagename, LNPage *newpage = 0);
	LNSTATUS CreatePage( LNPage &page, LNPage *newpage = 0);

	LNSTATUS DeletePage( const LNString &pagename );
	LNSTATUS DeletePage( LNPage *Page );

	LNSTATUS GetPage( const LNString &pagename, LNPage *Page );
	LNSTATUS GetPage( const char *pagename, LNPage *Page )
		{ return GetPage(LNString(pagename), Page); }
	LNSTATUS GetPage( const NOTEID idnote, LNPage *Page );
	LNSTATUS GetPage( const UNID *unidnote, LNPage *Page );

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -