//WARNING!!! The code below is duplicated in admin-cli-ee ChangeMasterPasswordCommand.java.
//I tried to share the code but ran into issues.
DomainConfig config = getDomainConfig(domainName);
DomainsManager mgr = getFeatureFactory().getDomainsManager();
//domain validation upfront (i.e. before we prompt)
mgr.validateDomain(config, true);
masterPassword = getMasterPassword(new RepositoryManager(), config);
//getPassword(optionName, allowedOnCommandLine, readPrefsFile, readPasswordOptionFromPrefs,
//readMasterPasswordFile, mgr, config,
//promptUser, confirm, validate)
config.put(DomainConfig.K_MASTER_PASSWORD, masterPassword);
mgr.validateMasterPassword(config);
newMasterPassword = getNewMasterPassword();
validateOptions();
Boolean saveMasterPassword = getSaveMasterPassword(null);
config.put(DomainConfig.K_NEW_MASTER_PASSWORD, newMasterPassword);
config.put(DomainConfig.K_SAVE_MASTER_PASSWORD, saveMasterPassword);
mgr.changeMasterPassword(config);
//END WARNING!!!