blob: 87778ddc48a1eeb0e8832c788a2bfedfac9c87e8 [file] [log] [blame]
///*
// * Licensed to the Apache Software Foundation (ASF) under one or more
// * contributor license agreements. See the NOTICE file distributed with
// * this work for additional information regarding copyright ownership.
// * The ASF licenses this file to You under the Apache License, Version 2.0
// * (the "License"); you may not use this file except in compliance with
// * the License. You may obtain a copy of the License at
// *
// * http://www.apache.org/licenses/LICENSE-2.0
// *
// * Unless required by applicable law or agreed to in writing, software
// * distributed under the License is distributed on an "AS IS" BASIS,
// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// * See the License for the specific language governing permissions and
// * limitations under the License.
// */
//package org.apache.dubbo.admin.common.util;
//
//import org.apache.dubbo.common.utils.StringUtils;
//import org.apache.dubbo.admin.model.domain.LoadBalance;
//import org.apache.dubbo.admin.model.domain.Override;
//import org.apache.dubbo.admin.model.domain.Weight;
//
//import java.util.ArrayList;
//import java.util.Arrays;
//import java.util.List;
//import java.util.Map;
//
///**
// * OverrideUtils.java
// *
// */
//public class OverrideUtils {
// public static List<Weight> overridesToWeights(List<Override> overrides) {
// List<Weight> weights = new ArrayList<Weight>();
// if (overrides == null) {
// return weights;
// }
// for (Override o : overrides) {
// if (StringUtils.isEmpty(o.getParams())) {
// continue;
// } else {
// Map<String, String> params = StringUtils.parseQueryString(o.getParams());
// for (Map.Entry<String, String> entry : params.entrySet()) {
// if (entry.getKey().equals("weight")) {
// Weight weight = new Weight();
// weight.setAddress(o.getAddress());
// weight.setId(o.getId());
// weight.setHash(o.getHash());
// weight.setService(o.getService());
// weight.setWeight(Integer.valueOf(entry.getValue()));
// weights.add(weight);
// }
// }
// }
// }
// return weights;
// }
//
// public static Weight overrideToWeight(Override override) {
// List<Weight> weights = OverrideUtils.overridesToWeights(Arrays.asList(override));
// if (weights != null && weights.size() > 0) {
// return overridesToWeights(Arrays.asList(override)).get(0);
// }
// return null;
// }
//
// public static Override weightToOverride(Weight weight) {
// Override override = new Override();
// override.setId(weight.getId());
// override.setHash(weight.getHash());
// override.setAddress(weight.getAddress());
// override.setEnabled(true);
// override.setParams("weight=" + weight.getWeight());
// override.setService(weight.getService());
// return override;
// }
//
// public static List<LoadBalance> overridesToLoadBalances(List<Override> overrides) {
// List<LoadBalance> loadBalances = new ArrayList<LoadBalance>();
// if (overrides == null) {
// return loadBalances;
// }
// for (Override o : overrides) {
// if (StringUtils.isEmpty(o.getParams())) {
// continue;
// } else {
// Map<String, String> params = StringUtils.parseQueryString(o.getParams());
// for (Map.Entry<String, String> entry : params.entrySet()) {
// if (entry.getKey().endsWith("loadbalance")) {
// LoadBalance loadBalance = new LoadBalance();
// String method = null;
// if (entry.getKey().endsWith(".loadbalance")) {
// method = entry.getKey().split(".loadbalance")[0];
// } else {
// method = "*";
// }
//
// loadBalance.setMethod(method);
// loadBalance.setId(o.getId());
// loadBalance.setHash(o.getHash());
// loadBalance.setService(o.getService());
// loadBalance.setStrategy(entry.getValue());
// loadBalances.add(loadBalance);
//
// }
// }
// }
// }
// return loadBalances;
// }
//
// public static LoadBalance overrideToLoadBalance(Override override) {
// List<LoadBalance> loadBalances = OverrideUtils.overridesToLoadBalances(Arrays.asList(override));
// if (loadBalances != null && loadBalances.size() > 0) {
// return loadBalances.get(0);
// }
// return null;
// }
//
// public static Override loadBalanceToOverride(LoadBalance loadBalance) {
// Override override = new Override();
// override.setId(loadBalance.getId());
// override.setHash(loadBalance.getHash());
// override.setService(loadBalance.getService());
// override.setEnabled(true);
// String method = loadBalance.getMethod();
// String strategy = loadBalance.getStrategy();
// if (StringUtils.isEmpty(method) || method.equals("*")) {
// override.setParams("loadbalance=" + strategy);
// } else {
// override.setParams(method + ".loadbalance=" + strategy);
// }
// return override;
// }
//
//}