ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/SiteMapperOld/Page.cpp
(Generate patch)

Comparing:
SiteMapper/Page.cpp (file contents), Revision 135 by Douglas Thrift, 2004-03-25T01:02:24-08:00 vs.
SiteMapperOld/Page.cpp (file contents), Revision 425 by douglas, 2005-03-10T20:06:50-08:00

# Line 4 | Line 4
4   //
5   // $Id$
6  
7 < #include "Matcher.hpp"
8 < #include "Page.hpp"
7 > #include "Matcher/Matcher.hpp"
8 > #include "SiteMapper.hpp"
9  
10 < Page::Page(const string& address, const string& path, const string& title)
11 < {
12 <        setAddress(address);
13 <        setPath(path);
14 <        setTitle(title);
15 <
16 <        tab = 0;
17 < }
10 > Page::Page(const std::string& address, const std::string& path, const std::string& title) : address(address), path(path), title(title), tab(0) {}
11  
12 < Page::Page(const string& url, const string& title)
12 > Page::Page(const std::string& url, const std::string& title) : title(title), tab(0)
13   {
14          setUrl(url);
22        setTitle(title);
23
24        tab = 0;
15   }
16  
17 < void Page::setUrl(const string& url)
17 > void Page::setUrl(const std::string& url)
18   {
19          Matcher matcher("^http://(.+)(/.*)?$");
20  
# Line 43 | Line 33 | void Page::setUrl(const string& url)
33          }
34          else
35          {
36 <                cerr << program << ": Page.setUrl(" << url << ") failure.\n";
36 >                std::cerr << program << ": Page.setUrl(" << url << ") failure.\n";
37  
38                  exit(1);
39          }
40   }
41  
42 < bool Page::operator==(const string& thing)
42 > bool Page::operator==(const std::string& thing)
43   {
44          if (address == thing)
45          {
# Line 67 | Line 57 | bool Page::operator==(const string& thin
57          return false;
58   }
59  
60 < bool Page::operator==(Page& page)
60 > bool Page::operator==(Matcher& matcher)
61   {
62 <        if (address == page.address)
62 >        if (address == matcher)
63          {
64 <                if (path == page.path || title == page.title) return true;
64 >                return true;
65 >        }
66 >        else if (path == matcher)
67 >        {
68 >                return true;
69 >        }
70 >        else if (title == matcher)
71 >        {
72 >                return true;
73          }
74  
75          return false;
76   }
77  
78 < bool Page::operator<(Page& page)
81 < {
82 <        if (address < page.address) if (path < page.path) return true;
83 <
84 <        return false;
85 < }
86 <
87 < bool Page::operator>(Page& page)
78 > bool Page::operator==(const Page& page) const
79   {
80 <        if (address > page.address) if (path > page.path) return true;
80 >        if (address == page.address)
81 >        {
82 >                return path == page.path || title == page.title;
83 >        }
84  
85          return false;
86   }
87  
88 < ostream& operator<<(ostream& output, Page& page)
88 > std::ostream& operator<<(std::ostream& output, Page& page)
89   {
90 <        string tab(page.tab, '\t');
90 >        std::string tab(page.tab, '\t');
91  
92 <        output << tab << "<item><link address=\"" << page.getUrl() << "\"\n"
92 >        output << tab << "<item><link address=\"" << page.getUrl() << "\">"
93                  << page.title << "</link>\n";
94  
95          if (!page.children.empty())
96          {
97                  output << tab << "\t<list>\n";
98  
99 <                for (int index = 0; index < page.children.size(); index++)
99 >                for (unsigned index(0); index < page.children.size(); ++index)
100                  {
101 <                        output << page.children[index](page.tab + 1) << '\n';
101 >                        output << page.children[index](page.tab + 2) << '\n';
102                  }
103  
104                  output << tab << "\t</list>\n";

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines