Changes between Version 4 and Version 5 of BossaImplementation


Ignore:
Timestamp:
Oct 18, 2007, 2:57:35 PM (17 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BossaImplementation

    v4 v5  
    55First, [ServerIntro set up a BOINC server] and [MakeProject create a project].
    66You'll need PHP 5.2 or later (for JSON functions).
    7 Say your project is called 'test_project', your BOINC source directory is '~/boinc',
    8 and your BOINC projects directory is '~/projects'.
     7Say your project is called '''test_project''', your BOINC source directory is '''~/boinc''',
     8and your BOINC projects directory is '''~/projects'''.
    99
    1010Create Bossa's database tables as follows:
     
    2121}}}
    2222
    23 You can edit bossa_setup_example.php to change the application name
     23bossa_setup_example.php contains:
     24{{{
     25$ba = new BossaApp();
     26$ba->name = 'bossa_test';
     27$ba->user_friendly_name = 'Simple pattern recognition';
     28$ba->start_url = 'bossa_example.php';
     29
     30if ($ba->insert($ba)) {
     31    echo "Added application '$ba->name'\n";
     32} else {
     33    echo "Couldn't add '$ba->name': ", mysql_error(), "\n";
     34}
     35}}}
     36You can edit this to change the application name
    2437and front-end script name, if you like.
    2538
    26 == The Bossa database tables ==
     39== Database tables and PHP structures ==
    2740
    2841Until Bossa has good web-based administration tools,
    29 you'll need to examine and modify the MySQL database directly,
    30 using the command-line tool 'mysql',
     42you'll need to examine and modify its MySQL database directly,
     43using the command-line tool 'mysql'
    3144or a web-based interface such as [http://www.phpmyadmin.net/ phpMyAdmin].
    3245
    33 The Bossa tables are as follows:
     46The database tables are as follows:
    3447
    35 bossa_app:
     48'''bossa_app''':
    3649|| field name || type || meaning ||
    3750|| id || integer || row ID, assigned by MySQL ||
     
    4457|| info || text || information (typically encoded in JSON) such as the criteria for which users to issue jobs to ||
    4558
    46 bossa_job:
     59'''bossa_job''':
    4760|| field name || type || meaning ||
    4861|| id || integer || row ID, assigned by MySQL ||
     
    5972|| nsuccess_needed || integer || required number of successfully completed instances ||
    6073
    61 bossa_job_inst:
     74'''bossa_job_inst''':
    6275|| field name || type || meaning ||
    6376|| id || integer || row ID, assigned by MySQL ||
     
    6881|| info || text || outcome info (usually JSON-encoded) ||
    6982
    70 bossa_app_user:
     83'''bossa_app_user''':
    7184|| app_id || integer || ID of bossa_app ||
    7285|| user_id || integer || ID of user ||
    7386|| info || text || description of the user's skill or ranking at a given app, typically JSON-encoded ||
    7487
     88The Bossa PHP code uses the following classes:
     89
     90 '''BossaApp, BossaJob, BossaJobInst'''::
     91  These correspond to the above tables, and have fields corresponding to each database field.  They offer various functions to insert, look up, and modify database rows.
     92 '''Bossa''':
     93  Various utility functions.
     94
    7595== Front-end scripts ==
    7696