Thu, 21 Dec 2017 19:48:27 +0100
davql: allow ANYWHERE keyword in SELECT statements
This may seem pointless, but users might want to be explicit about this and the grammar is more consistent.
This commit also adds some no-ops to the functions body of the SET parser, because some day the grammar might allow more clauses after the WHERE clause.
273 | 1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
2 | <html xmlns="http://www.w3.org/1999/xhtml"> | |
3 | <head> | |
4 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
5 | <meta http-equiv="Content-Style-Type" content="text/css" /> | |
6 | <meta name="generator" content="pandoc" /> | |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
7 | <title>Configuration</title> |
273 | 8 | <style type="text/css">code{white-space: pre;}</style> |
9 | <link rel="stylesheet" href="davdoc.css" type="text/css" /> | |
10 | </head> | |
11 | <body> | |
12 | <div class="header"> | |
285
02d3e4b1245f
adds some small fixes for 1.0 release
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
283
diff
changeset
|
13 | <a href="./index.html"><span>DavUtils documentation</span></a> |
273 | 14 | </div> |
15 | <div class="sidebar"> | |
16 | <div class="nav"> | |
17 | <h3>dav</h3> | |
18 | <ul> | |
19 | <li><a href="getting-started.html">Getting started</a></li> | |
20 | <li><a href="commands.html">Commands</a></li> | |
21 | <ul> | |
22 | <li><a href="list.html">list</a></li> | |
23 | <li><a href="get.html">get</a></li> | |
24 | <li><a href="put.html">put</a></li> | |
25 | <li><a href="mkdir.html">mkdir</a></li> | |
26 | <li><a href="remove.html">remove</a></li> | |
27 | <li><a href="copy.html">copy</a></li> | |
28 | <li><a href="move.html">move</a></li> | |
29 | <li><a href="get-property.html">get-property</a></li> | |
30 | <li><a href="set-property.html">set-property</a></li> | |
320
12ed560c926c
adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
294
diff
changeset
|
31 | <li><a href="remove-property.html">remove-property</a></li> |
273 | 32 | <li><a href="lock.html">lock</a></li> |
33 | <li><a href="unlock.html">unlock</a></li> | |
34 | <li><a href="info.html">info</a></li> | |
35 | <li><a href="date.html">date</a></li> | |
36 | <li><a href="add-repository.html">add-repository</a></li> | |
37 | <li><a href="list-repositories.html">list-repositories</a></li> | |
38 | <li><a href="check-config.html">check-config</a></li> | |
39 | </ul> | |
40 | <li><a href="configuration.html">Configuration</a></li> | |
41 | <li><a href="encryption.html">Encryption</a></li> | |
42 | </ul> | |
43 | </div> | |
44 | <div class="nav"> | |
45 | <h3>dav-sync</h3> | |
46 | <ul> | |
47 | <li><a href="introduction.html">Introduction</a></li> | |
48 | <li><a href="sync-commands.html">Commands</a></li> | |
49 | <ul> | |
50 | <li><a href="pull.html">pull</a></li> | |
51 | <li><a href="push.html">push</a></li> | |
320
12ed560c926c
adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
294
diff
changeset
|
52 | <li><a href="archive.html">archive</a></li> |
273 | 53 | <li><a href="resolve-conflicts.html">resolve-conflicts</a></li> |
54 | <li><a href="delete-conflicts.html">delete-conflicts</a></li> | |
55 | <li><a href="trash-info.html">trash-info</a></li> | |
56 | <li><a href="empty-trash.html">empty-trash</a></li> | |
57 | <li><a href="add-directory.html">add-directory</a></li> | |
58 | <li><a href="list-directories.html">list-directories</a></li> | |
59 | <li><a href="sync-check-config.html">check-config</a></li> | |
60 | <li><a href="check-repositories.html">check-repositories</a></li> | |
61 | </ul> | |
62 | <li><a href="sync-configuration.html">Configuration</a></li> | |
63 | </ul> | |
64 | </div> | |
65 | </div> | |
66 | ||
67 | <!-- begin content --> | |
68 | <div class="content"> | |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
69 | <div id="header"> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
70 | <h1 class="title">Configuration</h1> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
71 | </div> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
72 | <p>The file <code>$HOME/.dav/sync.xml</code> is used for configuring sync-directories.</p> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
73 | <p>The <em>sync.xml</em> file is an XML file with <code><configuration></code> as root element. This element can only have <code><directory></code> elements as children.</p> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
74 | <h2 id="directory">directory</h2> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
75 | <p>This element configures a sync-directory. A sync-directory must have a unique name, a (local) path, repository and a database.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
76 | <p>Required elements: <code><name></code>, <code><repository></code>, <code><path></code>, <code><database></code><br /> |
320
12ed560c926c
adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
294
diff
changeset
|
77 | Optional elements: <code><collection></code>, <code><trash></code>, <code><max-retry></code>, <code><backup-on-pull></code>, <code><lock-pull></code>, <code><lock-push></code>, <code><lock-timeout></code>, <code><filter></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
78 | <h3 id="name">name</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
79 | <p>Unique sync-directory identifer. This identifer is used in combination with all <em>dav-sync</em> commands.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
80 | <p>Type: string<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
81 | Example: <code><name>mysyncdir</name></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
82 | <h3 id="repository">repository</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
83 | <p>Name of the WebDAV-repository. A repository with the same name must be configured in [config.xml][1].</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
84 | <p>Type: string<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
85 | Example: <code><name>myrepo</name></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
86 | <h3 id="path">path</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
87 | <p>The path of the local directory that should be synchronized. The path must be an absolute path or start with an environment variable. A path with an environment variable must start with an <code>$</code> followed by the variable name optionally followed by a path. For example:</p> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
88 | <pre><code>`<path>$HOME/Documents</path>`</code></pre> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
89 | <p>The part between <code>$</code> and <code>/</code> is the environment variable name.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
90 | <p>Type: string<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
91 | Example: <code><path>/absolute/path</path></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
92 | <h3 id="database">database</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
93 | <p>Path to the database file used for this sync-directory. The path must be relative to the <em>$HOME/.dav/</em> directory.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
94 | <p>Type: string<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
95 | Example: <code><database>myrepo-db.xml</database></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
96 | <h3 id="collection">collection</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
97 | <p>Path of the collection relative to the repository root collection. For example if the repository url is <em>http://example.com/webdav/</em> and the collection value is <em>/myfiles/</em>, the directory is synchronized with <em>http://example.com/webdav/myfiles/</em></p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
98 | <p>Type: string<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
99 | Default: /<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
100 | Example: <code><collection>/myfiles</collection></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
101 | <h3 id="trash">trash</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
102 | <p>Path to the trash directory for this sync-directory. Files that should be deleted will be moved to this directory. The value must be an absolute path or relative to the sync-directory path.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
103 | <p>Type: string<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
104 | Example: <code><trash>.trash</trash></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
105 | <h3 id="max-retry">max-retry</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
106 | <p>This integer value controls how many attempts of downloading/uploading a file in case of an error are made.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
107 | <p>Type: integer<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
108 | Default: 0<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
109 | Example: <code><max-retry>3</max-retry></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
110 | <h3 id="backup-on-pull">backup-on-pull</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
111 | <p>If this element has the value of true, the <em>pull</em> command will move old local files to the trash directory before downloading the new version from the server.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
112 | <p>Type: boolean<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
113 | Default: false<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
114 | Example: <code><backup-on-pull>true</backup-on-pull></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
115 | <h3 id="lock-pull">lock-pull</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
116 | <p>Enables locking for the <em>pull</em> command.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
117 | <p>Type: boolean<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
118 | Default: false<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
119 | Example: <code><lock-pull>true</lock-pull></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
120 | <h3 id="lock-push">lock-push</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
121 | <p>Enables locking for the <em>push</em> command.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
122 | <p>Type: boolean<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
123 | Default: false<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
124 | Example: <code><lock-push>true</lock-push></code></p> |
320
12ed560c926c
adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
294
diff
changeset
|
125 | <h3 id="lock-timeout">lock-timeout</h3> |
12ed560c926c
adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
294
diff
changeset
|
126 | <p>Specifies the lock timeout in seconds. If the lock-timeout is 0, the client doesn't request a specific timeout and the server's default value is used. If the lock-timeout is -1, a infinite timeout is requested.</p> |
12ed560c926c
adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
294
diff
changeset
|
127 | <p>Type: integer<br /> |
12ed560c926c
adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
294
diff
changeset
|
128 | Default: 0<br /> |
12ed560c926c
adds documentation for new features
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
294
diff
changeset
|
129 | Example: <code><lock-timeout>50</lock-timeout></code></p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
130 | <h3 id="filter">filter</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
131 | <p>With the filter element, include and exclude filters can be specified, to control which files are synchronized. The <em>pull</em> and <em>push</em> command apply these filters to file paths. At first it is checked if a file is matching any include filter. If so only files matching not an exclude filter are further processed.</p> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
132 | <p>Note: The file path is relative to the directory path (and WebDAV collection) but always starts with an path separator.</p> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
133 | <p>Optional elements: <code><include></code>, <code><exclude></code></p> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
134 | <h3 id="include">include</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
135 | <p>Controls which files will be included by <em>pull</em> and <em>push</em>. If an include filter is specified, only files matching this filter are included.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
136 | <p>Type: regex string<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
137 | Default: .*<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
138 | Example:</p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
139 | <pre><code><filter> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
140 | <include>\.pdf$</include> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
141 | </filter></code></pre> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
142 | <h3 id="exclude">exclude</h3> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
143 | <p>Controls which files will be excluded by <em>pull</em> and <em>push</em>.</p> |
294
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
144 | <p>Type: regex string<br /> |
dd5c0ebdf54f
fixes dav startup without .dav dir
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
285
diff
changeset
|
145 | Example:</p> |
283
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
146 | <pre><code><filter> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
147 | <exclude>^/secretdir</exclude> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
148 | <exclude>\.DS_Store$</exclude> |
0e36bb75a732
adds dav-sync introduction and sync.xml documentation
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
273
diff
changeset
|
149 | </filter></code></pre> |
273 | 150 | </div> |
151 | <!-- end content --> | |
152 | </body> | |
153 | </html> |