/** * Project: doris.admin.service.main-0.1.0-SNAPSHOT * * File Created at 2011-6-2 * $Id$ * * Copyright 1999-2100 Alibaba.com Corporation Limited. * All rights reserved. * * This software is the confidential and proprietary information of * Alibaba Company. ("Confidential Information"). You shall not * disclose such Confidential Information and shall use it only in * accordance with the terms of the license agreement you entered into * with Alibaba.com. */ package com.alibaba.doris.admin.service.main; import java.util.HashMap; import java.util.Map; import org.apache.commons.lang.StringUtils; import com.alibaba.doris.admin.service.common.AdminServiceAction; import com.alibaba.doris.common.AdminServiceConstants; import com.alibaba.fastjson.JSON; /** * TODO Comment of CommonConfigServiceAction * * @author mian.hem */ public class CommonConfigServiceAction implements AdminServiceAction { private static CommonConfigServiceAction instance = new CommonConfigServiceAction(); private CommonConfigServiceAction() { } public static CommonConfigServiceAction getInstance() { return instance; } public String execute(Map<String, String> params) { String subActions = params.get(AdminServiceConstants.COMMON_CONFIG_ACTION_ITEMS); String subVersions = params.get(AdminServiceConstants.COMMON_CONFIG_VERSION_ITEMS); String[] actions = null; if (StringUtils.isNotEmpty(subActions)) { actions = subActions.split(","); } if (actions.length == 0) { return null; } String[] versions = null; if (StringUtils.isNotEmpty(subVersions)) { versions = subVersions.split(","); } boolean noVersion = (versions == null || (versions.length != actions.length)); Map<String, String> resultMap = new HashMap<String, String>(); for (int i = 0; i < actions.length; i++) { String actionName = actions[i]; if(noVersion) { params.put(AdminServiceConstants.CONFIG_VERSION, "0"); } else { params.put(AdminServiceConstants.CONFIG_VERSION, StringUtils.isEmpty(versions[i])? "0" : versions[i]); } AdminServiceAction action = AdminServiceActionFactory.getAdminServiceAction(actionName); String resultItem = action.execute(params); resultMap.put(actionName, resultItem); } return JSON.toJSONString(resultMap); } }