init
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
package com.eactive.eai.agent.eaimessage;
|
||||
|
||||
import com.eactive.eai.agent.command.Command;
|
||||
import com.eactive.eai.agent.command.CommandException;
|
||||
import com.eactive.eai.common.message.EAIMessageManager;
|
||||
import com.eactive.eai.common.util.Logger;
|
||||
|
||||
public class ReloadEAIMessageCommand extends Command {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public ReloadEAIMessageCommand() {
|
||||
super("ReloadEAIMessageCommand");
|
||||
}
|
||||
|
||||
public Object execute() throws CommandException {
|
||||
Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT);
|
||||
if (logger.isInfo()) {
|
||||
logger.info(this.name + " is executed");
|
||||
}
|
||||
|
||||
if (!(args instanceof String)) {
|
||||
throwCommandException("RECEAIMCM001", null);
|
||||
}
|
||||
|
||||
try {
|
||||
EAIMessageManager manager = EAIMessageManager.getInstance();
|
||||
String keyName = (String) args;
|
||||
|
||||
if (keyName != null) {
|
||||
if ("ALL".equals(keyName)) {
|
||||
manager.reload();
|
||||
if (logger.isWarn()) {
|
||||
logger.warn(this.name + "] all rule Reload.");
|
||||
}
|
||||
} else {
|
||||
if (keyName.contains(",")) {
|
||||
reloadKeys(manager, keyName);
|
||||
} else {
|
||||
manager.reload(keyName.trim());
|
||||
if (logger.isWarn()) {
|
||||
logger.warn(this.name + "] " + keyName + " Reload.");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
throwCommandException("RECEAIMCM002", e);
|
||||
}
|
||||
return "success";
|
||||
}
|
||||
|
||||
private void reloadKeys(EAIMessageManager manager, String keyName) throws Exception {
|
||||
Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT);
|
||||
if (logger.isWarn()) {
|
||||
logger.warn(this.name + "] Array [" + keyName + "] Reload.");
|
||||
}
|
||||
|
||||
String[] keys = keyName.split(",");
|
||||
for (String key : keys) {
|
||||
if (key != null) {
|
||||
manager.reload(key.trim());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void throwCommandException(String errorCode, Exception exception) throws CommandException {
|
||||
Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT);
|
||||
String msg = makeException(errorCode, exception);
|
||||
if (logger.isError()) {
|
||||
logger.error(msg, exception);
|
||||
}
|
||||
throw new CommandException(msg);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user