class ProxyNetworkAgent {

    @MainThread
    protected void setUpNetworkAgent(
            @Nullable final String reason,
            @Nullable final String companionName,
            @Nullable final Listener listener) {
        DebugAssert.isMainThread();
        doSetUpNetworkAgent(reason, companionName, mCurrentNetworkScore, listener,
                ProxyNetworkAgent.ALWAYS_CREATE_AGENT);
    }

    protected  ProxyNetworkAgent(
            @NonNull final Context context,
            @NonNull final NetworkCapabilities capabilities,
            @NonNull final ProxyLinkProperties proxyLinkProperties);

}