Skip to content

Conversation

@kaspermarkus
Copy link
Member

@kaspermarkuskaspermarkus commented Mar 20, 2017

This is a pull request covering the semi-advanced MM functionality of GPII-1230 and GPII-1235. It also contains the relevant parts of Joseph's GPII-442 work

See also: GPII/universal#507

Fixed code blocks to display with newlines.
Firmed up the c++ code for the 'nodeprocesse' add-on: simply a bridge to gnome/linux library to generate a list of processes and information about each. Added numerous unit tests for the above, where most of the tests use an object that provides an API for processes. Next step: carve out the relevant functions into a non-test object that provides the same API.
Using nodejs path.basename() for one of the tests. Linting nodeprocesses_test.js
First checkin of processes object for querying running processes, checking their state, and reporting changes.
Modified processes.js to use full gpii.processes name. Added procDemo.js to show how to detect a change in state for orca.
Added ability to start with a non-running process, and detect when it launches.
Whitespace cleanup and other tidying.
Added ability to continuously check the state of a process and report when it changes from "running" to "not running" OR from "not running" to "running".
First pass at integrate node's event systme to fire an event when the process switches between running and not running, and vice versa.
Renamed gpii.processes.refreshPrcoInfo() to gpii.processes.updateProcInfo(), and made use of it.
Simplify the interface for setting up monitoring a process and responding to events.
Moved most of the unit tests that were in nodeprocesses_test.js for the nodeprocesses add-on to a processes_test.js to test the new processes.js. The latter contains the machinery for inspecting processes, and, specifically, their state.
Replaced Nodejs event emitter object with fluid event firer. Tweaked some of the function names.
Reconfigured the processes.js to declare fluid.defaults for and evented component, and updated the demo as appropriate.
Added "onStateChange" event to notify of any change in a process' state, and functions to tap into this event. Also, simplified hasStateChanged(), monitorStateChange() functions.
Added invokers findSolutionsByCommands() and findSolutionsByPids() that take lists of command names, or process ids, respectively, and search the live process list to find and return a list of process information structures that match.
Renamed the main folder from "processes" to "processReporter".
- renamed "processes.js" to "processReporter.js" - renamed "processes_test.js" to "processReporter_tests.js" - renamed "procDemo.js" to "processReporterDemo.js" - modified various names and namespaces to use "processReporter".
Updated the readme file to reflect the latest changes. Also tidied the code.
Added rationale for use of "command" property as a way of identifying a process.
Added the "shell:compileProcesses" and "shell:cleanProcesses" tasks to the main build and clean tasks.
Merge fire ball changes from upstream.
Modified test for path argument of a process to use the full path. Fixed test for launching and quiting Orca (via gsettings) to test the quit aspect only if Orca started in the first place.
Conflicts: gpii/node_modules/alsa/alsa_bridge.js
klownand others added 24 commits June 2, 2016 11:04
Merging changes to process reporter work due to Nan port (GPII-1526) and GPII-1318.
Replaced 'jqUnit' with 'node-jqunit'.
Code style changes to follow the GPII C++ styles.
Modified the "dependencies" block to point to tip of my GPII-442 branch in universal.
Modified vars.yml to include libgtop2-devel package for compiling the nodeprocesses.cc node add-on.
Modified the "dependencies" block to point to tip of GPII-442 branch in universal.
Removed orca start/stop test since it's really an integration test. Fixed race condition on the test case involving a 'grep' command.
Point to the processes bridge component in universal.
Modified the "dependencies" block to point to tip of GPII-442 branch in universal.
Added unit tests for the processes bridge functions that track changes in the state of the process (e.g., changing from "running" to "no such process").
Modified the "dependencies" block to point to tip of GPII-442 branch in universal.
Modified the "dependencies" block to point to tip of GPII-442 branch in universal.
Modified the "dependencies" block: - in main package.json to point always to tip of GPII-442 branch in universal. - modifiled process reporter to depend on at least node 4.2.18.
Reduced the functionality of the processesBridge component to only find solutions/processes, but no longer track their state. Moved the state tracking code to new branch GPII-442-trackState: (https://github.com/klown/linux/tree/GPII-442-trackState).
Refactored the dual functionality of process finding and settings checking implemented in find() into a find() and a checkSetting().
Modified checking the setting to match the required value of the setting.
@gpii-bot
Copy link

CI job passed.

@kaspermarkuskaspermarkus changed the title GPII-1230, GPII-1235: Preliminary pullGPII-1230, GPII-1235, GPII-442: Running application detection and support for more advanced MMApr 20, 2017
@gpii-bot
Copy link

CI job passed.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@kaspermarkus@gpii-bot@klown