1 23 24 package com.sun.enterprise.admin.server.core.mbean.config; 25 26 import javax.management.*; 28 29 import com.sun.enterprise.config.ConfigException; 31 import com.sun.enterprise.config.serverbeans.ServerTags; 32 import com.sun.enterprise.config.serverbeans.ServerXPathHelper; 33 import com.sun.enterprise.config.serverbeans.IiopListener; 34 import com.sun.enterprise.config.serverbeans.Ssl; 35 36 37 import com.sun.enterprise.admin.common.ObjectNames; 39 import com.sun.enterprise.admin.common.exception.MBeanConfigException; 40 import com.sun.enterprise.admin.common.constant.ConfigAttributeName; 41 42 import com.sun.enterprise.util.i18n.StringManager; 44 45 51 public class ManagedORBListener extends ConfigMBeanBase implements ConfigAttributeName.ORBListener 52 { 53 56 private static final String [][] MAPLIST = 57 { 58 {kId , ATTRIBUTE + ServerTags.ID}, 59 {kAddress , ATTRIBUTE + ServerTags.ADDRESS}, 60 {kPort , ATTRIBUTE + ServerTags.PORT}, 61 {kEnabled , ATTRIBUTE + ServerTags.ENABLED}, 62 }; 64 67 private static final String [] ATTRIBUTES = 68 { 69 kId +", String, R" , 70 kAddress +", String, RW" , 71 kPort +", int, RW" , 72 kEnabled +", Boolean, RW" , 73 }; 75 78 private static final String [] OPERATIONS = 79 { 80 "createSsl(String certNickname, Boolean ssl2Enabled, String ssl2Ciphers, Boolean ssl3Enabled, String ssl3TlsCiphers, Boolean tlsEnabled, Boolean tlsRollbackEnabled, Boolean clientAuthEnabled), ACTION", 81 "deleteSsl(), ACTION", 82 "isSslCreated(), INFO", 83 }; 84 85 86 private static StringManager localStrings = 88 StringManager.getManager( ManagedORBListener.class ); 89 90 93 public ManagedORBListener() throws MBeanConfigException 94 { 95 Object [] mergedAttrs = MergeAttributesWithAnotherMbean( 96 MAPLIST, ATTRIBUTES, SslBase.MAPLIST, SslBase.ATTRIBUTES, 97 ServerTags.SSL , null); 98 this.setDescriptions((String [][])mergedAttrs[0], (String [])mergedAttrs[1], OPERATIONS); 99 } 100 101 106 public ManagedORBListener(String instanceName, String listenerId) throws MBeanConfigException 107 { 108 this(); initialize(ObjectNames.kOrbListenerType, new String []{instanceName, listenerId}); 110 } 111 112 115 public boolean isSslCreated() throws ConfigException 116 { 117 IiopListener listener = (IiopListener)getConfigBeanByXPath( getBasePath() ); 118 return (listener.getSsl()!=null); 119 } 120 121 124 public void deleteSsl() throws ConfigException 125 { 126 IiopListener listener = (IiopListener)getConfigBeanByXPath( getBasePath() ); 127 listener.setSsl(null); 128 129 getConfigContext().flush(); 130 } 131 135 public void createSsl(String certNickname, Boolean ssl2Enabled, String ssl2Ciphers, 136 Boolean ssl3Enabled, String ssl3TlsCiphers, 137 Boolean tlsEnabled, Boolean tlsRollbackEnabled, Boolean clientAuthEnabled) throws ConfigException 138 { 139 IiopListener listener = (IiopListener)getConfigBeanByXPath( getBasePath() ); 140 try 141 { 142 if(listener.getSsl()!=null) 143 { 144 listener = null; 145 String msg = localStrings.getString( "admin.server.core.mbean.config.orblistener_has_ssl_created" ); 146 throw new ConfigException( msg ); 147 } 148 } 149 catch (ConfigException e) 150 { 151 if(listener==null) 152 throw e; 153 } 154 155 Ssl ssl = new Ssl(); 156 if(certNickname!=null) 158 ssl.setCertNickname(certNickname); 159 if(ssl2Ciphers!=null) 160 ssl.setSsl2Ciphers(ssl2Ciphers); 161 if(ssl3TlsCiphers!=null) 162 ssl.setSsl3TlsCiphers(ssl3TlsCiphers); 163 if(ssl2Enabled!=null) 165 ssl.setSsl2Enabled(ssl2Enabled.booleanValue()); 166 if(ssl3Enabled!=null) 167 ssl.setSsl3Enabled(ssl3Enabled.booleanValue()); 168 if(tlsEnabled!=null) 169 ssl.setTlsEnabled(tlsEnabled.booleanValue()); 170 if(tlsRollbackEnabled!=null) 171 ssl.setTlsRollbackEnabled(tlsRollbackEnabled.booleanValue()); 172 if(clientAuthEnabled!=null) 173 ssl.setClientAuthEnabled(clientAuthEnabled.booleanValue()); 174 175 listener.setSsl(ssl); 176 177 getConfigContext().flush(); 178 } 179 180 } 181 | Popular Tags |