All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.yy.httpdns.Config Maven / Gradle / Ivy

package com.yy.httpdns;

import android.content.Context;

import com.yy.httpdns.bean.DomainName;
import com.yy.httpdns.log.DnsLog;
import com.yy.httpdns.util.SharedPreferencesUtil;

import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * Created by huangzhilong on 2016/8/11.
 */
public class Config {
    public static final String TAG = "Config";
    private Context context;
    private String dnsService;
    private Map domainMap = new ConcurrentHashMap<>();

    //use to distinguish between multiple processes
    public Config(Context context, String tag) {
        this.context = context;
        DnsLog.TAG = "HttpDnsLogger" + "-" + tag;
        SharedPreferencesUtil.FILE_NAME = "android-httpDns" + "-" + tag;
    }

    public Config(Context context) {
        this.context = context;
    }

    public Config setDnsService(String dnsService) {
        this.dnsService = dnsService;
        return this;
    }

    public Config addHost(String host, String protocol, String api, int port, String headerHost) {
        if (domainMap.get(host) == null) {
            domainMap.put(host, new DomainName(host, protocol, api, port, headerHost));
            DnsLog.i(TAG, "add domainNames hostName: " + host);
        }
        return this;
    }

    public Config addHost(String host, String protocol, String api, int port) {
        return addHost(host, protocol, api, port, null);
    }

    public String getDnsService() {
        return dnsService;
    }

    public Context getContext() {
        return context;
    }

    public Map getDomainMap() {
        return domainMap;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy