if (!client.login()) {
throw new CloudRuntimeException("Ssp login failed.");
}
long zoneId = cmd.getZoneId();
SspCredentialVO credential = _sspCredentialDao.findByZone(zoneId);
if (credential == null) {
if (cmd.getUsername() == null || cmd.getPassword() == null) {
throw new InvalidParameterValueException("Initial credential required for zone: " + zoneId);
}
credential = new SspCredentialVO();
credential.setZoneId(zoneId);
credential.setUsername(cmd.getUsername());
credential.setPassword(cmd.getPassword());
_sspCredentialDao.persist(credential);
} else {
if (cmd.getUsername() != null || cmd.getPassword() != null) {
s_logger.warn("Tenant credential already configured for zone:" + zoneId);
}