366 }; 367 368 class JMXStopRemoteDCmd : public DCmd { 369 public: 370 JMXStopRemoteDCmd(outputStream *output, bool heap_allocated) : 371 DCmd(output, heap_allocated) { 372 // Do Nothing 373 } 374 375 static const char *name() { 376 return "ManagementAgent.stop"; 377 } 378 379 static const char *description() { 380 return "Stop remote management agent."; 381 } 382 383 virtual void execute(DCmdSource source, TRAPS); 384 }; 385 386 #endif // SHARE_VM_SERVICES_DIAGNOSTICCOMMAND_HPP | 366 }; 367 368 class JMXStopRemoteDCmd : public DCmd { 369 public: 370 JMXStopRemoteDCmd(outputStream *output, bool heap_allocated) : 371 DCmd(output, heap_allocated) { 372 // Do Nothing 373 } 374 375 static const char *name() { 376 return "ManagementAgent.stop"; 377 } 378 379 static const char *description() { 380 return "Stop remote management agent."; 381 } 382 383 virtual void execute(DCmdSource source, TRAPS); 384 }; 385 386 class RotateGCLogDCmd : public DCmd { 387 public: 388 RotateGCLogDCmd(outputStream* output, bool heap) : DCmd(output, heap) {} 389 static const char* name() { return "GC.rotate_log"; } 390 static const char* description() { 391 return "Force the GC log file to be rotated."; 392 } 393 static const char* impact() { return "Low"; } 394 virtual void execute(DCmdSource source, TRAPS); 395 static int num_arguments() { return 0; } 396 static const JavaPermission permission() { 397 JavaPermission p = {"java.lang.management.ManagementPermission", 398 "control", NULL}; 399 return p; 400 } 401 }; 402 403 #endif // SHARE_VM_SERVICES_DIAGNOSTICCOMMAND_HPP |