1 23 24 29 30 package com.sun.cli.jmx.cmd; 31 32 import com.sun.cli.jmx.support.CLISupportMBeanProxy; 33 34 37 public class CreateCmd extends JMXCmd 38 { 39 public 40 CreateCmd( final CmdEnv env ) 41 { 42 super( env ); 43 } 44 45 int 46 getNumRequiredOperands() 47 { 48 return( 1 ); 49 } 50 51 public String  52 getUsage() 53 { 54 return( CmdStrings.CREATE_HELP.toString() ); 55 } 56 57 static private final String OPTIONS_INFO ="class,1 args,1"; 58 59 ArgHelper.OptionsInfo 60 getOptionInfo() 61 throws ArgHelper.IllegalOptionException 62 { 63 return( new ArgHelperOptionsInfo( OPTIONS_INFO ) ); 64 } 65 66 67 68 final static String NAME = "create"; 69 final static String NAME_ABBREV = "cr"; 70 71 public static String [] 72 getNames( ) 73 { 74 return( new String [] { NAME, NAME_ABBREV } ); 75 } 76 77 void 78 executeInternal() 79 throws Exception  80 { 81 final String [] operands = getOperands(); 82 83 if ( operands.length != 1 ) 84 { 85 final String msg = "Exactly one name must be specified"; 86 printError( msg ); 87 throw new IllegalArgumentException ( msg ); 88 } 89 final String name = operands[ operands.length - 1 ]; 90 91 final String theClass = getString( "class", null ); 92 if ( theClass == null || theClass.length() == 0 ) 93 { 94 final String msg = "Illegal classname"; 95 printError( msg ); 96 throw new IllegalArgumentException ( msg ); 97 } 98 99 final String args = getString( "args", null ); 100 101 try 102 { 103 establishProxy(); 104 getProxy().mbeanCreate( name, theClass, args ); 105 } 106 catch( Exception e ) 107 { 108 dm( e.getMessage() ); 109 e.printStackTrace(); 110 } 111 } 112 } 113 114 115 116 117 118 119 | Popular Tags |