rockdove 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. data/.yardopts +1 -0
  2. data/CHANGELOG.md +8 -1
  3. data/README.md +5 -2
  4. data/lib/generators/rockdove/install_generator.rb +4 -1
  5. data/lib/rockdove/email_parser.rb +6 -8
  6. data/lib/rockdove/exchange_mail.rb +18 -2
  7. data/lib/rockdove/version.rb +1 -1
  8. data/lib/rockdove.rb +11 -0
  9. data/rockdove.gemspec +2 -2
  10. data/spec/rockdove/collect_mail_spec.rb +29 -0
  11. data/spec/rockdove/emails/attachment.yml +4 -0
  12. data/spec/rockdove/emails/mail_with_attachment.yml +51 -0
  13. data/spec/rockdove/rockdove_shared_spec.rb +8 -1
  14. data/spec/spec_helper.rb +7 -5
  15. metadata +26 -52
  16. data/.yardoc/checksums +0 -9
  17. data/.yardoc/object_types +0 -0
  18. data/.yardoc/objects/root.dat +0 -0
  19. data/.yardoc/proxy_types +0 -0
  20. data/doc/Rockdove/CollectMail.html +0 -1302
  21. data/doc/Rockdove/Config.html +0 -1125
  22. data/doc/Rockdove/Dovetie.html +0 -123
  23. data/doc/Rockdove/EmailParser.html +0 -377
  24. data/doc/Rockdove/ExchangeMail.html +0 -1054
  25. data/doc/Rockdove/Generators/InstallGenerator.html +0 -192
  26. data/doc/Rockdove/Generators.html +0 -115
  27. data/doc/Rockdove/RockdoveCollection.html +0 -123
  28. data/doc/Rockdove.html +0 -215
  29. data/doc/RockdoveServer.html +0 -404
  30. data/doc/_index.html +0 -214
  31. data/doc/class_list.html +0 -53
  32. data/doc/css/common.css +0 -1
  33. data/doc/css/full_list.css +0 -57
  34. data/doc/css/style.css +0 -328
  35. data/doc/file.CHANGELOG.html +0 -93
  36. data/doc/file.README.html +0 -164
  37. data/doc/file_list.html +0 -58
  38. data/doc/frames.html +0 -28
  39. data/doc/index.html +0 -164
  40. data/doc/js/app.js +0 -214
  41. data/doc/js/full_list.js +0 -173
  42. data/doc/js/jquery.js +0 -4
  43. data/doc/method_list.html +0 -492
  44. data/doc/top-level-namespace.html +0 -126
@@ -1,57 +0,0 @@
1
- body {
2
- margin: 0;
3
- font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
4
- font-size: 13px;
5
- height: 101%;
6
- overflow-x: hidden;
7
- }
8
-
9
- h1 { padding: 12px 10px; padding-bottom: 0; margin: 0; font-size: 1.4em; }
10
- .clear { clear: both; }
11
- #search { position: absolute; right: 5px; top: 9px; padding-left: 24px; }
12
- #content.insearch #search, #content.insearch #noresults { background: url(data:image/gif;base64,R0lGODlhEAAQAPYAAP///wAAAPr6+pKSkoiIiO7u7sjIyNjY2J6engAAAI6OjsbGxjIyMlJSUuzs7KamppSUlPLy8oKCghwcHLKysqSkpJqamvT09Pj4+KioqM7OzkRERAwMDGBgYN7e3ujo6Ly8vCoqKjY2NkZGRtTU1MTExDw8PE5OTj4+PkhISNDQ0MrKylpaWrS0tOrq6nBwcKysrLi4uLq6ul5eXlxcXGJiYoaGhuDg4H5+fvz8/KKiohgYGCwsLFZWVgQEBFBQUMzMzDg4OFhYWBoaGvDw8NbW1pycnOLi4ubm5kBAQKqqqiQkJCAgIK6urnJyckpKSjQ0NGpqatLS0sDAwCYmJnx8fEJCQlRUVAoKCggICLCwsOTk5ExMTPb29ra2tmZmZmhoaNzc3KCgoBISEiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCAAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAkIAAAALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkECQgAAAAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAkIAAAALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==) no-repeat center left; }
13
- #full_list { padding: 0; list-style: none; margin-left: 0; }
14
- #full_list ul { padding: 0; }
15
- #full_list li { padding: 5px; padding-left: 12px; margin: 0; font-size: 1.1em; list-style: none; }
16
- #noresults { padding: 7px 12px; }
17
- #content.insearch #noresults { margin-left: 7px; }
18
- ul.collapsed ul, ul.collapsed li { display: none; }
19
- ul.collapsed.search_uncollapsed { display: block; }
20
- ul.collapsed.search_uncollapsed li { display: list-item; }
21
- li a.toggle { cursor: default; position: relative; left: -5px; top: 4px; text-indent: -999px; width: 10px; height: 9px; margin-left: -10px; display: block; float: left; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left; }
22
- li.collapsed a.toggle { opacity: 0.5; cursor: default; background-position: top left; }
23
- li { color: #888; cursor: pointer; }
24
- li.deprecated { text-decoration: line-through; font-style: italic; }
25
- li.r1 { background: #f0f0f0; }
26
- li.r2 { background: #fafafa; }
27
- li:hover { background: #ddd; }
28
- li small:before { content: "("; }
29
- li small:after { content: ")"; }
30
- li small.search_info { display: none; }
31
- a:link, a:visited { text-decoration: none; color: #05a; }
32
- li.clicked { background: #05a; color: #ccc; }
33
- li.clicked a:link, li.clicked a:visited { color: #eee; }
34
- li.clicked a.toggle { opacity: 0.5; background-position: bottom right; }
35
- li.collapsed.clicked a.toggle { background-position: top right; }
36
- #search input { border: 1px solid #bbb; -moz-border-radius: 3px; -webkit-border-radius: 3px; }
37
- #nav { margin-left: 10px; font-size: 0.9em; display: none; color: #aaa; }
38
- #nav a:link, #nav a:visited { color: #358; }
39
- #nav a:hover { background: transparent; color: #5af; }
40
- .frames #nav span:after { content: ' | '; }
41
- .frames #nav span:last-child:after { content: ''; }
42
-
43
- .frames #content h1 { margin-top: 0; }
44
- .frames li { white-space: nowrap; cursor: normal; }
45
- .frames li small { display: block; font-size: 0.8em; }
46
- .frames li small:before { content: ""; }
47
- .frames li small:after { content: ""; }
48
- .frames li small.search_info { display: none; }
49
- .frames #search { width: 170px; position: static; margin: 3px; margin-left: 10px; font-size: 0.9em; color: #888; padding-left: 0; padding-right: 24px; }
50
- .frames #content.insearch #search { background-position: center right; }
51
- .frames #search input { width: 110px; }
52
- .frames #nav { display: block; }
53
-
54
- #full_list.insearch li { display: none; }
55
- #full_list.insearch li.found { display: list-item; padding-left: 10px; }
56
- #full_list.insearch li a.toggle { display: none; }
57
- #full_list.insearch li small.search_info { display: block; }
data/doc/css/style.css DELETED
@@ -1,328 +0,0 @@
1
- body {
2
- padding: 0 20px;
3
- font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
4
- font-size: 13px;
5
- }
6
- body.frames { padding: 0 5px; }
7
- h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; }
8
- h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
9
- h1.title { margin-bottom: 10px; }
10
- h1.alphaindex { margin-top: 0; font-size: 22px; }
11
- h2 {
12
- padding: 0;
13
- padding-bottom: 3px;
14
- border-bottom: 1px #aaa solid;
15
- font-size: 1.4em;
16
- margin: 1.8em 0 0.5em;
17
- }
18
- h2 small { font-weight: normal; font-size: 0.7em; display: block; float: right; }
19
- .clear { clear: both; }
20
- .inline { display: inline; }
21
- .inline p:first-child { display: inline; }
22
- .docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; }
23
- .docstring h1 { font-size: 1.2em; }
24
- .docstring h2 { font-size: 1.1em; }
25
- .docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; }
26
- .summary_desc .object_link, .docstring .object_link { font-family: monospace; }
27
- .rdoc-term { padding-right: 25px; font-weight: bold; }
28
- .rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; }
29
-
30
- /* style for <ul> */
31
- #filecontents li > p, .docstring li > p { margin: 0px; }
32
- #filecontents ul, .docstring ul { padding-left: 20px; }
33
- /* style for <dl> */
34
- #filecontents dl, .docstring dl { border: 1px solid #ccc; }
35
- #filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; }
36
- #filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; }
37
- #filecontents dd > p, .docstring dd > p { margin: 0px; }
38
-
39
- .note {
40
- color: #222;
41
- -moz-border-radius: 3px; -webkit-border-radius: 3px;
42
- background: #e3e4e3; border: 1px solid #d5d5d5; padding: 7px 10px;
43
- display: block;
44
- }
45
- .note.todo { background: #ffffc5; border-color: #ececaa; }
46
- .note.returns_void { background: #efefef; }
47
- .note.deprecated { background: #ffe5e5; border-color: #e9dada; }
48
- .note.private { background: #ffffc5; border-color: #ececaa; }
49
- .note.title { padding: 1px 5px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; }
50
- .summary_signature + .note.title { margin-left: 7px; }
51
- h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
52
- .note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
53
- .note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
54
- .note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
55
- .note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
56
- .note.title.not_defined_here { background: transparent; border: none; font-style: italic; }
57
- .discussion .note { margin-top: 6px; }
58
- .discussion .note:first-child { margin-top: 0; }
59
-
60
- h3.inherited {
61
- font-style: italic;
62
- font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
63
- font-weight: normal;
64
- padding: 0;
65
- margin: 0;
66
- margin-top: 12px;
67
- margin-bottom: 3px;
68
- font-size: 13px;
69
- }
70
- p.inherited {
71
- padding: 0;
72
- margin: 0;
73
- margin-left: 25px;
74
- }
75
-
76
- #filecontents dl.box, dl.box {
77
- border: 0;
78
- width: 520px;
79
- font-size: 1em;
80
- }
81
- #filecontents dl.box dt, dl.box dt {
82
- float: left;
83
- display: block;
84
- width: 100px;
85
- margin: 0;
86
- text-align: right;
87
- font-weight: bold;
88
- background: transparent;
89
- border: 1px solid #aaa;
90
- border-width: 1px 0px 0px 1px;
91
- padding: 6px 0;
92
- padding-right: 10px;
93
- }
94
- #filecontents dl.box dd, dl.box dd {
95
- float: left;
96
- display: block;
97
- width: 380px;
98
- margin: 0;
99
- padding: 6px 0;
100
- padding-right: 20px;
101
- border: 1px solid #aaa;
102
- border-width: 1px 1px 0 0;
103
- }
104
- #filecontents dl.box .last, dl.box .last {
105
- border-bottom: 1px solid #aaa;
106
- }
107
- #filecontents dl.box .r1, dl.box .r1 { background: #eee; }
108
-
109
- ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
110
- .index_inline_list { padding-left: 0; font-size: 1.1em; }
111
- .index_inline_list li { list-style: none; display: inline; padding: 7px 12px; line-height: 35px; }
112
-
113
- dl.constants { margin-left: 40px; }
114
- dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
115
- dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
116
-
117
- .summary_desc { margin-left: 32px; display: block; font-family: sans-serif; }
118
- .summary_desc tt { font-size: 0.9em; }
119
- dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; }
120
- dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; }
121
- dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; }
122
- dl.constants .discussion *:first-child { margin-top: 0; }
123
- dl.constants .discussion *:last-child { margin-bottom: 0; }
124
-
125
- .method_details { border-top: 1px dotted #aaa; margin-top: 15px; padding-top: 0; }
126
- .method_details.first { border: 0; }
127
- p.signature, h3.signature {
128
- font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
129
- padding: 6px 10px; margin-top: 18px;
130
- background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
131
- }
132
- p.signature tt,
133
- h3.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
134
- p.signature .overload,
135
- h3.signature .overload { display: block; }
136
- p.signature .extras,
137
- h3.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; }
138
- p.signature .not_defined_here,
139
- h3.signature .not_defined_here,
140
- p.signature .aliases,
141
- h3.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; }
142
- p.signature .aliases .names,
143
- h3.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; }
144
-
145
- .tags .tag_title { font-size: 1em; margin-bottom: 0; font-weight: bold; }
146
- .tags ul { margin-top: 5px; padding-left: 30px; list-style: square; }
147
- .tags ul li { margin-bottom: 3px; }
148
- .tags ul .name { font-family: monospace; font-weight: bold; }
149
- .tags ul .note { padding: 3px 6px; }
150
- .tags { margin-bottom: 12px; }
151
-
152
- .tags .examples .tag_title { margin-bottom: 10px; font-weight: bold; }
153
- .tags .examples .inline p { padding: 0; margin: 0; margin-left: 15px; font-weight: bold; font-size: 0.9em; }
154
-
155
- .tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
156
- .tags .overload .overload_item .signature {
157
- padding: 2px 8px;
158
- background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
159
- }
160
- .tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; }
161
- .tags .overload .docstring { margin-top: 15px; }
162
-
163
- .defines { display: none; }
164
-
165
- #method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; }
166
-
167
- .showSource { font-size: 0.9em; }
168
- .showSource a:link, .showSource a:visited { text-decoration: none; color: #666; }
169
-
170
- #content a:link, #content a:visited { text-decoration: none; color: #05a; }
171
- #content a:hover { background: #ffffa5; }
172
- div.docstring, p.docstring { margin-right: 6em; }
173
-
174
- ul.summary {
175
- list-style: none;
176
- font-family: monospace;
177
- font-size: 1em;
178
- line-height: 1.5em;
179
- }
180
- ul.summary a:link, ul.summary a:visited {
181
- text-decoration: none; font-size: 1.1em;
182
- }
183
- ul.summary li { margin-bottom: 5px; }
184
- .summary .summary_signature {
185
- padding: 1px 10px;
186
- background: #eaeaff; border: 1px solid #dfdfe5;
187
- -moz-border-radius: 3px; -webkit-border-radius: 3px;
188
- }
189
- .summary_signature:hover { background: #eeeeff; cursor: pointer; }
190
- ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
191
- ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
192
- #content .summary_signature:hover a:link,
193
- #content .summary_signature:hover a:visited {
194
- background: transparent;
195
- color: #48f;
196
- }
197
-
198
- p.inherited a { font-family: monospace; font-size: 0.9em; }
199
- p.inherited { word-spacing: 5px; font-size: 1.2em; }
200
-
201
- p.children { font-size: 1.2em; }
202
- p.children a { font-size: 0.9em; }
203
- p.children strong { font-size: 0.8em; }
204
- p.children strong.modules { padding-left: 5px; }
205
-
206
- ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; }
207
- ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; }
208
- ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,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) no-repeat top center; }
209
- ul.fullTree li:first-child { padding-top: 0; background: transparent; }
210
- ul.fullTree li:last-child { padding-bottom: 0; }
211
- .showAll ul.fullTree { display: block; }
212
- .showAll .inheritName { display: none; }
213
-
214
- #search { position: absolute; right: 14px; top: 0px; }
215
- #search a:link, #search a:visited {
216
- display: block; float: left; margin-right: 4px;
217
- padding: 8px 10px; text-decoration: none; color: #05a;
218
- border: 1px solid #d8d8e5;
219
- -moz-border-radius-bottomleft: 3px; -moz-border-radius-bottomright: 3px;
220
- -webkit-border-bottom-left-radius: 3px; -webkit-border-bottom-right-radius: 3px;
221
- background: #eaf0ff;
222
- -webkit-box-shadow: -1px 1px 3px #ddd;
223
- }
224
- #search a:hover { background: #f5faff; color: #06b; }
225
- #search a.active {
226
- background: #568; padding-bottom: 20px; color: #fff; border: 1px solid #457;
227
- -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px;
228
- -webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px;
229
- }
230
- #search a.inactive { color: #999; }
231
- .frames #search { display: none; }
232
- .inheritanceTree, .toggleDefines { float: right; }
233
-
234
- #menu { font-size: 1.3em; color: #bbb; top: -5px; position: relative; }
235
- #menu .title, #menu a { font-size: 0.7em; }
236
- #menu .title a { font-size: 1em; }
237
- #menu .title { color: #555; }
238
- #menu a:link, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; }
239
- #menu a:hover { color: #05a; }
240
- #menu .noframes { display: inline; }
241
- .frames #menu .noframes { display: inline; float: right; }
242
-
243
- #footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; }
244
- #footer a:link, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; }
245
- #footer a:hover { color: #05a; }
246
-
247
- #listing ul.alpha { font-size: 1.1em; }
248
- #listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; }
249
- #listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; }
250
- #listing ul.alpha ul { margin: 0; padding-left: 15px; }
251
- #listing ul small { color: #666; font-size: 0.7em; }
252
-
253
- li.r1 { background: #f0f0f0; }
254
- li.r2 { background: #fafafa; }
255
-
256
- #search_frame {
257
- z-index: 9999;
258
- background: #fff;
259
- display: none;
260
- position: absolute;
261
- top: 36px;
262
- right: 18px;
263
- width: 500px;
264
- height: 80%;
265
- overflow-y: scroll;
266
- border: 1px solid #999;
267
- border-collapse: collapse;
268
- -webkit-box-shadow: -7px 5px 25px #aaa;
269
- -moz-box-shadow: -7px 5px 25px #aaa;
270
- -moz-border-radius: 2px;
271
- -webkit-border-radius: 2px;
272
- }
273
-
274
- #content ul.summary li.deprecated .summary_signature a:link,
275
- #content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
276
-
277
- #toc {
278
- padding: 20px; padding-right: 30px; border: 1px solid #ddd; float: right; background: #fff; margin-left: 20px; margin-bottom: 20px;
279
- max-width: 300px;
280
- -webkit-box-shadow: -2px 2px 6px #bbb;
281
- -moz-box-shadow: -2px 2px 6px #bbb;
282
- z-index: 5000;
283
- position: relative;
284
- }
285
- #toc.nofloat { float: none; max-width: none; border: none; padding: 0; margin: 20px 0; -webkit-box-shadow: none; -moz-box-shadow: none; }
286
- #toc.nofloat.hidden { padding: 0; background: 0; margin-bottom: 5px; }
287
- #toc .title { margin: 0; }
288
- #toc ol { padding-left: 1.8em; }
289
- #toc li { font-size: 1.1em; line-height: 1.7em; }
290
- #toc > ol > li { font-size: 1.1em; font-weight: bold; }
291
- #toc ol > ol { font-size: 0.9em; }
292
- #toc ol ol > ol { padding-left: 2.3em; }
293
- #toc ol + li { margin-top: 0.3em; }
294
- #toc.hidden { padding: 10px; background: #f6f6f6; -webkit-box-shadow: none; -moz-box-shadow: none; }
295
- #filecontents h1 + #toc.nofloat { margin-top: 0; }
296
-
297
- /* syntax highlighting */
298
- .source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
299
- #filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
300
- #filecontents pre.code, .docstring pre.code { display: block; }
301
- .source_code .lines { padding-right: 12px; color: #555; text-align: right; }
302
- #filecontents pre.code, .docstring pre.code,
303
- .tags pre.example { padding: 5px 12px; margin-top: 4px; border: 1px solid #eef; background: #f5f5ff; }
304
- pre.code { color: #000; }
305
- pre.code .info.file { color: #555; }
306
- pre.code .val { color: #036A07; }
307
- pre.code .tstring_content,
308
- pre.code .heredoc_beg, pre.code .heredoc_end,
309
- pre.code .qwords_beg, pre.code .qwords_end,
310
- pre.code .tstring, pre.code .dstring { color: #036A07; }
311
- pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
312
- pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
313
- pre.code .dot + pre.code .id,
314
- pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; }
315
- pre.code .comment { color: #0066FF; }
316
- pre.code .const, pre.code .constant { color: #585CF6; }
317
- pre.code .symbol { color: #C5060B; }
318
- pre.code .kw,
319
- pre.code .label,
320
- pre.code .rubyid_require,
321
- pre.code .rubyid_extend,
322
- pre.code .rubyid_include { color: #0000FF; }
323
- pre.code .ivar { color: #318495; }
324
- pre.code .gvar,
325
- pre.code .rubyid_backref,
326
- pre.code .rubyid_nth_ref { color: #6D79DE; }
327
- pre.code .regexp, .dregexp { color: #036A07; }
328
- pre.code a { border-bottom: 1px dotted #bbf; }
@@ -1,93 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6
- <title>
7
- File: CHANGELOG
8
-
9
- &mdash; Documentation by YARD 0.8.2.1
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- hasFrames = window.top.frames.main ? true : false;
19
- relpath = '';
20
- framesUrl = "frames.html#!" + escape(window.location.href);
21
- </script>
22
-
23
-
24
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
25
-
26
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
27
-
28
-
29
- </head>
30
- <body>
31
- <div id="header">
32
- <div id="menu">
33
-
34
- <a href="_index.html">Index</a> &raquo;
35
- <span class="title">File: CHANGELOG</span>
36
-
37
-
38
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
39
- </div>
40
-
41
- <div id="search">
42
-
43
- <a class="full_list_link" id="class_list_link"
44
- href="class_list.html">
45
- Class List
46
- </a>
47
-
48
- <a class="full_list_link" id="method_list_link"
49
- href="method_list.html">
50
- Method List
51
- </a>
52
-
53
- <a class="full_list_link" id="file_list_link"
54
- href="file_list.html">
55
- File List
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <iframe id="search_frame"></iframe>
63
-
64
- <div id="content"><div id='filecontents'><h2>v0.0.1</h2>
65
-
66
- <h3>initial release</h3>
67
-
68
- <ul>
69
- <li>[Feature] Connects to EWS mailbox</li>
70
- <li>[Feature] Fetches the mail items</li>
71
- <li>[Feature] Parses each item (Signatures, Replies, Forward) </li>
72
- <li>[Feature] Handles bounce types (Undeliverable,AutoReply)</li>
73
- <li>[Feature] Polls for every interval specified</li>
74
- <li>[Feature] Provides a template of the Daemon for easy plug &amp; play</li>
75
- </ul>
76
-
77
- <h2>v0.1.0</h2>
78
-
79
- <ul>
80
- <li>[Enhancement] Ignore Delivery Failure Notices</li>
81
- <li>[Feature] Ignore Mails from specific email(s) list</li>
82
- <li>[Enhancement] Handles line breaks issue by setting text only mode for email body</li>
83
- </ul>
84
- </div></div>
85
-
86
- <div id="footer">
87
- Generated on Wed Jul 11 11:40:24 2012 by
88
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
89
- 0.8.2.1 (ruby-1.9.2).
90
- </div>
91
-
92
- </body>
93
- </html>
data/doc/file.README.html DELETED
@@ -1,164 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6
- <title>
7
- File: README
8
-
9
- &mdash; Documentation by YARD 0.8.2.1
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- hasFrames = window.top.frames.main ? true : false;
19
- relpath = '';
20
- framesUrl = "frames.html#!" + escape(window.location.href);
21
- </script>
22
-
23
-
24
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
25
-
26
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
27
-
28
-
29
- </head>
30
- <body>
31
- <div id="header">
32
- <div id="menu">
33
-
34
- <a href="_index.html">Index</a> &raquo;
35
- <span class="title">File: README</span>
36
-
37
-
38
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
39
- </div>
40
-
41
- <div id="search">
42
-
43
- <a class="full_list_link" id="class_list_link"
44
- href="class_list.html">
45
- Class List
46
- </a>
47
-
48
- <a class="full_list_link" id="method_list_link"
49
- href="method_list.html">
50
- Method List
51
- </a>
52
-
53
- <a class="full_list_link" id="file_list_link"
54
- href="file_list.html">
55
- File List
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <iframe id="search_frame"></iframe>
63
-
64
- <div id="content"><div id='filecontents'><h1>rockdove <img src="http://kiran.gnufied.org/wp-content/uploads/2012/07/1341725724_bird.png" alt="rockdove"> <a href="http://travis-ci.org/kiranh/rockdove"><img src="https://secure.travis-ci.org/kiranh/rockdove.png?branch=master" alt="Build Status"></a></h1>
65
-
66
- <p>Incoming mail processing daemon for Exchange Web Services 1.0 (EWS). This Ruby Gem connects to the EWS mailbox, fetches the mail items, parses each mail item (Signatures, Replies, Forward), handles bounce types (Undeliverable,AutoReply) and polls the mailbox for every interval specified. </p>
67
-
68
- <p>It provides a template of the rockdove server which is a simple plug and play daemon.</p>
69
-
70
- <h2>Installation</h2>
71
-
72
- <p>```ruby
73
- #Under Gemfile
74
- gem &#39;rockdove&#39;, :require =&gt; false</p>
75
-
76
- <p>#After bundle install, run this command below
77
- bundle exec rails g rockdove:install
78
- ```
79
- It copies a template of rockdove server under you script folder which contains the following snippet:</p>
80
-
81
- <p>```ruby</p>
82
-
83
- <p># ...</p>
84
-
85
- <p>Rockdove::Config.configure do |config|
86
- config.ews<em>url &#39;https:&#47;&#47;ewsdomain.com&#47;ews&#47;exchange.asmx&#39;
87
- config.ews</em>username &#39;ews<em>username&#39;
88
- config.ews</em>password &#39;ews<em>password&#39;
89
- config.ews</em>folder &#39;Inbox&#39; # ews<em>folder is Inbox by default
90
- config.ews</em>archive<em>folder &#39;Archive&#39; # by default, it deletes the mail after processing,
91
- # mention ews</em>archive<em>folder if it has to be archived to a different folder
92
- config.ews</em>watch_interval 60 # by default, the polling interval is 60
93
- end</p>
94
-
95
- <p># ...</p>
96
-
97
- <p>Rockdove::CollectMail.watch do |rockdove<em>parsed</em>mail|
98
- begin
99
- #Model.method(rockdove<em>parsed</em>mail)
100
- rescue Exception =&gt; e
101
- Rockdove.logger.error &quot;Exception occurred while receiving message:#rockdove&lt;em&gt;parsed&lt;/em&gt;mail&quot;
102
- Rockdove.logger.error [e, *e.backtrace].join(&quot;\n&quot;)
103
- end
104
- end</p>
105
-
106
- <p>```
107
- You need to change the Model into the one being used in your project that would require this behavior of Mail Processing for Exchange Web Services 1.0 and further process the mail as per the requirements in your project.</p>
108
-
109
- <ul>
110
- <li>And then you can run the script in console mode, <code>^C</code> will stop it, calling the stop method</li>
111
- </ul>
112
-
113
- <p><code>sh
114
- $ ruby .&#47;script&#47;rockdove_server.rb start #from your project root
115
- </code>
116
- - or run it daemonized, by default <code>.&#47;rockdove_server.log</code> and <code>.&#47;rockdove_server.pid</code> will be created</p>
117
-
118
- <p><code>sh
119
- $ ruby .&#47;script&#47;rockdove_server.rb -d start
120
- </code></p>
121
-
122
- <ul>
123
- <li>you can stop the daemon, removing <code>.&#47;rockdove_server.pid</code> or</li>
124
- </ul>
125
-
126
- <p><code>sh
127
- $ ruby .&#47;script&#47;rockdove_server.rb stop
128
- </code></p>
129
-
130
- <hr>
131
-
132
- <h2>Compatibility</h2>
133
-
134
- <p>Tested on all Ruby versions (1.8.7, 1.9.2, 1.9.3) with Travis CI. </p>
135
-
136
- <h2>Contributors</h2>
137
-
138
- <p>Welcome for any code optmizations or issue fixes or enhancements</p>
139
-
140
- <h3>Setup:</h3>
141
-
142
- <p><code>ruby
143
- git clone git@github.com:kiranh&#47;rockdove.git
144
- cd rockdove
145
- bundle exec rake # to run tests or bundle exec guard
146
- </code></p>
147
-
148
- <h2>Acknowledgements</h2>
149
-
150
- <p>To <a href="https://github.com/bijushoolapani">Biju Shoolapani</a> for support and encouragement. And the Code Reviewer, <a href="http://github.com/gnufied">Hemant Kumar</a>.</p>
151
-
152
- <h2>Copyright</h2>
153
-
154
- <p>Copyright (c) 2012-2015 Kiran Soumya Bosetti. See LICENSE for details.</p>
155
- </div></div>
156
-
157
- <div id="footer">
158
- Generated on Wed Jul 11 11:40:24 2012 by
159
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
160
- 0.8.2.1 (ruby-1.9.2).
161
- </div>
162
-
163
- </body>
164
- </html>