1 45 package org.exolab.jms.net.util; 46 47 import org.exolab.jms.net.connector.ResourceException; 48 49 50 57 public final class SSLProperties { 58 59 63 private String _keyStore; 64 65 69 private String _keyStorePassword; 70 71 75 private String _keyStoreType; 76 77 81 private String _trustStore; 82 83 87 private String _trustStorePassword; 88 89 93 private String _trustStoreType; 94 95 98 private static final String KEY_STORE = "keyStore"; 99 100 103 private static final String KEY_STORE_PASSWORD = "keyStorePassword"; 104 105 108 private static final String KEY_STORE_TYPE = "keyStoreType"; 109 110 113 private static final String TRUST_STORE = "trustStore"; 114 115 118 private static final String TRUST_STORE_PASSWORD = "trustStorePassword"; 119 120 123 private static final String TRUST_STORE_TYPE = "trustStoreType"; 124 125 128 public SSLProperties() { 129 } 130 131 137 public SSLProperties(Properties properties) throws ResourceException { 138 setKeyStore(properties.get(KEY_STORE)); 139 setKeyStorePassword(properties.get(KEY_STORE_PASSWORD)); 140 setKeyStoreType(properties.get(KEY_STORE_TYPE)); 141 setTrustStore(properties.get(TRUST_STORE)); 142 setTrustStorePassword(properties.get(TRUST_STORE_PASSWORD)); 143 setTrustStoreType(properties.get(TRUST_STORE_TYPE)); 144 } 145 146 151 public String getKeyStore() { 152 return _keyStore; 153 } 154 155 160 public void setKeyStore(String store) { 161 _keyStore = store; 162 } 163 164 169 public String getKeyStorePassword() { 170 return _keyStorePassword; 171 } 172 173 178 public void setKeyStorePassword(String password) { 179 _keyStorePassword = password; 180 } 181 182 187 public String getKeyStoreType() { 188 return _keyStoreType; 189 } 190 191 196 public void setKeyStoreType(String type) { 197 _keyStoreType = type; 198 } 199 200 205 public String getTrustStore() { 206 return _trustStore; 207 } 208 209 214 public void setTrustStore(String store) { 215 _trustStore = store; 216 } 217 218 223 public String getTrustStorePassword() { 224 return _trustStorePassword; 225 } 226 227 232 public void setTrustStorePassword(String password) { 233 _trustStorePassword = password; 234 } 235 236 241 public String getTrustStoreType() { 242 return _trustStoreType; 243 } 244 245 250 public void setTrustStoreType(String type) { 251 _trustStoreType = type; 252 } 253 254 259 public boolean isEmpty() { 260 return _keyStore == null && _keyStorePassword == null 261 && _keyStoreType == null && _trustStore == null 262 && _trustStorePassword == null && _trustStoreType == null; 263 } 264 265 272 public boolean equals(Object other) { 273 boolean equal = (this == other); 274 if (!equal) { 275 if (other instanceof SSLProperties) { 276 SSLProperties props = (SSLProperties) other; 277 if (equals(_keyStore, props._keyStore) 278 && equals(_keyStorePassword, props._keyStorePassword) 279 && equals(_keyStoreType, props._keyStoreType) 280 && equals(_trustStore, props._trustStore) 281 && equals(_trustStorePassword, 282 props._trustStorePassword) 283 && equals(_trustStoreType, props._trustStoreType)) { 284 equal = true; 285 } 286 } else { 287 equal = false; 288 } 289 } 290 return equal; 291 } 292 293 298 public void export(Properties properties) { 299 properties.setNonNull(KEY_STORE, getKeyStore()); 300 properties.setNonNull(KEY_STORE_PASSWORD, getKeyStorePassword()); 301 properties.setNonNull(KEY_STORE_TYPE, getKeyStoreType()); 302 properties.setNonNull(TRUST_STORE, getTrustStore()); 303 properties.setNonNull(TRUST_STORE_PASSWORD, getTrustStorePassword()); 304 properties.setNonNull(TRUST_STORE_TYPE, getTrustStoreType()); 305 } 306 307 315 private boolean equals(Object o1, Object o2) { 316 boolean equal = (o1 == null && o2 == null); 317 if (!equal) { 318 if (o1 != null && o1.equals(o2)) { 319 equal = true; 320 } 321 } 322 return equal; 323 } 324 325 } 326 | Popular Tags |