[DAEMON-113] Genymotion Plugin: Expose Genymotion and VirtualBox info and watch for changes
| GitHub Issue | n/a | 
|---|---|
| Type | New Feature | 
| Priority | Critical | 
| Status | Resolved | 
| Resolution | Fixed | 
| Resolution Date | 2017-11-15T09:59:41.000+0000 | 
| Affected Version/s | n/a | 
| Fix Version/s | Appc Daemon 1.0.0 | 
| Components | appcd-plugin-genymotion | 
| Labels | n/a | 
| Reporter | Chris Barber | 
| Assignee | Ewan Harris | 
| Created | 2017-10-26T22:13:54.000+0000 | 
| Updated | 2017-11-15T09:59:41.000+0000 | 
Description
	This ticket encompasses the exposing of Genymotion and VirtualBox info to the daemon and wiring up the watching for changes.
We need a new plugin called 
appcd-plugin-genymotion. The service endpoint is /genymotion/latest/info. It returns the VirtualBox info and the Genymotion emulators.
{
    "emulators": [
        {
            "name": "<NAME>",
            "guid": "<GUID>",
            "abi": "x86",
            "ipaddress": "<IP>",
            "googleApis": null, // null means maybe since we don't know for sure unless the emulator is running
            "version": null
        }
    ],
    "executables": {
        "genymotion": "/path/to/genymotion_executable",
        "player": "/path/to/player_executable",
    },
    "home": "/path/to/.genymotion",
    "path: "/path/to/genymotion_install_dir",
    "virtualbox": {
        "executables": {
            "vboxmanage": "/path/to/vboxmanage"
        },
        "version": "x.y.z"
    }
}
src/index.js - Creates the Genymotion info service and wires it up to the dispatcher
* src/genymotion-info-service.js - Exports a class that extends the DataServiceDispatcher and wires up all the watch logic.
* src/genymotion.js - Detects Genymotion info.
* src/virtualbox.js - Detects VirtualBox info.
https://github.com/appcelerator/appc-daemon/pull/121