1 23 24 29 30 package com.sun.cli.jmx.cmd; 31 32 import java.util.ArrayList ; 33 import java.util.Iterator ; 34 35 import com.sun.cli.util.stringifier.IteratorStringifier; 36 37 import com.sun.cli.jmx.spi.JMXConnectorProvider; 38 39 public class SetenvCmd extends JMXCmd 40 { 41 public 42 SetenvCmd( final CmdEnv env ) 43 { 44 super( env ); 45 } 46 47 int 48 getNumRequiredOperands() 49 { 50 return( 0 ); 51 } 52 53 54 String  55 getUsage() 56 { 57 return( CmdStrings.SETENV_HELP.toString() ); 58 } 60 61 public final static String NAME = "setenv"; 62 63 public static String [] 64 getNames( ) 65 { 66 return( new String [] { NAME } ); 67 } 68 69 70 static private final String OPTIONS_INFO = ""; 71 72 73 ArgHelper.OptionsInfo 74 getOptionInfo() 75 throws ArgHelper.IllegalOptionException 76 { 77 return( new ArgHelperOptionsInfo( OPTIONS_INFO ) ); 78 } 79 80 81 void 82 displayEnv() 83 { 84 final Iterator iter = getEnvKeys().iterator(); 85 86 while ( iter.hasNext() ) 87 { 88 final String name = (String )iter.next(); 89 90 final Object value = envGet( name ); 91 92 if ( value instanceof String ) 93 { 94 println( name + "=" + value ); 95 } 96 } 97 } 98 99 public final static char DELIM = '='; 100 101 void 102 executeInternal() 103 throws Exception  104 { 105 final String [] operands = getOperands(); 106 107 if ( operands.length == 0 ) 108 { 109 displayEnv(); 110 } 111 else if ( operands.length == 1 ) 112 { 113 final String oper = operands[ 0 ]; 114 final int delimIndex = oper.indexOf( DELIM ); 115 116 117 if ( delimIndex > 0 ) 118 { 119 final String name = oper.substring( 0, delimIndex ); 120 final String value = oper.substring( delimIndex + 1, oper.length() ); 121 122 envPut( name, value, true ); 123 } 124 else 125 { 126 if ( envGet( oper ) != null ) 127 { 128 envRemove( oper ); 129 println( "Variable " + oper + " removed." ); 130 } 131 else 132 { 133 println( "Variable " + oper + " does not exist." ); 134 } 135 } 136 } 137 else 138 { 139 printUsage(); 140 } 141 } 142 } 143 144 145 146 147 148 149 | Popular Tags |