package com.alibaba.doris.common.adminservice.impl;
import org.apache.commons.lang.StringUtils;
import com.alibaba.doris.common.AdminServiceConstants;
import com.alibaba.doris.common.adminservice.BaseAdminService;
import com.alibaba.doris.common.adminservice.VirtualNumberService;
public class VirtualNumberServiceImpl extends BaseAdminService<Integer>
implements VirtualNumberService {
private static VirtualNumberServiceImpl instance = new VirtualNumberServiceImpl();
private Integer virtualNumber;
private VirtualNumberServiceImpl() {
}
public static VirtualNumberServiceImpl getInstance() {
return instance;
}
public int getVirtualNumber() {
Integer virtualNumber = requestForce(null);
if (virtualNumber != null) {
this.virtualNumber = virtualNumber;
return virtualNumber;
}
if (virtualNumber == null && this.virtualNumber != null) {
return this.virtualNumber;
}
throw new RuntimeException("Could not initilize virtual node number!");
}
@Override
public Integer convert(String response) {
if (StringUtils.isEmpty(response) || !StringUtils.isNumeric(response)) {
return null;
}
return Integer.valueOf(response);
}
@Override
public String getActionName() {
return AdminServiceConstants.VIRTUAL_NUMBER_ACTION;
}
}