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

com.netflix.eureka2.server.BridgeServerConfig Maven / Gradle / Ivy

package com.netflix.eureka2.server;

import com.netflix.governator.annotations.Configuration;
import com.netflix.eureka2.registry.datacenter.LocalDataCenterInfo;
import com.netflix.eureka2.transport.EurekaTransports.Codec;

/**
 * @author David Liu
 */
public class BridgeServerConfig extends EurekaBootstrapConfig {

    @Configuration("bridgeServer.refreshRateSec")
    private int refreshRateSec = 30;

    public BridgeServerConfig() {
    }

    public BridgeServerConfig(LocalDataCenterInfo.DataCenterType dataCenterType, String resolverType,
                              int writeServerPort, int replicationPort, int readServerPort, Codec codec, int shutDownPort,
                              String appName, String vipAddress, String writeClusterDomainName,
                              String[] writeClusterServers, int refreshRateSec, int webAdminPort) {
        super(dataCenterType, resolverType, writeServerPort, replicationPort, readServerPort, codec, shutDownPort,
                appName, vipAddress, writeClusterDomainName, writeClusterServers, webAdminPort);
        this.refreshRateSec = refreshRateSec;
    }

    public int getRefreshRateSec() {
        return refreshRateSec;
    }

    public static class BridgeServerConfigBuilder extends EurekaBootstrapConfigBuilder {
        private int refreshRateSec;

        public BridgeServerConfigBuilder withRefreshRateSec(int refreshRateSec) {
            this.refreshRateSec = refreshRateSec;
            return this;
        }

        @Override
        public BridgeServerConfig build() {
            return new BridgeServerConfig(dataCenterType, resolverType, writeServerPort, replicationPort,
                    readServerPort, codec, shutDownPort, appName, vipAddress, writeClusterDomainName, writeClusterServers,
                    refreshRateSec, webAdminPort);
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy