view mock-api/endpoints/jvm-byteman.endpoint.js @ 222:0e10eacbeeb7

Add byteman subview to jvm-info Reviewed-by: jerboaa Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2017-September/025146.html
author Andrew Azores <aazores@redhat.com>
date Fri, 22 Sep 2017 07:51:59 -0400
parents
children fc747d2c2f6a
line wrap: on
line source

function jvmByteman (server) {
  // web-gateway
  var _ = require('lodash');
  server.init('jvmByteman');
  server.app.get('/jvm-byteman/0.0.1/status/jvms/:jvmId', function (req, res) {
    server.logRequest('jvm-byteman', req);

    var jvmId = req.params.jvmId;

    var response = [];
    var data = {
      agentId: 'foo-agentId',
      jvmId: jvmId,
      timeStamp: { $numberLong: Date.now().toString() },
      rule: '',
      listenPort: 9999
    };
    response.push(data);

    res.setHeader('Content-Type', 'application/json');
    res.send(JSON.stringify(
      {
        response: response
      }
    ));
  });

  // command channel
  server.init('byteman-command');
  server.app.ws('/commands/v1/actions/byteman/systems/:systemId/agents/:agentId/jvms/:jvmId/sequence/:seqId', function (ws, req) {
    server.logRequest('byteman-command', req);
    ws.on('message', function (msg) {
      ws.send(JSON.stringify(
        {
          payload: {
            respType: 'OK'
          }
        }
      ));
    });
  });
}

module.exports = jvmByteman;