Mercurial > hg > graal-compiler
comparison src/share/vm/services/diagnosticCommand.cpp @ 7979:8f696cf1a0fb
8002048: Protocol to discovery of manageable Java processes on a network
Summary: Introduce a protocol to discover manageble Java instances across a network subnet, JDP
Reviewed-by: sla, dfuchs
author | dsamersoff |
---|---|
date | Sun, 03 Feb 2013 22:28:08 +0400 |
parents | 16fb9f942703 |
children | 3c9bc17b9403 |
comparison
equal
deleted
inserted
replaced
7978:a7f9a1195d86 | 7979:8f696cf1a0fb |
---|---|
462 ("jmxremote.ssl.need.client.auth", | 462 ("jmxremote.ssl.need.client.auth", |
463 "set com.sun.management.jmxremote.need.client.auth", "STRING", false), | 463 "set com.sun.management.jmxremote.need.client.auth", "STRING", false), |
464 | 464 |
465 _jmxremote_ssl_config_file | 465 _jmxremote_ssl_config_file |
466 ("jmxremote.ssl.config.file", | 466 ("jmxremote.ssl.config.file", |
467 "set com.sun.management.jmxremote.ssl_config_file", "STRING", false) | 467 "set com.sun.management.jmxremote.ssl_config_file", "STRING", false), |
468 | |
469 // JDP Protocol support | |
470 _jmxremote_autodiscovery | |
471 ("jmxremote.autodiscovery", | |
472 "set com.sun.management.jmxremote.autodiscovery", "STRING", false), | |
473 | |
474 _jdp_port | |
475 ("jdp.port", | |
476 "set com.sun.management.jdp.port", "INT", false), | |
477 | |
478 _jdp_address | |
479 ("jdp.address", | |
480 "set com.sun.management.jdp.address", "STRING", false), | |
481 | |
482 _jdp_source_addr | |
483 ("jdp.source_addr", | |
484 "set com.sun.management.jdp.source_addr", "STRING", false), | |
485 | |
486 _jdp_ttl | |
487 ("jdp.ttl", | |
488 "set com.sun.management.jdp.ttl", "INT", false), | |
489 | |
490 _jdp_pause | |
491 ("jdp.pause", | |
492 "set com.sun.management.jdp.pause", "INT", false) | |
468 | 493 |
469 { | 494 { |
470 _dcmdparser.add_dcmd_option(&_config_file); | 495 _dcmdparser.add_dcmd_option(&_config_file); |
471 _dcmdparser.add_dcmd_option(&_jmxremote_port); | 496 _dcmdparser.add_dcmd_option(&_jmxremote_port); |
472 _dcmdparser.add_dcmd_option(&_jmxremote_rmi_port); | 497 _dcmdparser.add_dcmd_option(&_jmxremote_rmi_port); |
478 _dcmdparser.add_dcmd_option(&_jmxremote_login_config); | 503 _dcmdparser.add_dcmd_option(&_jmxremote_login_config); |
479 _dcmdparser.add_dcmd_option(&_jmxremote_ssl_enabled_cipher_suites); | 504 _dcmdparser.add_dcmd_option(&_jmxremote_ssl_enabled_cipher_suites); |
480 _dcmdparser.add_dcmd_option(&_jmxremote_ssl_enabled_protocols); | 505 _dcmdparser.add_dcmd_option(&_jmxremote_ssl_enabled_protocols); |
481 _dcmdparser.add_dcmd_option(&_jmxremote_ssl_need_client_auth); | 506 _dcmdparser.add_dcmd_option(&_jmxremote_ssl_need_client_auth); |
482 _dcmdparser.add_dcmd_option(&_jmxremote_ssl_config_file); | 507 _dcmdparser.add_dcmd_option(&_jmxremote_ssl_config_file); |
508 _dcmdparser.add_dcmd_option(&_jmxremote_autodiscovery); | |
509 _dcmdparser.add_dcmd_option(&_jdp_port); | |
510 _dcmdparser.add_dcmd_option(&_jdp_address); | |
511 _dcmdparser.add_dcmd_option(&_jdp_source_addr); | |
512 _dcmdparser.add_dcmd_option(&_jdp_ttl); | |
513 _dcmdparser.add_dcmd_option(&_jdp_pause); | |
483 } | 514 } |
484 | 515 |
485 | 516 |
486 int JMXStartRemoteDCmd::num_arguments() { | 517 int JMXStartRemoteDCmd::num_arguments() { |
487 ResourceMark rm; | 518 ResourceMark rm; |
491 return dcmd->_dcmdparser.num_arguments(); | 522 return dcmd->_dcmdparser.num_arguments(); |
492 } else { | 523 } else { |
493 return 0; | 524 return 0; |
494 } | 525 } |
495 } | 526 } |
496 | |
497 | 527 |
498 void JMXStartRemoteDCmd::execute(TRAPS) { | 528 void JMXStartRemoteDCmd::execute(TRAPS) { |
499 ResourceMark rm(THREAD); | 529 ResourceMark rm(THREAD); |
500 HandleMark hm(THREAD); | 530 HandleMark hm(THREAD); |
501 | 531 |
522 // to jcmd override properties with the same name set by | 552 // to jcmd override properties with the same name set by |
523 // command line with -D or by managmenent.properties | 553 // command line with -D or by managmenent.properties |
524 // file. | 554 // file. |
525 #define PUT_OPTION(a) \ | 555 #define PUT_OPTION(a) \ |
526 if ( (a).is_set() ){ \ | 556 if ( (a).is_set() ){ \ |
527 options.print("%scom.sun.management.%s=%s", comma, (a).name(), (a).value()); \ | 557 options.print(\ |
558 ( *((a).type()) == 'I' ) ? "%scom.sun.management.%s=%d" : "%scom.sun.management.%s=%s",\ | |
559 comma, (a).name(), (a).value()); \ | |
528 comma[0] = ','; \ | 560 comma[0] = ','; \ |
529 } | 561 } |
530 | 562 |
531 PUT_OPTION(_config_file); | 563 PUT_OPTION(_config_file); |
532 PUT_OPTION(_jmxremote_port); | 564 PUT_OPTION(_jmxremote_port); |
539 PUT_OPTION(_jmxremote_login_config); | 571 PUT_OPTION(_jmxremote_login_config); |
540 PUT_OPTION(_jmxremote_ssl_enabled_cipher_suites); | 572 PUT_OPTION(_jmxremote_ssl_enabled_cipher_suites); |
541 PUT_OPTION(_jmxremote_ssl_enabled_protocols); | 573 PUT_OPTION(_jmxremote_ssl_enabled_protocols); |
542 PUT_OPTION(_jmxremote_ssl_need_client_auth); | 574 PUT_OPTION(_jmxremote_ssl_need_client_auth); |
543 PUT_OPTION(_jmxremote_ssl_config_file); | 575 PUT_OPTION(_jmxremote_ssl_config_file); |
576 PUT_OPTION(_jmxremote_autodiscovery); | |
577 PUT_OPTION(_jdp_port); | |
578 PUT_OPTION(_jdp_address); | |
579 PUT_OPTION(_jdp_source_addr); | |
580 PUT_OPTION(_jdp_ttl); | |
581 PUT_OPTION(_jdp_pause); | |
544 | 582 |
545 #undef PUT_OPTION | 583 #undef PUT_OPTION |
546 | 584 |
547 Handle str = java_lang_String::create_from_str(options.as_string(), CHECK); | 585 Handle str = java_lang_String::create_from_str(options.as_string(), CHECK); |
548 JavaCalls::call_static(&result, ik, vmSymbols::startRemoteAgent_name(), vmSymbols::string_void_signature(), str, CHECK); | 586 JavaCalls::call_static(&result, ik, vmSymbols::startRemoteAgent_name(), vmSymbols::string_void_signature(), str, CHECK); |