1
0
Fork 0
arangodb/RestServer/ref-manual.dox

313 lines
9.5 KiB
Plaintext

////////////////////////////////////////////////////////////////////////////////
/// @brief reference manual
///
/// @file
///
/// DISCLAIMER
///
/// Copyright 2012 triagens GmbH, Cologne, Germany
///
/// Licensed 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.
///
/// Copyright holder is triAGENS GmbH, Cologne, Germany
///
/// @author Dr. Frank Celler
/// @author Copyright 2012, triAGENS GmbH, Cologne, Germany
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page RefManual ArangoDB Reference Manual
///
/// @if LATEX
/// <ul>
/// <li>@ref RestDocument</li>
/// <li>@ref RestEdge</li>
/// <li>@ref HttpCursor</li>
/// <li>@ref HttpSimple</li>
/// <li>@ref HttpCollection</li>
/// <li>@ref HttpIndex</li>
/// <li>@ref HttpSystem</li>
/// <li>@ref Glossary</li>
/// </ul>
/// @else
/// <ul>
/// <li>@ref CommandLine
/// @copydetails CommandLineSubTOC
/// </li>
/// <li>@ref JSModules
/// <ul>
/// <li>User Modules
/// <ul>
/// <li>@ref JSModuleGraph</li>
/// </ul>
/// </li>
/// <li>System Modules
/// <ul>
/// <li>@ref JSModuleActions</li>
/// <li>@ref JSModuleConsole</li>
/// <li>@ref JSModuleFs</li>
/// <li>@ref JSModuleInternal</li>
/// </ul>
/// </li>
/// </ul>
/// </li>
/// <li>@ref Aql ArangoDB Query Language (AQL)
/// </li>
/// <li>@ref OTWP
/// <ul>
/// <li>REST Interface
/// <ul>
/// <li>@ref RestDocument</li>
/// <li>@ref RestEdge</li>
/// </ul>
/// </li>
/// <li>Light-Weight HTTP Interface for Queries
/// <ul>
/// <li>@ref HttpCursor</li>
/// <li>@ref HttpSimple</li>
/// </ul>
/// </li>
/// <li>Light-Weight HTTP Interface for Administration
/// <ul>
/// <li>@ref HttpCollection</li>
/// <li>@ref HttpIndex</li>
/// <li>@ref HttpSystem</li>
/// </ul>
/// </li>
/// </ul>
/// </li>
/// <li>Shell Commands
/// <ul>
/// <li>@ref ShellDocument</li>
/// <li>@ref ShellEdge</li>
/// <li>@ref ShellCollection</li>
/// <li>@ref ShellIndex</li>
/// </ul>
/// </li>
/// <li>Indexes
/// @copydetails IndexesTOC
/// </li>
/// <li>Advanced Topics
/// <ul>
/// <li>@ref ArangoErrors
/// </li>
/// <li>@ref DBAdmin
/// <ul>
/// <li>@ref DBAdminDurability
/// </li>
/// </ul>
/// </li>
/// <li>Actions
/// <ul>
/// <li>@ref Actions
/// </li>
/// <li>@ref DefineAction
/// </li>
/// </ul>
/// </li>
/// <li>@ref jsUnity
/// </li>
/// </ul>
/// </li>
/// </ul>
/// @endif
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page CommandLineSubTOC
///
/// <ul>
/// <li>@ref CommandLineArango</li>
/// <li>@ref CommandLineScheduler</li>
/// <li>@ref CommandLineLogging</li>
/// <li>@ref CommandLineRandom</li>
/// </ul>
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page CommandLineTOC
///
/// <ul>
/// <li>@ref CommandLineHelp "help"</li>
/// <li>@ref CommandLineVersion "version"</li>
/// <li>@ref CommandLineConfiguration "configuration"</li>
/// <li>@ref CommandLineDaemon "daemon"</li>
/// <li>@ref CommandLineSupervisor "supervisor"</li>
/// <li>@ref CommandLineUid "uid"</li>
/// <li>@ref CommandLineGid "gid"</li>
/// <li>@ref CommandLinePidFile "pid-file"</li>
/// </ul>
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page CommandLine Command-Line Options
///
/// <hr>
/// @copydoc CommandLineTOC
/// <hr>
///
/// @section GeneralOptions General Options
///////////////////////////////////////////
///
/// @anchor CommandLineHelp
///////////////////////////
/// @copydetails triagens::rest::ApplicationServerImpl::options
/// <hr>
///
/// @anchor CommandLineVersion
//////////////////////////////
/// @copydetails triagens::rest::ApplicationServerImpl::version
/// <hr>
///
/// @anchor CommandLineConfiguration
////////////////////////////////////
/// @copydetails triagens::rest::ApplicationServerImpl::initFile
/// <hr>
///
/// @anchor CommandLineDaemon
/////////////////////////////
/// @CMDOPT{--daemon}
///
/// Runs the server as a daemon (as a background process). This parameter can
/// only be set if the pid (process id) file is specified. That is, unless a
/// value to the parameter pid-file is given, then the server will report an
/// error and exit.
///
/// <hr>
///
/// @anchor CommandLineSupervisor
/////////////////////////////////
/// @CMDOPT{--supervisor}
///
/// Executes the server in supervisor mode. In the event that the server
/// unexpectedly terminates due to an internal error, the supervisor will
/// automatically restart the server. Setting this flag automatically implies
/// that the server will run as a daemon. Note that, as with the daemon flag,
/// this flag requires that the pid-file parameter will set.
///
/// <hr>
///
/// @anchor CommandLineUid
//////////////////////////
/// @copydetails triagens::rest::ApplicationServerImpl::uid
/// <hr>
///
/// @anchor CommandLineGid
//////////////////////////
/// @copydetails triagens::rest::ApplicationServerImpl::gid
/// <hr>
///
/// @anchor CommandLinePidFile
//////////////////////////////
/// @copydetails triagens::rest::AnyServer::_pidFile
/// <hr>
///
/// Next steps:
///////////////
///
/// @copydetails CommandLineSubTOC
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page CommandLineArangoTOC
///
/// <ul>
/// <li>@ref CommandLineArangoHttpPort "server.http-port"</li>
/// <li>@ref CommandLineArangoAdminPort "server.admin-port"</li>
/// <li>@ref CommandLineArangoDirectory "database.directory"</li>
/// <li>@ref CommandLineArangoMaximalJournalSize "database.maximal-journal-size"</li>
/// <li>@ref CommandLineArangoRemoveOnDrop "database.remove-on-drop"</li>
/// </ul>
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page CommandLineArango Command-Line Options for the ArangoDB
///
/// <hr>
/// @copydoc CommandLineArangoTOC
/// <hr>
///
/// @anchor CommandLineArangoHttpPort
/// @copydetails triagens::arango::ArangoServer::_httpPort
/// <hr>
///
/// @anchor CommandLineArangoAdminPort
/// @copydetails triagens::arango::ArangoServer::_adminPort
/// <hr>
///
/// @anchor CommandLineArangoDirectory
/// @copydetails triagens::arango::ArangoServer::_databasePath
/// <hr>
///
/// @anchor CommandLineArangoMaximalJournalSize
/// @copydetails triagens::arango::ArangoServer::_defaultMaximalSize
/// <hr>
///
/// @anchor CommandLineArangoRemoveOnDrop
/// @copydetails triagens::arango::ArangoServer::_removeOnDrop
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page DBAdminTOC
///
/// <ul>
/// <li>@ref DBAdminDurability
/// </li>
/// </ul>
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page DBAdmin Database Administration
///
/// <hr>
/// @copydetails DBAdminTOC
/// <hr>
///
/// @section DBAdminDurability Durability
/////////////////////////////////////////
///
/// @subsection DBAdminDurability1 Mostly Memory/Durability
///////////////////////////////////////////////////////////
///
/// Database documents are stored in the memory-memory-mapped files are used to
/// store them. The operating system has the advantageous option to decide
/// swapping sparsely used areas out of the main memory. Per default, these
/// memory-mapped files are synced frequently - advantageously storing all
/// documents securely at once (durability).
///
/// @subsection DBAdminDurability2 AppendOnly/MVCC
//////////////////////////////////////////////////
///
/// Instead of overwriting existing documents, a completely new version of the
/// document is generated. The two benefits are:
///
/// - Objects can be stored coherently and compactly in the main memory.
/// - Objects are preserved-isolated writing and reading transactions allow
/// accessing these objects for parallel operations.
///
/// The system collects obsolete versions as garbage, recognizing them as
/// forsaken. Garbage collection is asynchronous and runs parallel to other
/// processes.
///
/// @subsection DBAdminDurability3 Configuration
////////////////////////////////////////////////
///
/// @copydetails JS_PropertiesVocbaseCol
////////////////////////////////////////////////////////////////////////////////
// Local Variables:
// mode: c++
// mode: outline-minor
// outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|// --SECTION--\\|/// @page\\|/// @\\}\\)"
// End: