summaryrefslogtreecommitdiffstats
path: root/debian/htdig/htdig-3.2.0b6/htcommon/DocumentRef.h
diff options
context:
space:
mode:
Diffstat (limited to 'debian/htdig/htdig-3.2.0b6/htcommon/DocumentRef.h')
-rw-r--r--debian/htdig/htdig-3.2.0b6/htcommon/DocumentRef.h171
1 files changed, 171 insertions, 0 deletions
diff --git a/debian/htdig/htdig-3.2.0b6/htcommon/DocumentRef.h b/debian/htdig/htdig-3.2.0b6/htcommon/DocumentRef.h
new file mode 100644
index 00000000..446ff6f7
--- /dev/null
+++ b/debian/htdig/htdig-3.2.0b6/htcommon/DocumentRef.h
@@ -0,0 +1,171 @@
+//
+// DocumentRef.h
+//
+// DocumentRef: Reference to an indexed document. Keeps track of all
+// information stored on the document, either by the dig
+// or temporary search information.
+//
+// Part of the ht://Dig package <http://www.htdig.org/>
+// Copyright (c) 1995-2004 The ht://Dig Group
+// For copyright details, see the file COPYING in your distribution
+// or the GNU Library General Public License (LGPL) version 2 or later
+// <http://www.gnu.org/copyleft/lgpl.html>
+//
+// $Id: DocumentRef.h,v 1.29 2004/05/28 13:15:12 lha Exp $
+//
+
+#ifndef _DocumentRef_h_
+#define _DocumentRef_h_
+
+#include "htString.h"
+#include "List.h"
+#include "HtWordList.h"
+
+#include <time.h>
+
+enum ReferenceState
+{
+ Reference_normal,
+ Reference_not_found,
+ Reference_noindex,
+ Reference_obsolete
+};
+
+class DocumentRef : public Object
+{
+ public:
+ //
+ // Construction/Destruction
+ //
+ DocumentRef();
+ ~DocumentRef();
+
+ //
+ // A DocumentRef can read itself from a character string and
+ // convert itself into a character string
+ //
+ void Serialize(String &s);
+ void Deserialize(String &s);
+
+ //
+ // Access to the members
+ //
+ int DocID() {return docID;}
+ char *DocURL() {return docURL;}
+ time_t DocTime() {return docTime;}
+ char *DocTitle() {return docTitle;}
+ char *DocAuthor() {return docAuthor;}
+ char *DocHead() {return docHead;}
+ int DocHeadIsSet() {return docHeadIsSet;}
+ char *DocMetaDsc() {return docMetaDsc;}
+ time_t DocAccessed() {return docAccessed;}
+ int DocLinks() {return docLinks;}
+ int DocBackLinks() {return docBackLinks;}
+ List *Descriptions() {return &descriptions;}
+ ReferenceState DocState() {return docState;}
+ int DocSize() {return docSize;}
+ List *DocAnchors() {return &docAnchors;}
+ double DocScore() {return docScore;}
+ int DocSig() {return docSig;}
+ int DocAnchor() {return docAnchor;}
+ int DocHopCount() {return docHopCount;}
+ char *DocEmail() {return docEmail;}
+ char *DocNotification() {return docNotification;}
+ char *DocSubject() {return docSubject;}
+
+ void DocID(int d) {docID = d;}
+ void DocURL(const char *u) {docURL = u;}
+ void DocTime(time_t t) {docTime = t;}
+ void DocTitle(const char *t) {docTitle = t;}
+ void DocAuthor(const char *a) {docAuthor = a;}
+ void DocHead(const char *h) {docHeadIsSet = 1; docHead = h;}
+ void DocMetaDsc(const char *md) {docMetaDsc = md;}
+ void DocAccessed(time_t t) {docAccessed = t;}
+ void DocLinks(int l) {docLinks = l;}
+ void DocBackLinks(int l) {docBackLinks = l;}
+ void Descriptions(List &l) {descriptions = l;}
+ void AddDescription(const char *d, HtWordList &words);
+ void DocState(ReferenceState s) {docState = s;}
+ void DocState(int s);
+ void DocSize(int s) {docSize = s;}
+ void DocSig(int s) {docSig = s;}
+ void DocAnchors(List &l) {docAnchors = l;}
+ void AddAnchor(const char *a);
+ void DocScore(double s) {docScore = s;}
+ void DocAnchor(int a) {docAnchor = a;}
+ void DocHopCount(int h) {docHopCount = h;}
+ void DocEmail(const char *e) {docEmail = e;}
+ void DocNotification(const char *n) {docNotification = n;}
+ void DocSubject(const char *s) {docSubject = s;}
+
+ void Clear(); // Reset everything
+
+ protected:
+ //
+ // These values will be stored when serializing
+ //
+
+ // This is the index number of the document in the database.
+ int docID;
+ // This is the URL of the document.
+ String docURL;
+ // This is the time specified in the document's header
+ // Usually that's the last modified time, for servers that return it.
+ time_t docTime;
+ // This is the time that the last retrieval occurred.
+ time_t docAccessed;
+ // This is the stored excerpt of the document, just text.
+ String docHead;
+ // This indicates if the stored excerpt of the document has been set.
+ int docHeadIsSet;
+ // This is the document-specified description.
+ // For HTML, that's the META description tag.
+ String docMetaDsc;
+ // This is the title of the document.
+ String docTitle;
+ // This is the author of the document, as specified in meta information
+ String docAuthor;
+ // This is a list of Strings, the text of links pointing to this document.
+ // (e.g. <a href="docURL">description</a>
+ List descriptions;
+ // This is the state of the document--modified, normal, etc.
+ ReferenceState docState;
+ // This is the size of the original document.
+ int docSize;
+ // This is a count of the links in the document (outgoing links).
+ int docLinks;
+ // This is a count of the links to the document (incoming links).
+ int docBackLinks;
+ // This is a list of the anchors in the document (i.e. <A NAME=...)
+ List docAnchors;
+ // This is a count of the number of hops from start_urls to here.
+ int docHopCount;
+ // This is a signature of the document. (e.g. md5sum, checksum...)
+ // This is currently unused.
+ long int docSig;
+
+ //
+ // The following values are for the email notification of expiration
+ //
+
+ // This is the email destination for htnotify.
+ String docEmail;
+ // This is the date that htnotify should use as comparison.
+ String docNotification;
+ // This is the subject of the email sent out by htnotify.
+ String docSubject;
+
+ //
+ // This is used for searching and is not stored in the database
+ //
+
+ // This is the current score of this document.
+ double docScore;
+ // This is the nearest anchor for the search word.
+ int docAnchor;
+
+};
+
+#endif
+
+