aboutsummaryrefslogtreecommitdiffstats
path: root/4a-hal/4a-hal-manager/4a-hal-manager-events.h
blob: 30034cfa3a40d6fa4c3643c11d7a2dc9133b5240 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/*
 * Copyright (C) 2018 "IoT.bzh"
 * Author Jonathan Aillet <jonathan.aillet@iot.bzh>
 *
 * 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.
 */

#ifndef _HALMGR_EVENTS_INCLUDE_
#define _HALMGR_EVENTS_INCLUDE_

#include <stdio.h>

#include <afb-definitions.h>

// TBD JAI: declare events handlers functions

#endif /* _HALMGR_EVENTS_INCLUDE_ */
lor: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */ }
/* 
 * Copyright (C) 2015 "IoT.bzh"
 * Author "Fulup Ar Foll"
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/* ----------------------------------------------------------------------
 *   This module simulate Application Framework Binder
 *   
 *   /api/afm-main/runnables  // no params
 *   /api/afm-main/details    &id="xxxx"
 *   /api/afm-main/start      &id="xxxx"
 *   /api/afm-main/terminate  &runid="xxxx"
 *   /api/afm-main/stop       &runid="xxxx"
 *   /api/afm-main/continue   &runid="xxxx"
 *   /api/afm-main/runners    // no params
 *   /api/afm-main/state      &runid="xxxx"
 * ----------------------------------------------------------------------*/

 
function NewApi(handle, prefix) {
    var scope=this; // I hate JavaScript
    scope.connected=false;
    
    // Simulate Client Context Session Creation
    handle.app.get (prefix +'/runnables', function (req, res) {
        var Response= { jtype: "afb-reply",
                        request: { "prefix": "afm-main", "api": "runnables", "uuid": "e4ef5e66-xxxx", "token": "123456789-xxxxx", "status": "processed" },
                        response: {runnables: [ 
                            {id: "webapps-rabbit@0.0", version: "0.0.8", name: "Rabbit", description: "Fun grid game where the rabbit finds and eats the carrots dodging the foxes.", shortname: "", author: "Todd Brandt <todd.e.brandt@intel.com>" },
                            {id: "webapps-annex@0.0", version: "0.0.10", name: "Annex", description: "Reversi/Othello", shortname: "", author: "Todd Brandt <todd.e.brandt@intel.com>" },
                            {id: "webapps-memory-match@1.1", version: "1.1.7", name: "MemoryMatch", description: "Memory match", shortname: "", author: "Todd Brandt <todd.e.brandt@intel.com>"  }
                       ]}};
                   
                   /* "jtype":"afb-reply","request":{"prefix":"afm-main","api":"runnables","status":"processed"},"response":{"runnables":[{"id":"webapps-annex@0.0","version":"0.0.10","width":0,"height":0,"name":"Annex","description":"Reversi/Othello","shortname":"","author":"Todd Brandt <todd.e.brandt@intel.com>"},{"id":"webapps-rabbit@0.0","version":"0.0.8","width":0,"height":0,"name":"Rabbit","description":"Fun grid game where the rabbit finds and eats the carrots dodging the foxes.","shortname":"","author":"Todd Brandt <todd.e.brandt@intel.com>"}]}}*/
                    
        res.send(Response);
    });
    
    handle.app.get (prefix +'/detail', function (req, res) {
        var apps = { 
                    "webapps-rabbit@0.0": {id: "webapps-rabbit@0.0", version: "0.0.8", name: "Rabbit", description: "Fun grid game where the rabbit finds and eats the carrots dodging the foxes.", shortname: "", author: "Todd Brandt <todd.e.brandt@intel.com>" },
                    "webapps-annex@0.0": {id: "webapps-annex@0.0", version: "0.0.10", name: "Annex", description: "Reversi/Othello", shortname: "", author: "Todd Brandt <todd.e.brandt@intel.com>" },
                    "webapps-memory-match@1.1": {id: "webapps-memory-match@1.1", version: "1.1.7", name: "MemoryMatch", description: "Memory match", shortname: "", author: "Todd Brandt <todd.e.brandt@intel.com>"  }
                    };
                    
        var Response= { jtype: "afb-reply",
                        request: { "prefix": "afm-main", "api": "detail", "uuid": "e4ef5e66-xxxx", "token": "123456789-xxxxx", "status": "processed" },
                        response: apps[req.query.id]
                       };
                   
                   /* "jtype":"afb-reply","request":{"prefix":"afm-main","api":"runnables","status":"processed"},"response":{"runnables":[{"id":"webapps-annex@0.0","version":"0.0.10","width":0,"height":0,"name":"Annex","description":"Reversi/Othello","shortname":"","author":"Todd Brandt <todd.e.brandt@intel.com>"},{"id":"webapps-rabbit@0.0","version":"0.0.8","width":0,"height":0,"name":"Rabbit","description":"Fun grid game where the rabbit finds and eats the carrots dodging the foxes.","shortname":"","author":"Todd Brandt <todd.e.brandt@intel.com>"}]}}*/
                    
        res.send(Response);
    });
    
    handle.app.get (prefix +'/start', function (req, res) {
        var apps = { "runid": 2, "uri": "/opa/images/avatars/tux-bzh.png"}; 
                    
        var Response= { jtype: "afb-reply",
                        request: { "prefix": "afm-main", "api": "start", "uuid": "e4ef5e66-xxxx", "token": "123456789-xxxxx", "status": "processed" },
                        response: apps
                       };
                   
                   /* "jtype":"afb-reply","request":{"prefix":"afm-main","api":"runnables","status":"processed"},"response":{"runnables":[{"id":"webapps-annex@0.0","version":"0.0.10","width":0,"height":0,"name":"Annex","description":"Reversi/Othello","shortname":"","author":"Todd Brandt <todd.e.brandt@intel.com>"},{"id":"webapps-rabbit@0.0","version":"0.0.8","width":0,"height":0,"name":"Rabbit","description":"Fun grid game where the rabbit finds and eats the carrots dodging the foxes.","shortname":"","author":"Todd Brandt <todd.e.brandt@intel.com>"}]}}*/
                    
        res.send(Response);
    });
    
    handle.app.get (prefix +'/terminate', function (req, res) {
        var apps = {}; 
                    
        var Response= { jtype: "afb-reply",
                        request: { "prefix": "afm-main", "api": "terminate", "uuid": "e4ef5e66-xxxx", "token": "123456789-xxxxx", "status": "processed" },
                        response: apps
                       };
                   
                   /* "jtype":"afb-reply","request":{"prefix":"afm-main","api":"runnables","status":"processed"},"response":{"runnables":[{"id":"webapps-annex@0.0","version":"0.0.10","width":0,"height":0,"name":"Annex","description":"Reversi/Othello","shortname":"","author":"Todd Brandt <todd.e.brandt@intel.com>"},{"id":"webapps-rabbit@0.0","version":"0.0.8","width":0,"height":0,"name":"Rabbit","description":"Fun grid game where the rabbit finds and eats the carrots dodging the foxes.","shortname":"","author":"Todd Brandt <todd.e.brandt@intel.com>"}]}}*/
                    
        res.send(Response);
    });
}

// Export Class
module.exports = NewApi;