// file : brep/options.cli -*- C++ -*- // copyright : Copyright (c) 2014-2015 Code Synthesis Ltd // license : MIT; see accompanying LICENSE file include ; include ; namespace brep { // Web module configuration options. // namespace options { class module { uint16_t verb; dir_path root; }; class db { string db-host = "localhost"; uint16_t db-port = 5432; }; class package_search: module, db { uint16_t results-on-page = 10; uint16_t pages-in-pager = 5; }; class package_details: module, db { uint16_t results-on-page = 10; uint16_t pages-in-pager = 5; uint16_t description-length = 500; // ~ 80 chars x 6 lines. }; class package_version_details: module, db { uint16_t description-length = 500; // ~ 80 chars x 6 lines. uint16_t changes-length = 5000; // ~ 80 chars x 60 lines. }; class repository_details: module, db { }; } // Web module HTTP request parameters. // namespace params { // Use parameters long names in the C++ code, short aliases (if present) // in HTTP URL. // class package_search { // Display package search result list starting from this page. // uint16_t page | p; // Package search criteria. // string query | q; }; class package_details { // Display package version search result list starting from this page. // uint16_t page | p; // Package version search criteria. // string query | q; // Page form. // page_form form | f = page_form::brief; }; class package_version_details { // Page form. // page_form form | f = page_form::brief; }; class repository_details { // No parameters so far. // }; } }