doc: convert TSTrafficServerVersionGet(3) to sphinx

Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/e0a2dd5d
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/e0a2dd5d
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/e0a2dd5d

Branch: refs/heads/3.3.x
Commit: e0a2dd5d630557390fd3216a1f5c8080b0dbcb57
Parents: fa4be92
Author: James Peach <[email protected]>
Authored: Thu Aug 1 11:38:15 2013 -0700
Committer: James Peach <[email protected]>
Committed: Thu Aug 1 11:38:15 2013 -0700

----------------------------------------------------------------------
 doc/conf.py                                     |  1 +
 .../api/TSTrafficServerVersionGet.en.rst        | 98 ++++++++++++++++++++
 2 files changed, 99 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0a2dd5d/doc/conf.py
----------------------------------------------------------------------
diff --git a/doc/conf.py b/doc/conf.py
index e2067b0..d7c9f2b 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -223,6 +223,7 @@ man_pages = [
    ('reference/api/TSmalloc.en', 'TSmalloc', u'Traffic Server memory 
allocation API', None, u'3ts'),
    ('reference/api/TSPluginInit.en', 'TSPluginInit', u'Traffic Server plugin 
loading and registration', None, u'3ts'),
    ('reference/api/TSRemap.en', 'TSRemap', u'Traffic Server remap plugin entry 
points ', None, u'3ts'),
+   ('reference/api/TSTrafficServerVersionGet.en', 'TSTrafficServerVersionGet', 
u'return Traffic Server version information', None, u'3ts'),
 
    ('reference/commands/traffic_cop.en', 'traffic_cop', u'Traffic Server 
watchdog', None, '8'),
    ('reference/commands/traffic_line.en', 'traffic_line', u'Traffic Server 
command line', None, '8'),

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0a2dd5d/doc/reference/api/TSTrafficServerVersionGet.en.rst
----------------------------------------------------------------------
diff --git a/doc/reference/api/TSTrafficServerVersionGet.en.rst 
b/doc/reference/api/TSTrafficServerVersionGet.en.rst
new file mode 100644
index 0000000..e450743
--- /dev/null
+++ b/doc/reference/api/TSTrafficServerVersionGet.en.rst
@@ -0,0 +1,98 @@
+.. Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information
+   regarding copyright ownership.  The ASF licenses this file
+   to you under the Apache License, Version 2.0 (the
+   "License"); you may not use this file except in compliance
+   with the License.  You may obtain a copy of the License at
+   
+       http://www.apache.org/licenses/LICENSE-2.0
+   
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+.. default-domain:: c
+
+=========================
+TSTrafficServerVersionGet
+=========================
+
+Synopsis
+========
+
+`#include <ts/ts.h>`
+
+.. function:: const char * TSTrafficServerVersionGet(void)
+.. function:: int TSTrafficServerVersionGetMajor(void)
+.. function:: int TSTrafficServerVersionGetMinor(void)
+.. function:: int TSTrafficServerVersionGetPatch(void)
+
+Description
+===========
+
+:func:`TSTrafficServerVersionGet` returns a pointer to a string of characters
+that indicates the Traffic Server release version. This string must not
+be modified.
+
+The other APIs return an integer version number.
+
+Example
+=======
+
+::
+
+    #include <stdio.h>
+    #include <ts/ts.h>
+
+    int
+    check_ts_version()
+    {
+        const char *ts_version = TSTrafficServerVersionGet();
+        int result = 0;
+
+        if (ts_version) {
+            int major_ts_version = 0;
+            int minor_ts_version = 0;
+            int patch_ts_version = 0;
+
+            if (sscanf(ts_version, "%d.%d.%d", &major_ts_version,
+                    &minor_ts_version, &patch_ts_version) != 3) {
+                return 0;
+            }
+
+            /* We need at least Traffic Server 3.0 */
+            if (major_ts_version >= 3) {
+                result = 1;
+            }
+        }
+
+        return result;
+    }
+
+    void
+    TSPluginInit (int argc, const char *argv[])
+    {
+        TSPluginRegistrationInfo info;
+        info.plugin_name = "hello-world";
+        info.vendor_name = "MyCompany";
+        info.support_email = "[email protected]";
+
+        if (TSPluginRegister(TS_SDK_VERSION_3_0 , &info) != TS_SUCCESS) {
+            TSError("Plugin registration failed. 0);
+        }
+
+        if (!check_ts_version()) {
+            TSError("Plugin requires Traffic Server 3.0 or later0);
+            return;
+        }
+
+        TSDebug("debug-hello", "Hello World!0);
+    }
+
+See also
+========
+
+:manpage:`TSAPI(3ts)`

Reply via email to