Mercurial > p > roundup > code
annotate doc/html_extra/spec.html @ 6806:bdd28b244839
- issue2551223 - fix timestamp truncation in mysql and postgresql
The data types used to represent timestamps in pg and mysql for
ephemeral tables: sessions and otks don't have enough signifcant
digits to work. As a result the timestamps are rounduped (up/down)
rsuling in the stored timestamp being 2 minutes (pg) or 2-3
hours(mysql) off from what it should be.
Modify db schema to use a numeric type that preserves more significant
figures. Implement schema upgrade. Document need for upgrade in
upgrading.txt.
Write tests for schema upgrade.
Implement test for updateTimestamp method on BasicDatabase that showed
this issue in the first place. Write overrides for test for
anydbm/memorydb which store timestamp properly or not at all.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Mon, 25 Jul 2022 17:20:20 -0400 |
| parents | c6e30c7b79af |
| children | 861511d23a56 |
| rev | line source |
|---|---|
|
4897
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1 <html> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
2 <head> |
|
6791
c6e30c7b79af
Add viewport nd content-type meta tags.
John Rouillard <rouilj@ieee.org>
parents:
4897
diff
changeset
|
3 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
|
c6e30c7b79af
Add viewport nd content-type meta tags.
John Rouillard <rouilj@ieee.org>
parents:
4897
diff
changeset
|
4 <meta name="viewport" content="width=device-width, initial-scale=1"> |
|
4897
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
5 <title>Software Carpentry Track: Roundup</title> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
6 </head> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
7 <body bgcolor=white> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
8 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
9 <table width="100%"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
10 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
11 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
12 <td align="left"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
13 <a href="http://www.software-carpentry.com"><img |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
14 src="images/logo-software-carpentry-standard.png" alt="[Software Carpentry logo]" border="0"></a> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
15 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
16 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
17 <td align="right"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
18 <table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
19 <tr><td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
20 <a href="http://www.acl.lanl.gov"><img src="images//logo-acl-medium.png" alt="[ACL Logo]" border="0"></a> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
21 </td></tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
22 <tr><td><hr></td></tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
23 <tr><td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
24 <a href="http://www.codesourcery.com"><img |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
25 src="images/logo-codesourcery-medium.png" alt="[CodeSourcery Logo]" border="0"></a> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
26 </td></tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
27 </table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
28 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
29 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
30 </tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
31 </table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
32 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
33 <hr><p> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
34 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
35 <h1 align=center>Roundup</h1> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
36 <h3 align=center>An Issue-Tracking System for Knowledge Workers</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
37 <h4 align=center><a href="http://www.lfw.org/ping/">Ka-Ping Yee</a><br> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
38 <a href="mailto:ping@lfw.org">ping@lfw.org</a></h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
39 <h3 align=center>Implementation Guide</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
40 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
41 <h2>Contents</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
42 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
43 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
44 <li>Introduction |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
45 <li>The Layer Cake |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
46 <li>Hyperdatabase |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
47 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
48 <li>Dates and Date Arithmetic |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
49 <li>Items and Classes |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
50 <li>Identifiers and Designators |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
51 <li>Property Names and Types |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
52 <li>Interface Specification |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
53 <li>Application Example |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
54 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
55 <li>Roundup Database |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
56 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
57 <li>Reserved Classes |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
58 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
59 <li>Users |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
60 <li>Messages |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
61 <li>Files |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
62 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
63 <li>Item Classes |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
64 <li>Interface Specification |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
65 <li>Default Schema |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
66 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
67 <li>Detector Interface |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
68 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
69 <li>Interface Specification |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
70 <li>Detector Example |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
71 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
72 <li>Command Interface |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
73 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
74 <li>Interface Specification |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
75 <li>Usage Example |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
76 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
77 <li>E-mail User Interface |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
78 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
79 <li>Message Processing |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
80 <li>Nosy Lists |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
81 <li>Setting Properties |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
82 <li>Workflow Example |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
83 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
84 <li>Web User Interface |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
85 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
86 <li>Views and View Specifiers |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
87 <li>Displaying Properties |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
88 <li>Index Views |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
89 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
90 <li>Index View Specifiers |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
91 <li>Filter Section |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
92 <li>Index Section |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
93 <li>Sorting |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
94 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
95 <li>Item Views |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
96 <ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
97 <li>Item View Specifiers |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
98 <li>Editor Section |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
99 <li>Spool Section |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
100 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
101 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
102 <li>Deployment Scenarios |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
103 <li>Acknowledgements |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
104 </ol> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
105 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
106 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
107 <h2>1. Introduction</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
108 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
109 <p>This document presents a description of the components |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
110 of the Roundup system and specifies their interfaces and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
111 behaviour in sufficient detail to guide an implementation. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
112 For the philosophy and rationale behind the Roundup design, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
113 see the first-round Software Carpentry submission for Roundup. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
114 This document fleshes out that design as well as specifying |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
115 interfaces so that the components can be developed separately. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
116 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
117 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
118 <h2>2. The Layer Cake</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
119 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
120 <p>Lots of software design documents come with a picture of |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
121 a cake. Everybody seems to like them. I also like cakes |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
122 (i think they are tasty). So i, too, shall include |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
123 a picture of a cake here. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
124 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
125 <p align=center><table cellspacing=0 cellpadding=10 border=0 align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
126 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
127 <td bgcolor="#e8e8e8" align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
128 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
129 E-mail Client |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
130 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
131 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
132 <td bgcolor="#e0e0e0" align="center"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
133 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
134 Web Browser |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
135 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
136 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
137 <td bgcolor="#e8e8e8" align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
138 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
139 Detector Scripts |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
140 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
141 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
142 <td bgcolor="#e0e0e0" align="center"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
143 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
144 Shell |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
145 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
146 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
147 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
148 <td bgcolor="#d0d0f0" align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
149 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
150 E-mail User Interface |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
151 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
152 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
153 <td bgcolor="#f0d0d0" align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
154 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
155 Web User Interface |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
156 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
157 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
158 <td bgcolor="#d0f0d0" align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
159 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
160 Detector Interface |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
161 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
162 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
163 <td bgcolor="#f0d0f0" align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
164 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
165 Command Interface |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
166 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
167 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
168 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
169 <td bgcolor="#f0f0d0" colspan=4 align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
170 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
171 Roundup Database Layer |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
172 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
173 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
174 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
175 <td bgcolor="#d0f0f0" colspan=4 align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
176 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
177 Hyperdatabase Layer |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
178 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
179 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
180 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
181 <td bgcolor="#e8e8e8" colspan=4 align=center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
182 <p><font face="helvetica, arial"><small> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
183 Storage Layer |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
184 </small></font> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
185 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
186 </table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
187 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
188 <p>The colourful parts of the cake are part of our system; |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
189 the faint grey parts of the cake are external components. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
190 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
191 <p>I will now proceed to forgo all table manners and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
192 eat from the bottom of the cake to the top. You may want |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
193 to stand back a bit so you don't get covered in crumbs. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
194 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
195 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
196 <h2>3. Hyperdatabase</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
197 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
198 <p>The lowest-level component to be implemented is the hyperdatabase. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
199 The hyperdatabase is intended to be |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
200 a flexible data store that can hold configurable data in |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
201 records which we call <em>items</em>. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
202 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
203 <p>The hyperdatabase is implemented on top of the storage layer, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
204 an external module for storing its data. The storage layer could |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
205 be a third-party RDBMS; for a "batteries-included" distribution, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
206 implementing the hyperdatabase on the standard <tt>bsddb</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
207 module is suggested. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
208 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
209 <h3>3.1. Dates and Date Arithmetic</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
210 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
211 <p>Before we get into the hyperdatabase itself, we need a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
212 way of handling dates. The hyperdatabase module provides |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
213 Timestamp objects for |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
214 representing date-and-time stamps and Interval objects for |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
215 representing date-and-time intervals. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
216 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
217 <p>As strings, date-and-time stamps are specified with |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
218 the date in international standard format |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
219 (<em>yyyy</em>-<em>mm</em>-<em>dd</em>) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
220 joined to the time (<em>hh</em>:<em>mm</em>:<em>ss</em>) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
221 by a period ("."). Dates in |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
222 this form can be easily compared and are fairly readable |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
223 when printed. An example of a valid stamp is |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
224 "<strong>2000-06-24.13:03:59</strong>". |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
225 We'll call this the "full date format". When Timestamp objects are |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
226 printed as strings, they appear in the full date format with |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
227 the time always given in GMT. The full date format is always |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
228 exactly 19 characters long. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
229 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
230 <p>For user input, some partial forms are also permitted: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
231 the whole time or just the seconds may be omitted; and the whole date |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
232 may be omitted or just the year may be omitted. If the time is given, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
233 the time is interpreted in the user's local time zone. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
234 The <tt>Date</tt> constructor takes care of these conversions. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
235 In the following examples, suppose that <em>yyyy</em> is the current year, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
236 <em>mm</em> is the current month, and <em>dd</em> is the current |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
237 day of the month; and suppose that the user is on Eastern Standard Time. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
238 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
239 <ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
240 <li>"<strong>2000-04-17</strong>" means <Date 2000-04-17.00:00:00> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
241 <li>"<strong>01-25</strong>" means <Date <em>yyyy</em>-01-25.00:00:00> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
242 <li>"<strong>2000-04-17.03:45</strong>" means <Date 2000-04-17.08:45:00> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
243 <li>"<strong>08-13.22:13</strong>" means <Date <em>yyyy</em>-08-14.03:13:00> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
244 <li>"<strong>11-07.09:32:43</strong>" means <Date <em>yyyy</em>-11-07.14:32:43> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
245 <li>"<strong>14:25</strong>" means |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
246 <Date <em>yyyy</em>-<em>mm</em>-<em>dd</em>.19:25:00> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
247 <li>"<strong>8:47:11</strong>" means |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
248 <Date <em>yyyy</em>-<em>mm</em>-<em>dd</em>.13:47:11> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
249 <li>the special date "<strong>.</strong>" means "right now" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
250 </ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
251 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
252 <p>Date intervals are specified using the suffixes |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
253 "y", "m", and "d". The suffix "w" (for "week") means 7 days. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
254 Time intervals are specified in hh:mm:ss format (the seconds |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
255 may be omitted, but the hours and minutes may not). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
256 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
257 <ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
258 <li>"<strong>3y</strong>" means three years |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
259 <li>"<strong>2y 1m</strong>" means two years and one month |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
260 <li>"<strong>1m 25d</strong>" means one month and 25 days |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
261 <li>"<strong>2w 3d</strong>" means two weeks and three days |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
262 <li>"<strong>1d 2:50</strong>" means one day, two hours, and 50 minutes |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
263 <li>"<strong>14:00</strong>" means 14 hours |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
264 <li>"<strong>0:04:33</strong>" means four minutes and 33 seconds |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
265 </ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
266 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
267 <p>The Date class should understand simple date expressions of the form |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
268 <em>stamp</em> + <em>interval</em> and <em>stamp</em> - <em>interval</em>. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
269 When adding or subtracting intervals involving months or years, the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
270 components are handled separately. For example, when evaluating |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
271 "<strong>2000-06-25 + 1m 10d</strong>", we first add one month to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
272 get <strong>2000-07-25</strong>, then add 10 days to get |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
273 <strong>2000-08-04</strong> (rather than trying to decide whether |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
274 <strong>1m 10d</strong> means 38 or 40 or 41 days). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
275 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
276 <p>Here is an outline of the Date and Interval classes. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
277 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
278 <blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
279 <pre><small>class <strong>Date</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
280 def <strong>__init__</strong>(self, spec, offset): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
281 """Construct a date given a specification and a time zone offset. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
282 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
283 'spec' is a full date or a partial form, with an optional |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
284 added or subtracted interval. 'offset' is the local time |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
285 zone offset from GMT in hours. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
286 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
287 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
288 def <strong>__add__</strong>(self, interval): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
289 """Add an interval to this date to produce another date.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
290 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
291 def <strong>__sub__</strong>(self, interval): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
292 """Subtract an interval from this date to produce another date.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
293 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
294 def <strong>__cmp__</strong>(self, other): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
295 """Compare this date to another date.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
296 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
297 def <strong>__str__</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
298 """Return this date as a string in the yyyy-mm-dd.hh:mm:ss format.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
299 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
300 def <strong>local</strong>(self, offset): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
301 """Return this date as yyyy-mm-dd.hh:mm:ss in a local time zone.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
302 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
303 class <strong>Interval</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
304 def <strong>__init__</strong>(self, spec): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
305 """Construct an interval given a specification.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
306 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
307 def <strong>__cmp__</strong>(self, other): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
308 """Compare this interval to another interval.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
309 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
310 def <strong>__str__</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
311 """Return this interval as a string.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
312 </small></pre> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
313 </blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
314 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
315 <p>Here are some examples of how these classes would behave in practice. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
316 For the following examples, assume that we are on Eastern Standard |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
317 Time and the current local time is 19:34:02 on 25 June 2000. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
318 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
319 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
320 >>>> <span class="input">Date(".")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
321 <span class="output"><Date 2000-06-26.00:34:02></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
322 >>> <span class="input">_.local(-5)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
323 <span class="output">"2000-06-25.19:34:02"</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
324 >>> <span class="input">Date(". + 2d")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
325 <span class="output"><Date 2000-06-28.00:34:02></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
326 >>> <span class="input">Date("1997-04-17", -5)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
327 <span class="output"><Date 1997-04-17.00:00:00></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
328 >>> <span class="input">Date("01-25", -5)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
329 <span class="output"><Date 2000-01-25.00:00:00></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
330 >>> <span class="input">Date("08-13.22:13", -5)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
331 <span class="output"><Date 2000-08-14.03:13:00></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
332 >>> <span class="input">Date("14:25", -5)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
333 <span class="output"><Date 2000-06-25.19:25:00></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
334 >>> <span class="input">Interval(" 3w 1 d 2:00")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
335 <span class="output"><Interval 22d 2:00></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
336 >>> <span class="input">Date(". + 2d") - Interval("3w")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
337 <span class="output"><Date 2000-06-07.00:34:02></span |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
338 ></small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
339 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
340 <h3>3.2. Items and Classes</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
341 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
342 <p>Items contain data in <em>properties</em>. To Python, these |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
343 properties are presented as the key-value pairs of a dictionary. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
344 Each item belongs to a <em>class</em> which defines the names |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
345 and types of its properties. The database permits the creation |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
346 and modification of classes as well as items. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
347 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
348 <h3>3.3. Identifiers and Designators</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
349 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
350 <p>Each item has a numeric identifier which is unique among |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
351 items in its class. The items are numbered sequentially |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
352 within each class in order of creation, starting from 1. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
353 The <em>designator</em> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
354 for an item is a way to identify an item in the database, and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
355 consists of the name of the item's class concatenated with |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
356 the item's numeric identifier. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
357 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
358 <p>For example, if "spam" and "eggs" are classes, the first |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
359 item created in class "spam" has id 1 and designator "spam1". |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
360 The first item created in class "eggs" also has id 1 but has |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
361 the distinct designator "eggs1". Item designators are |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
362 conventionally enclosed in square brackets when mentioned |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
363 in plain text. This permits a casual mention of, say, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
364 "[patch37]" in an e-mail message to be turned into an active |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
365 hyperlink. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
366 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
367 <h3>3.4. Property Names and Types</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
368 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
369 <p>Property names must begin with a letter. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
370 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
371 <p>A property may be one of five <em>basic types</em>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
372 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
373 <ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
374 <li><em>String</em> properties are for storing arbitrary-length |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
375 strings. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
376 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
377 <li><em>Date</em> properties store date-and-time stamps. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
378 Their values are Timestamp objects. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
379 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
380 <li>A <em>Link</em> property refers to a single other item |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
381 selected from a specified class. The class is part of the property; |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
382 the value is an integer, the id of the chosen item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
383 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
384 <li>A <em>Multilink</em> property refers to possibly many items |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
385 in a specified class. The value is a list of integers. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
386 </ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
387 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
388 <p><tt>None</tt> is also a permitted value for any of these property |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
389 types. An attempt to store <tt>None</tt> into a String property |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
390 stores the empty string; an attempt to store <tt>None</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
391 into a Multilink property stores an empty list. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
392 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
393 <h3>3.5. Interface Specification</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
394 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
395 <p>The hyperdb module provides property objects to designate |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
396 the different kinds of properties. These objects are used when |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
397 specifying what properties belong in classes. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
398 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
399 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
400 >class <strong>String</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
401 def <strong>__init__</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
402 """An object designating a String property.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
403 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
404 class <strong>Date</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
405 def <strong>__init__</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
406 """An object designating a Date property.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
407 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
408 class <strong>Link</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
409 def <strong>__init__</strong>(self, classname): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
410 """An object designating a Link property that links to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
411 items in a specified class.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
412 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
413 class <strong>Multilink</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
414 def <strong>__init__</strong>(self, classname): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
415 """An object designating a Multilink property that links |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
416 to items in a specified class.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
417 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
418 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
419 <p>Here is the interface provided by the hyperdatabase. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
420 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
421 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
422 >class <strong>Database</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
423 """A database for storing records containing flexible data types.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
424 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
425 def <strong>__init__</strong>(self, storagelocator, journaltag): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
426 """Open a hyperdatabase given a specifier to some storage. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
427 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
428 The meaning of 'storagelocator' depends on the particular |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
429 implementation of the hyperdatabase. It could be a file name, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
430 a directory path, a socket descriptor for a connection to a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
431 database over the network, etc. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
432 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
433 The 'journaltag' is a token that will be attached to the journal |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
434 entries for any edits done on the database. If 'journaltag' is |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
435 None, the database is opened in read-only mode: the Class.create(), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
436 Class.set(), and Class.retire() methods are disabled. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
437 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
438 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
439 def <strong>__getattr__</strong>(self, classname): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
440 """A convenient way of calling self.getclass(classname).""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
441 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
442 def <strong>getclasses</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
443 """Return a list of the names of all existing classes.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
444 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
445 def <strong>getclass</strong>(self, classname): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
446 """Get the Class object representing a particular class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
447 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
448 If 'classname' is not a valid class name, a KeyError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
449 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
450 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
451 class <strong>Class</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
452 """The handle to a particular class of items in a hyperdatabase.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
453 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
454 def <strong>__init__</strong>(self, db, classname, **properties): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
455 """Create a new class with a given name and property specification. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
456 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
457 'classname' must not collide with the name of an existing class, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
458 or a ValueError is raised. The keyword arguments in 'properties' |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
459 must map names to property objects, or a TypeError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
460 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
461 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
462 # Editing items: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
463 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
464 def <strong>create</strong>(self, **propvalues): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
465 """Create a new item of this class and return its id. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
466 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
467 The keyword arguments in 'propvalues' map property names to values. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
468 The values of arguments must be acceptable for the types of their |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
469 corresponding properties or a TypeError is raised. If this class |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
470 has a key property, it must be present and its value must not |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
471 collide with other key strings or a ValueError is raised. Any other |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
472 properties on this class that are missing from the 'propvalues' |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
473 dictionary are set to None. If an id in a link or multilink |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
474 property does not refer to a valid item, an IndexError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
475 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
476 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
477 def <strong>get</strong>(self, itemid, propname): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
478 """Get the value of a property on an existing item of this class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
479 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
480 'itemid' must be the id of an existing item of this class or an |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
481 IndexError is raised. 'propname' must be the name of a property |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
482 of this class or a KeyError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
483 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
484 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
485 def <strong>set</strong>(self, itemid, **propvalues): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
486 """Modify a property on an existing item of this class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
487 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
488 'itemid' must be the id of an existing item of this class or an |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
489 IndexError is raised. Each key in 'propvalues' must be the name |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
490 of a property of this class or a KeyError is raised. All values |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
491 in 'propvalues' must be acceptable types for their corresponding |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
492 properties or a TypeError is raised. If the value of the key |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
493 property is set, it must not collide with other key strings or a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
494 ValueError is raised. If the value of a Link or Multilink |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
495 property contains an invalid item id, a ValueError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
496 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
497 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
498 def <strong>retire</strong>(self, itemid): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
499 """Retire an item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
500 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
501 The properties on the item remain available from the get() method, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
502 and the item's id is never reused. Retired items are not returned |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
503 by the find(), list(), or lookup() methods, and other items may |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
504 reuse the values of their key properties. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
505 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
506 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
507 def <strong>history</strong>(self, itemid): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
508 """Retrieve the journal of edits on a particular item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
509 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
510 'itemid' must be the id of an existing item of this class or an |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
511 IndexError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
512 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
513 The returned list contains tuples of the form |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
514 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
515 (date, tag, action, params) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
516 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
517 'date' is a Timestamp object specifying the time of the change and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
518 'tag' is the journaltag specified when the database was opened. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
519 'action' may be: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
520 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
521 'create' or 'set' -- 'params' is a dictionary of property values |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
522 'link' or 'unlink' -- 'params' is (classname, itemid, propname) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
523 'retire' -- 'params' is None |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
524 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
525 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
526 # Locating items: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
527 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
528 def <strong>setkey</strong>(self, propname): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
529 """Select a String property of this class to be the key property. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
530 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
531 'propname' must be the name of a String property of this class or |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
532 None, or a TypeError is raised. The values of the key property on |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
533 all existing items must be unique or a ValueError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
534 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
535 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
536 def <strong>getkey</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
537 """Return the name of the key property for this class or None.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
538 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
539 def <strong>lookup</strong>(self, keyvalue): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
540 """Locate a particular item by its key property and return its id. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
541 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
542 If this class has no key property, a TypeError is raised. If the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
543 'keyvalue' matches one of the values for the key property among |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
544 the items in this class, the matching item's id is returned; |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
545 otherwise a KeyError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
546 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
547 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
548 def <strong>find</strong>(self, propname, itemid): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
549 """Get the ids of items in this class which link to a given item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
550 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
551 'propname' must be the name of a property in this class, or a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
552 KeyError is raised. That property must be a Link or Multilink |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
553 property, or a TypeError is raised. 'itemid' must be the id of |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
554 an existing item in the class linked to by the given property, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
555 or an IndexError is raised. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
556 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
557 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
558 def <strong>list</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
559 """Return a list of the ids of the active items in this class.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
560 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
561 def <strong>count</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
562 """Get the number of items in this class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
563 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
564 If the returned integer is 'numitems', the ids of all the items |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
565 in this class run from 1 to numitems, and numitems+1 will be the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
566 id of the next item to be created in this class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
567 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
568 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
569 # Manipulating properties: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
570 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
571 def <strong>getprops</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
572 """Return a dictionary mapping property names to property objects.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
573 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
574 def <strong>addprop</strong>(self, **properties): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
575 """Add properties to this class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
576 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
577 The keyword arguments in 'properties' must map names to property |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
578 objects, or a TypeError is raised. None of the keys in 'properties' |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
579 may collide with the names of existing properties, or a ValueError |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
580 is raised before any properties have been added. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
581 """</small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
582 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
583 <h3>3.6. Application Example</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
584 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
585 <p>Here is an example of how the hyperdatabase module would work in practice. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
586 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
587 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
588 >>>> <span class="input">import hyperdb</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
589 >>> <span class="input">db = hyperdb.Database("foo.db", "ping")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
590 >>> <span class="input">db</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
591 <span class="output"><hyperdb.Database "foo.db" opened by "ping"></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
592 >>> <span class="input">hyperdb.Class(db, "status", name=hyperdb.String())</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
593 <span class="output"><hyperdb.Class "status"></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
594 >>> <span class="input">_.setkey("name")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
595 >>> <span class="input">db.status.create(name="unread")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
596 <span class="output">1</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
597 >>> <span class="input">db.status.create(name="in-progress")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
598 <span class="output">2</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
599 >>> <span class="input">db.status.create(name="testing")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
600 <span class="output">3</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
601 >>> <span class="input">db.status.create(name="resolved")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
602 <span class="output">4</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
603 >>> <span class="input">db.status.count()</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
604 <span class="output">4</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
605 >>> <span class="input">db.status.list()</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
606 <span class="output">[1, 2, 3, 4]</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
607 >>> <span class="input">db.status.lookup("in-progress")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
608 <span class="output">2</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
609 >>> <span class="input">db.status.retire(3)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
610 >>> <span class="input">db.status.list()</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
611 <span class="output">[1, 2, 4]</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
612 >>> <span class="input">hyperdb.Class(db, "issue", title=hyperdb.String(), status=hyperdb.Link("status"))</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
613 <span class="output"><hyperdb.Class "issue"></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
614 >>> <span class="input">db.issue.create(title="spam", status=1)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
615 <span class="output">1</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
616 >>> <span class="input">db.issue.create(title="eggs", status=2)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
617 <span class="output">2</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
618 >>> <span class="input">db.issue.create(title="ham", status=4)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
619 <span class="output">3</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
620 >>> <span class="input">db.issue.create(title="arguments", status=2)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
621 <span class="output">4</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
622 >>> <span class="input">db.issue.create(title="abuse", status=1)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
623 <span class="output">5</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
624 >>> <span class="input">hyperdb.Class(db, "user", username=hyperdb.Key(), password=hyperdb.String())</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
625 <span class="output"><hyperdb.Class "user"></span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
626 >>> <span class="input">db.issue.addprop(fixer=hyperdb.Link("user"))</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
627 >>> <span class="input">db.issue.getprops()</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
628 <span class="output" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
629 >{"title": <hyperdb.String>, "status": <hyperdb.Link to "status">, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
630 "user": <hyperdb.Link to "user">}</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
631 >>> <span class="input">db.issue.set(5, status=2)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
632 >>> <span class="input">db.issue.get(5, "status")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
633 <span class="output">2</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
634 >>> <span class="input">db.status.get(2, "name")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
635 <span class="output">"in-progress"</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
636 >>> <span class="input">db.issue.get(5, "title")</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
637 <span class="output">"abuse"</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
638 >>> <span class="input">db.issue.find("status", db.status.lookup("in-progress"))</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
639 <span class="output">[2, 4, 5]</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
640 >>> <span class="input">db.issue.history(5)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
641 <span class="output" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
642 >[(<Date 2000-06-28.19:09:43>, "ping", "create", {"title": "abuse", "status": 1}), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
643 (<Date 2000-06-28.19:11:04>, "ping", "set", {"status": 2})]</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
644 >>> <span class="input">db.status.history(1)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
645 <span class="output" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
646 >[(<Date 2000-06-28.19:09:43>, "ping", "link", ("issue", 5, "status")), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
647 (<Date 2000-06-28.19:11:04>, "ping", "unlink", ("issue", 5, "status"))]</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
648 >>> <span class="input">db.status.history(2)</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
649 <span class="output" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
650 >[(<Date 2000-06-28.19:11:04>, "ping", "link", ("issue", 5, "status"))]</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
651 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
652 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
653 <p>For the purposes of journalling, when a Multilink property is |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
654 set to a new list of items, the hyperdatabase compares the old |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
655 list to the new list. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
656 The journal records "unlink" events for all the items that appear |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
657 in the old list but not the new list, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
658 and "link" events for |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
659 all the items that appear in the new list but not in the old list. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
660 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
661 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
662 <h2>4. Roundup Database</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
663 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
664 <p>The Roundup database layer is implemented on top of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
665 hyperdatabase and mediates calls to the database. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
666 Some of the classes in the Roundup database are considered |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
667 <em>item classes</em>. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
668 The Roundup database layer adds detectors and user items, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
669 and on items it provides mail spools, nosy lists, and superseders. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
670 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
671 <h3>4.1. Reserved Classes</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
672 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
673 <p>Internal to this layer we reserve three special classes |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
674 of items that are not items. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
675 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
676 <h4>4.1.1. Users</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
677 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
678 <p>Users are stored in the hyperdatabase as items of |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
679 class "user". The "user" class has the definition: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
680 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
681 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
682 >hyperdb.Class(db, "user", username=hyperdb.String(), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
683 password=hyperdb.String(), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
684 address=hyperdb.String()) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
685 db.user.setkey("username")</small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
686 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
687 <h4>4.1.2. Messages</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
688 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
689 <p>E-mail messages are represented by hyperdatabase items of class "msg". |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
690 The actual text content of the messages is stored in separate files. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
691 (There's no advantage to be gained by stuffing them into the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
692 hyperdatabase, and if messages are stored in ordinary text files, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
693 they can be grepped from the command line.) The text of a message is |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
694 saved in a file named after the message item designator (e.g. "msg23") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
695 for the sake of the command interface (see below). Attachments are |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
696 stored separately and associated with "file" items. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
697 The "msg" class has the definition: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
698 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
699 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
700 >hyperdb.Class(db, "msg", author=hyperdb.Link("user"), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
701 recipients=hyperdb.Multilink("user"), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
702 date=hyperdb.Date(), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
703 summary=hyperdb.String(), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
704 files=hyperdb.Multilink("file"))</small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
705 ></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
706 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
707 <p>The "author" property indicates the author of the message |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
708 (a "user" item must exist in the hyperdatabase for any messages |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
709 that are stored in the system). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
710 The "summary" property contains a summary of the message for display |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
711 in a message index. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
712 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
713 <h4>4.1.3. Files</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
714 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
715 <p>Submitted files are represented by hyperdatabase |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
716 items of class "file". Like e-mail messages, the file content |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
717 is stored in files outside the database, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
718 named after the file item designator (e.g. "file17"). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
719 The "file" class has the definition: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
720 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
721 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
722 >hyperdb.Class(db, "file", user=hyperdb.Link("user"), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
723 name=hyperdb.String(), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
724 type=hyperdb.String())</small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
725 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
726 <p>The "user" property indicates the user who submitted the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
727 file, the "name" property holds the original name of the file, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
728 and the "type" property holds the MIME type of the file as received. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
729 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
730 <h3>4.2. Item Classes</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
731 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
732 <p>All items have the following standard properties: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
733 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
734 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
735 >title=hyperdb.String() |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
736 messages=hyperdb.Multilink("msg") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
737 files=hyperdb.Multilink("file") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
738 nosy=hyperdb.Multilink("user") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
739 superseder=hyperdb.Multilink("item")</small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
740 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
741 <p>Also, two Date properties named "creation" and "activity" are |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
742 fabricated by the Roundup database layer. By "fabricated" we |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
743 mean that no such properties are actually stored in the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
744 hyperdatabase, but when properties on items are requested, the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
745 "creation" and "activity" properties are made available. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
746 The value of the "creation" property is the date when an item was |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
747 created, and the value of the "activity" property is the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
748 date when any property on the item was last edited (equivalently, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
749 these are the dates on the first and last records in the item's journal). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
750 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
751 <h3>4.3. Interface Specification</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
752 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
753 <p>The interface to a Roundup database delegates most method |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
754 calls to the hyperdatabase, except for the following |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
755 changes and additional methods. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
756 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
757 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
758 >class <strong>Database</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
759 # Overridden methods: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
760 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
761 def <strong>__init__</strong>(self, storagelocator, journaltag): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
762 """When the Roundup database is opened by a particular user, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
763 the 'journaltag' is the id of the user's "user" item.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
764 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
765 def <strong>getclass</strong>(self, classname): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
766 """This method now returns an instance of either Class or |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
767 ItemClass depending on whether an item class is specified.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
768 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
769 # New methods: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
770 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
771 def <strong>getuid</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
772 """Return the id of the "user" item associated with the user |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
773 that owns this connection to the hyperdatabase.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
774 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
775 class <strong>Class</strong>: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
776 # Overridden methods: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
777 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
778 def <strong>create</strong>(self, **propvalues): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
779 def <strong>set</strong>(self, **propvalues): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
780 def <strong>retire</strong>(self, itemid): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
781 """These operations trigger detectors and can be vetoed. Attempts |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
782 to modify the "creation" or "activity" properties cause a KeyError. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
783 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
784 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
785 # New methods: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
786 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
787 def <strong>audit</strong>(self, event, detector): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
788 def <strong>react</strong>(self, event, detector): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
789 """Register a detector (see below for more details).""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
790 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
791 class <strong>ItemClass</strong>(Class): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
792 # Overridden methods: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
793 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
794 def <strong>__init__</strong>(self, db, classname, **properties): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
795 """The newly-created class automatically includes the "messages", |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
796 "files", "nosy", and "superseder" properties. If the 'properties' |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
797 dictionary attempts to specify any of these properties or a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
798 "creation" or "activity" property, a ValueError is raised.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
799 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
800 def <strong>get</strong>(self, itemid, propname): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
801 def <strong>getprops</strong>(self): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
802 """In addition to the actual properties on the item, these |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
803 methods provide the "creation" and "activity" properties.""" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
804 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
805 # New methods: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
806 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
807 def <strong>addmessage</strong>(self, itemid, summary, text): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
808 """Add a message to an item's mail spool. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
809 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
810 A new "msg" item is constructed using the current date, the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
811 user that owns the database connection as the author, and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
812 the specified summary text. The "files" and "recipients" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
813 fields are left empty. The given text is saved as the body |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
814 of the message and the item is appended to the "messages" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
815 field of the specified item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
816 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
817 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
818 def <strong>nosymessage</strong>(self, itemid, msgid): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
819 """Send a message to the members of an item's nosy list. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
820 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
821 The message is sent only to users on the nosy list who are not |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
822 already on the "recipients" list for the message. These users |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
823 are then added to the message's "recipients" list. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
824 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
825 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
826 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
827 <h3>4.4. Default Schema</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
828 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
829 <p>The default schema included with Roundup turns it into a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
830 typical software bug tracker. The database is set up like this: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
831 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
832 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
833 >pri = Class(db, "priority", name=hyperdb.String(), order=hyperdb.String()) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
834 pri.setkey("name") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
835 pri.create(name="critical", order="1") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
836 pri.create(name="urgent", order="2") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
837 pri.create(name="bug", order="3") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
838 pri.create(name="feature", order="4") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
839 pri.create(name="wish", order="5") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
840 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
841 stat = Class(db, "status", name=hyperdb.String(), order=hyperdb.String()) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
842 stat.setkey("name") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
843 stat.create(name="unread", order="1") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
844 stat.create(name="deferred", order="2") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
845 stat.create(name="chatting", order="3") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
846 stat.create(name="need-eg", order="4") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
847 stat.create(name="in-progress", order="5") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
848 stat.create(name="testing", order="6") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
849 stat.create(name="done-cbb", order="7") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
850 stat.create(name="resolved", order="8") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
851 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
852 Class(db, "keyword", name=hyperdb.String()) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
853 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
854 Class(db, "issue", fixer=hyperdb.Multilink("user"), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
855 topic=hyperdb.Multilink("keyword"), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
856 priority=hyperdb.Link("priority"), |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
857 status=hyperdb.Link("status")) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
858 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
859 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
860 <p>(The "order" property hasn't been explained yet. It |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
861 gets used by the Web user interface for sorting.) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
862 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
863 <p>The above isn't as pretty-looking as the schema specification |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
864 in the first-stage submission, but it could be made just as easy |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
865 with the addition of a convenience function like <tt>Choice</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
866 for setting up the "priority" and "status" classes: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
867 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
868 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
869 >def Choice(name, *options): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
870 cl = Class(db, name, name=hyperdb.String(), order=hyperdb.String()) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
871 for i in range(len(options)): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
872 cl.create(name=option[i], order=i) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
873 return hyperdb.Link(name) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
874 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
875 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
876 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
877 <h2>5. Detector Interface</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
878 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
879 <p>Detectors are Python functions that are triggered on certain |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
880 kinds of events. The definitions of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
881 functions live in Python modules placed in a directory set aside |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
882 for this purpose. Importing the Roundup database module also |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
883 imports all the modules in this directory, and the <tt>init()</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
884 function of each module is called when a database is opened to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
885 provide it a chance to register its detectors. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
886 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
887 <p>There are two kinds of detectors: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
888 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
889 <ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
890 <li>an <em>auditor</em> is triggered just before modifying an item |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
891 <li>a <em>reactor</em> is triggered just after an item has been modified |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
892 </ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
893 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
894 <p>When the Roundup database is about to perform a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
895 <tt>create()</tt>, <tt>set()</tt>, or <tt>retire()</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
896 operation, it first calls any auditors that |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
897 have been registered for that operation on that class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
898 Any auditor may raise a <tt>Reject</tt> exception |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
899 to abort the operation. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
900 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
901 <p>If none of the auditors raises an exception, the database |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
902 proceeds to carry out the operation. After it's done, it |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
903 then calls all of the reactors that have been registered |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
904 for the operation. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
905 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
906 <h3>5.1. Interface Specification</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
907 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
908 <p>The <tt>audit()</tt> and <tt>react()</tt> methods |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
909 register detectors on a given class of items. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
910 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
911 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
912 >class Class: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
913 def <strong>audit</strong>(self, event, detector): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
914 """Register an auditor on this class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
915 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
916 'event' should be one of "create", "set", or "retire". |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
917 'detector' should be a function accepting four arguments. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
918 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
919 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
920 def <strong>react</strong>(self, event, detector): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
921 """Register a reactor on this class. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
922 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
923 'event' should be one of "create", "set", or "retire". |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
924 'detector' should be a function accepting four arguments. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
925 """ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
926 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
927 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
928 <p>Auditors are called with the arguments: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
929 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
930 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
931 >audit(db, cl, itemid, newdata)</small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
932 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
933 where <tt>db</tt> is the database, <tt>cl</tt> is an |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
934 instance of Class or ItemClass within the database, and <tt>newdata</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
935 is a dictionary mapping property names to values. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
936 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
937 For a <tt>create()</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
938 operation, the <tt>itemid</tt> argument is <tt>None</tt> and <tt>newdata</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
939 contains all of the initial property values with which the item |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
940 is about to be created. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
941 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
942 For a <tt>set()</tt> operation, <tt>newdata</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
943 contains only the names and values of properties that are about |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
944 to be changed. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
945 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
946 For a <tt>retire()</tt> operation, <tt>newdata</tt> is <tt>None</tt>. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
947 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
948 <p>Reactors are called with the arguments: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
949 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
950 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
951 >react(db, cl, itemid, olddata)</small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
952 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
953 where <tt>db</tt> is the database, <tt>cl</tt> is an |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
954 instance of Class or ItemClass within the database, and <tt>olddata</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
955 is a dictionary mapping property names to values. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
956 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
957 For a <tt>create()</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
958 operation, the <tt>itemid</tt> argument is the id of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
959 newly-created item and <tt>olddata</tt> is None. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
960 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
961 For a <tt>set()</tt> operation, <tt>olddata</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
962 contains the names and previous values of properties that were changed. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
963 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
964 For a <tt>retire()</tt> operation, <tt>itemid</tt> is the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
965 id of the retired item and <tt>olddata</tt> is <tt>None</tt>. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
966 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
967 <h3>5.2. Detector Example</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
968 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
969 <p>Here is an example of detectors written for a hypothetical |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
970 project-management application, where users can signal approval |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
971 of a project by adding themselves to an "approvals" list, and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
972 a project proceeds when it has three approvals. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
973 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
974 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
975 ># Permit users only to add themselves to the "approvals" list. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
976 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
977 def check_approvals(db, cl, id, newdata): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
978 if newdata.has_key("approvals"): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
979 if cl.get(id, "status") == db.status.lookup("approved"): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
980 raise Reject, "You can't modify the approvals list " \ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
981 "for a project that has already been approved." |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
982 old = cl.get(id, "approvals") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
983 new = newdata["approvals"] |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
984 for uid in old: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
985 if uid not in new and uid != db.getuid(): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
986 raise Reject, "You can't remove other users from the " |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
987 "approvals list; you can only remove yourself." |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
988 for uid in new: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
989 if uid not in old and uid != db.getuid(): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
990 raise Reject, "You can't add other users to the approvals " |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
991 "list; you can only add yourself." |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
992 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
993 # When three people have approved a project, change its |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
994 # status from "pending" to "approved". |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
995 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
996 def approve_project(db, cl, id, olddata): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
997 if olddata.has_key("approvals") and len(cl.get(id, "approvals")) == 3: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
998 if cl.get(id, "status") == db.status.lookup("pending"): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
999 cl.set(id, status=db.status.lookup("approved")) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1000 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1001 def init(db): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1002 db.project.audit("set", check_approval) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1003 db.project.react("set", approve_project)</small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1004 ></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1005 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1006 <p>Here is another example of a detector that can allow or prevent |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1007 the creation of new items. In this scenario, patches for a software |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1008 project are submitted by sending in e-mail with an attached file, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1009 and we want to ensure that there are <tt>text/plain</tt> attachments on |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1010 the message. The maintainer of the package can then apply the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1011 patch by setting its status to "applied". |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1012 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1013 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1014 ># Only accept attempts to create new patches that come with patch files. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1015 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1016 def check_new_patch(db, cl, id, newdata): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1017 if not newdata["files"]: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1018 raise Reject, "You can't submit a new patch without " \ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1019 "attaching a patch file." |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1020 for fileid in newdata["files"]: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1021 if db.file.get(fileid, "type") != "text/plain": |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1022 raise Reject, "Submitted patch files must be text/plain." |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1023 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1024 # When the status is changed from "approved" to "applied", apply the patch. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1025 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1026 def apply_patch(db, cl, id, olddata): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1027 if cl.get(id, "status") == db.status.lookup("applied") and \ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1028 olddata["status"] == db.status.lookup("approved"): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1029 # ...apply the patch... |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1030 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1031 def init(db): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1032 db.patch.audit("create", check_new_patch) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1033 db.patch.react("set", apply_patch)</small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1034 ></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1035 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1036 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1037 <h2>6. Command Interface</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1038 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1039 <p>The command interface is a very simple and minimal interface, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1040 intended only for quick searches and checks from the shell prompt. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1041 (Anything more interesting can simply be written in Python using |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1042 the Roundup database module.) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1043 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1044 <h3>6.1. Interface Specification</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1045 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1046 <p>A single command, <tt>roundup</tt>, provides basic access to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1047 the hyperdatabase from the command line. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1048 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1049 <ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1050 <li><tt>roundup get </tt>[<tt>-list</tt>]<tt> </tt |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1051 ><em>designator</em>[<tt>,</tt |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1052 ><em>designator</em><tt>,</tt>...]<tt> </tt><em>propname</em> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1053 <li><tt>roundup set </tt><em>designator</em>[<tt>,</tt |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1054 ><em>designator</em><tt>,</tt>...]<tt> </tt><em>propname</em |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1055 ><tt>=</tt><em>value</em> ... |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1056 <li><tt>roundup find </tt>[<tt>-list</tt>]<tt> </tt |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1057 ><em>classname</em><tt> </tt><em>propname</em>=<em>value</em> ... |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1058 </ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1059 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1060 <p>Property values are represented as strings in command arguments |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1061 and in the printed results: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1062 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1063 <ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1064 <li>Strings are, well, strings. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1065 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1066 <li>Date values are printed in the full date format in the local |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1067 time zone, and accepted in the full format or any of the partial |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1068 formats explained above. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1069 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1070 <li>Link values are printed as item designators. When given as |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1071 an argument, item designators and key strings are both accepted. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1072 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1073 <li>Multilink values are printed as lists of item designators |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1074 joined by commas. When given as an argument, item designators |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1075 and key strings are both accepted; an empty string, a single item, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1076 or a list of items joined by commas is accepted. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1077 </ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1078 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1079 <p>When multiple items are specified to the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1080 <tt>roundup get</tt> or <tt>roundup set</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1081 commands, the specified properties are retrieved or set |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1082 on all the listed items. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1083 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1084 <p>When multiple results are returned by the <tt>roundup get</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1085 or <tt>roundup find</tt> commands, they are printed one per |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1086 line (default) or joined by commas (with the <tt>-list</tt>) option. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1087 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1088 <h3>6.2. Usage Example</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1089 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1090 <p>To find all messages regarding in-progress issues that |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1091 contain the word "spam", for example, you could execute the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1092 following command from the directory where the database |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1093 dumps its files: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1094 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1095 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1096 >shell% <span class="input">for issue in `roundup find issue status=in-progress`; do</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1097 > <span class="input">grep -l spam `roundup get $issue messages`</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1098 > <span class="input">done</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1099 <span class="output">msg23 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1100 msg49 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1101 msg50 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1102 msg61</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1103 shell%</small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1104 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1105 <p>Or, using the <tt>-list</tt> option, this can be written as a single command: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1106 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1107 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1108 >shell% <span class="input">grep -l spam `roundup get \ |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1109 \`roundup find -list issue status=in-progress\` messages`</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1110 <span class="output">msg23 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1111 msg49 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1112 msg50 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1113 msg61</span> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1114 shell%</small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1115 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1116 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1117 <h2>7. E-mail User Interface</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1118 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1119 <p>The Roundup system must be assigned an e-mail address |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1120 at which to receive mail. Messages should be piped to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1121 the Roundup mail-handling script by the mail delivery |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1122 system (e.g. using an alias beginning with "|" for sendmail). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1123 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1124 <h3>7.1. Message Processing</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1125 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1126 <p>Incoming messages are examined for multiple parts. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1127 In a <tt>multipart/mixed</tt> message or part, each subpart is |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1128 extracted and examined. In a <tt>multipart/alternative</tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1129 message or part, we look for a <tt>text/plain</tt> subpart and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1130 ignore the other parts. The <tt>text/plain</tt> subparts are |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1131 assembled to form the textual body of the message, to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1132 be stored in the file associated with a "msg" class item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1133 Any parts of other types are each stored in separate |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1134 files and given "file" class items that are linked to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1135 the "msg" item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1136 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1137 <p>The "summary" property on message items is taken from |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1138 the first non-quoting section in the message body. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1139 The message body is divided into sections by blank lines. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1140 Sections where the second and all subsequent lines begin |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1141 with a ">" or "|" character are considered "quoting |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1142 sections". The first line of the first non-quoting |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1143 section becomes the summary of the message. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1144 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1145 <p>All of the addresses in the To: and Cc: headers of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1146 incoming message are looked up among the user items, and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1147 the corresponding users are placed in the "recipients" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1148 property on the new "msg" item. The address in the From: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1149 header similarly determines the "author" property of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1150 new "msg" item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1151 The default handling for |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1152 addresses that don't have corresponding users is to create |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1153 new users with no passwords and a username equal to the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1154 address. (The web interface does not permit logins for |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1155 users with no passwords.) If we prefer to reject mail from |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1156 outside sources, we can simply register an auditor on the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1157 "user" class that prevents the creation of user items with |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1158 no passwords. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1159 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1160 <p>The subject line of the incoming message is examined to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1161 determine whether the message is an attempt to create a new |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1162 item or to discuss an existing item. A designator enclosed |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1163 in square brackets is sought as the first thing on the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1164 subject line (after skipping any "Fwd:" or "Re:" prefixes). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1165 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1166 <p>If an item designator (class name and id number) is found |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1167 there, the newly created "msg" item is added to the "messages" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1168 property for that item, and any new "file" items are added to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1169 the "files" property for the item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1170 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1171 <p>If just an item class name is found there, we attempt to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1172 create a new item of that class with its "messages" property |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1173 initialized to contain the new "msg" item and its "files" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1174 property initialized to contain any new "file" items. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1175 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1176 <p>Both cases may trigger detectors (in the first case we |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1177 are calling the <tt>set()</tt> method to add the message to the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1178 item's spool; in the second case we are calling the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1179 <tt>create()</tt> method to create a new item). If an auditor |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1180 raises an exception, the original message is bounced back to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1181 the sender with the explanatory message given in the exception. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1182 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1183 <h3>7.2. Nosy Lists</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1184 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1185 <p>A standard detector is provided that watches for additions |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1186 to the "messages" property. When a new message is added, the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1187 detector sends it to all the users on the "nosy" list for the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1188 item that are not already on the "recipients" list of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1189 message. Those users are then appended to the "recipients" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1190 property on the message, so multiple copies of a message |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1191 are never sent to the same user. The journal recorded by |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1192 the hyperdatabase on the "recipients" property then provides |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1193 a log of when the message was sent to whom. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1194 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1195 <h3>7.3. Setting Properties</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1196 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1197 <p>The e-mail interface also provides a simple way to set |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1198 properties on items. At the end of the subject line, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1199 <em>propname</em><tt>=</tt><em>value</em> pairs can be |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1200 specified in square brackets, using the same conventions |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1201 as for the <tt>roundup set</tt> shell command. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1202 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1203 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1204 <h2>8. Web User Interface</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1205 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1206 <p>The web interface is provided by a CGI script that can be |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1207 run under any web server. A simple web server can easily be |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1208 built on the standard <tt>CGIHTTPServer</tt> module, and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1209 should also be included in the distribution for quick |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1210 out-of-the-box deployment. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1211 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1212 <p>The user interface is constructed from a number of template |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1213 files containing mostly HTML. Among the HTML tags in templates |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1214 are interspersed some nonstandard tags, which we use as |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1215 placeholders to be replaced by properties and their values. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1216 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1217 <h3>8.1. Views and View Specifiers</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1218 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1219 <p>There are two main kinds of views: index views and item views. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1220 An index view displays a list of items of a particular class, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1221 optionally sorted and filtered as requested. An item view |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1222 presents the properties of a particular item for editing |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1223 and displays the message spool for the item. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1224 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1225 <p>A <em>view specifier</em> is a string that specifies |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1226 all the options needed to construct a particular view. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1227 It goes after the URL to the Roundup CGI script or the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1228 web server to form the complete URL to a view. When the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1229 result of selecting a link or submitting a form takes |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1230 the user to a new view, the Web browser should be redirected |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1231 to a canonical location containing a complete view specifier |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1232 so that the view can be bookmarked. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1233 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1234 <h3>8.2. Displaying Properties</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1235 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1236 <p>Properties appear in the user interface in three contexts: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1237 in indices, in editors, and as filters. For each type of |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1238 property, there are several display possibilities. For example, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1239 in an index view, a string property may just be printed as |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1240 a plain string, but in an editor view, that property should |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1241 be displayed in an editable field. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1242 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1243 <p>The display of a property is handled by functions in |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1244 a <tt>displayers</tt> module. Each function accepts at |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1245 least three standard arguments -- the database, class name, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1246 and item id -- and returns a chunk of HTML. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1247 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1248 <p>Displayer functions are triggered by <tt><display></tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1249 tags in templates. The <tt>call</tt> attribute of the tag |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1250 provides a Python expression for calling the displayer |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1251 function. The three standard arguments are inserted in |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1252 front of the arguments given. For example, the occurrence of |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1253 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1254 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1255 > <display call="plain('status', max=30)"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1256 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1257 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1258 in a template triggers a call to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1259 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1260 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1261 > plain(db, "issue", 13, "status", max=30) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1262 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1263 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1264 when displaying item 13 in the "issue" class. The displayer |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1265 functions can accept extra arguments to further specify |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1266 details about the widgets that should be generated. By defining new |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1267 displayer functions, the user interface can be highly customized. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1268 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1269 <p>Some of the standard displayer functions include: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1270 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1271 <ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1272 <li><strong>plain</strong>: display a String property directly; |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1273 display a Date property in a specified time zone with an option |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1274 to omit the time from the date stamp; for a Link or Multilink |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1275 property, display the key strings of the linked items (or the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1276 ids if the linked class has no key property) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1277 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1278 <li><strong>field</strong>: display a property like the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1279 <strong>plain</strong> displayer above, but in a text field |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1280 to be edited |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1281 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1282 <li><strong>menu</strong>: for a Link property, display |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1283 a menu of the available choices |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1284 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1285 <li><strong>link</strong>: for a Link or Multilink property, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1286 display the names of the linked items, hyperlinked to the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1287 item views on those items |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1288 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1289 <li><strong>count</strong>: for a Multilink property, display |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1290 a count of the number of links in the list |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1291 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1292 <li><strong>reldate</strong>: display a Date property in terms |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1293 of an interval relative to the current date (e.g. "+ 3w", "- 2d"). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1294 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1295 <li><strong>download</strong>: show a Link("file") or Multilink("file") |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1296 property using links that allow you to download files |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1297 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1298 <li><strong>checklist</strong>: for a Link or Multilink property, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1299 display checkboxes for the available choices to permit filtering |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1300 </ul> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1301 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1302 <h3>8.3. Index Views</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1303 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1304 <p>An index view contains two sections: a filter section |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1305 and an index section. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1306 The filter section provides some widgets for selecting |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1307 which items appear in the index. The index section is |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1308 a table of items. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1309 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1310 <h4>8.3.1. Index View Specifiers</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1311 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1312 <p>An index view specifier looks like this (whitespace |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1313 has been added for clarity): |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1314 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1315 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1316 >/issue?status=unread,in-progress,resolved& |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1317 topic=security,ui& |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1318 :group=+priority& |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1319 :sort=-activity& |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1320 :filters=status,topic& |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1321 :columns=title,status,fixer |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1322 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1323 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1324 <p>The index view is determined by two parts of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1325 specifier: the layout part and the filter part. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1326 The layout part consists of the query parameters that |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1327 begin with colons, and it determines the way that the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1328 properties of selected items are displayed. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1329 The filter part consists of all the other query parameters, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1330 and it determines the criteria by which items |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1331 are selected for display. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1332 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1333 <p>The filter part is interactively manipulated with |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1334 the form widgets displayed in the filter section. The |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1335 layout part is interactively manipulated by clicking |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1336 on the column headings in the table. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1337 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1338 <p>The filter part selects the <em>union</em> of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1339 sets of items with values matching any specified Link |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1340 properties and the <em>intersection</em> of the sets |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1341 of items with values matching any specified Multilink |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1342 properties. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1343 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1344 <p>The example specifies an index of "issue" items. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1345 Only items with a "status" of <em>either</em> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1346 "unread" or "in-progres" or "resolved" are displayed, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1347 and only items with "topic" values including <em>both</em> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1348 "security" <em>and</em> "ui" are displayed. The items |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1349 are grouped by priority, arranged in ascending order; |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1350 and within groups, sorted by activity, arranged in |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1351 descending order. The filter section shows filters |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1352 for the "status" and "topic" properties, and the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1353 table includes columns for the "title", "status", and |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1354 "fixer" properties. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1355 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1356 <p>Associated with each item class is a default |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1357 layout specifier. The layout specifier in the above |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1358 example is the default layout to be provided with |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1359 the default bug-tracker schema described above in |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1360 section 4.4. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1361 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1362 <h4>8.3.2. Filter Section</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1363 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1364 <p>The template for a filter section provides the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1365 filtering widgets at the top of the index view. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1366 Fragments enclosed in <tt><property></tt>...<tt></property></tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1367 tags are included or omitted depending on whether the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1368 view specifier requests a filter for a particular property. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1369 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1370 <p>Here's a simple example of a filter template. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1371 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1372 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1373 ><property name=status> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1374 <display call="checklist('status')"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1375 </property> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1376 <br> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1377 <property name=priority> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1378 <display call="checklist('priority')"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1379 </property> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1380 <br> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1381 <property name=fixer> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1382 <display call="menu('fixer')"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1383 </property></small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1384 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1385 <h4>8.3.3. Index Section</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1386 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1387 <p>The template for an index section describes one row of |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1388 the index table. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1389 Fragments enclosed in <tt><property></tt>...<tt></property></tt> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1390 tags are included or omitted depending on whether the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1391 view specifier requests a column for a particular property. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1392 The table cells should contain <tt><display></tt> tags |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1393 to display the values of the item's properties. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1394 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1395 <p>Here's a simple example of an index template. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1396 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1397 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1398 ><tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1399 <property name=title> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1400 <td><display call="plain('title', max=50)"></td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1401 </property> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1402 <property name=status> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1403 <td><display call="plain('status')"></td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1404 </property> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1405 <property name=fixer> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1406 <td><display call="plain('fixer')"></td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1407 </property> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1408 </tr></small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1409 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1410 <h4>8.3.4. Sorting</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1411 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1412 <p>String and Date values are sorted in the natural way. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1413 Link properties are sorted according to the value of the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1414 "order" property on the linked items if it is present; or |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1415 otherwise on the key string of the linked items; or |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1416 finally on the item ids. Multilink properties are |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1417 sorted according to how many links are present. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1418 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1419 <h3>8.4. Item Views</h3> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1420 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1421 <p>An item view contains an editor section and a spool section. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1422 At the top of an item view, links to superseding and superseded |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1423 items are always displayed. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1424 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1425 <h4>8.4.1. Item View Specifiers</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1426 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1427 <p>An item view specifier is simply the item's designator: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1428 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1429 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1430 >/patch23 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1431 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1432 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1433 <h4>8.4.2. Editor Section</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1434 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1435 <p>The editor section is generated from a template |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1436 containing <tt><display></tt> tags to insert |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1437 the appropriate widgets for editing properties. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1438 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1439 <p>Here's an example of a basic editor template. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1440 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1441 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1442 ><table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1443 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1444 <td colspan=2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1445 <display call="field('title', size=60)"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1446 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1447 </tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1448 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1449 <td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1450 <display call="field('fixer', size=30)"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1451 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1452 <td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1453 <display call="menu('status')> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1454 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1455 </tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1456 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1457 <td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1458 <display call="field('nosy', size=30)"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1459 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1460 <td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1461 <display call="menu('priority')> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1462 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1463 </tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1464 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1465 <td colspan=2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1466 <display call="note()"> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1467 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1468 </tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1469 </table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1470 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1471 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1472 <p>As shown in the example, the editor template can also |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1473 request the display of a "note" field, which is a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1474 text area for entering a note to go along with a change. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1475 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1476 <p>When a change is submitted, the system automatically |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1477 generates a message describing the changed properties. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1478 The message displays all of the property values on the |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1479 item and indicates which ones have changed. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1480 An example of such a message might be this: |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1481 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1482 <blockquote><pre><small |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1483 >title: Polly Parrot is dead |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1484 priority: critical |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1485 status: unread -> in-progress |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1486 fixer: (none) |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1487 keywords: parrot,plumage,perch,nailed,dead |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1488 </small></pre></blockquote> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1489 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1490 <p>If a note is given in the "note" field, the note is |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1491 appended to the description. The message is then added |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1492 to the item's message spool (thus triggering the standard |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1493 detector to react by sending out this message to the nosy list). |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1494 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1495 <h4>8.4.3. Spool Section</h4> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1496 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1497 <p>The spool section lists messages in the item's "messages" |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1498 property. The index of messages displays the "date", "author", |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1499 and "summary" properties on the message items, and selecting a |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1500 message takes you to its content. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1501 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1502 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1503 <h2>9. Deployment Scenarios</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1504 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1505 <p>The design described above should be general enough |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1506 to permit the use of Roundup for bug tracking, managing |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1507 projects, managing patches, or holding discussions. By |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1508 using items of multiple types, one could deploy a system |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1509 that maintains requirement specifications, catalogs bugs, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1510 and manages submitted patches, where patches could be |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1511 linked to the bugs and requirements they address. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1512 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1513 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1514 <h2>10. Acknowledgements</h2> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1515 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1516 <p>My thanks are due to Christy Heyl for |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1517 reviewing and contributing suggestions to this paper |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1518 and motivating me to get it done, and to |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1519 Jesse Vincent, Mark Miller, Christopher Simons, |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1520 Jeff Dunmall, Wayne Gramlich, and Dean Tribble for |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1521 their assistance with the first-round submission. |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1522 </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1523 </tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1524 </table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1525 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1526 <p> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1527 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1528 <center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1529 <table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1530 <tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1531 <td> <a href="http://www.software-carpentry.com/index.html"><b>[Home]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1532 <td> <a href="http://www.software-carpentry.com/faq.html"><b>[FAQ]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1533 <td> <a href="http://www.software-carpentry.com/license.html"><b>[License]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1534 <td> <a href="http://www.software-carpentry.com/contest-rules.html"><b>[Rules]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1535 <td> <a href="http://www.software-carpentry.com/sc_config/"><b>[Configure]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1536 <td> <a href="http://www.software-carpentry.com/sc_build/"><b>[Build]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1537 <td> <a href="http://www.software-carpentry.com/sc_test/"><b>[Test]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1538 <td> <a href="http://www.software-carpentry.com/sc_track/"><b>[Track]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1539 <td> <a href="http://www.software-carpentry.com/biblio.html"><b>[Resources]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1540 <td> <a href="http://www.software-carpentry.com/lists/"><b>[Archives]</b></a> </td> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1541 </tr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1542 </table> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1543 </center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1544 |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1545 <p><hr> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1546 <center>Last modified 2001/04/06 11:50:59.9063 US/Mountain</center> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1547 </BODY> |
|
b26176334c88
Fix broken links to static html doc files (issue2550840)
John Kristensen <john@jerrykan.com>
parents:
diff
changeset
|
1548 </HTML> |
