本文整理汇总了Java中com.orbitz.consul.model.agent.ImmutableRegistration类的典型用法代码示例。如果您正苦于以下问题:Java ImmutableRegistration类的具体用法?Java ImmutableRegistration怎么用?Java ImmutableRegistration使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ImmutableRegistration类属于com.orbitz.consul.model.agent包,在下文中一共展示了ImmutableRegistration类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: tryRegisterConsulService
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
private void tryRegisterConsulService(ClusterNodeAddress ownAddress) {
if (!consul.agentClient().isRegistered(configuration.getConsulServiceId())) {
log.debug("service {} not registered, will try to do so", configuration.getConsulServiceName());
Registration.RegCheck ttlCheck = Registration.RegCheck.ttl(configuration.getConsulCheckTTL());
Registration serviceRegistration = ImmutableRegistration.builder()
.name(getServiceName())
.address(getNodeAddress(ownAddress))
.port(ownAddress.getPort())
.id(getServiceId())
.addChecks(ttlCheck).build();
consul.agentClient().register(serviceRegistration, getQueryOptions());
log.info("registered service {}, registration status now is {}", configuration.getConsulServiceName(), consul.agentClient().isRegistered(configuration.getConsulServiceId()));
} else {
log.debug("service {} already registered", configuration.getConsulServiceName());
}
}
开发者ID:pellepelster,项目名称:hivemq-consul-cluster-discovery,代码行数:20,代码来源:ConsulDiscoveryCallback.java
示例2: registerSelf
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
private void registerSelf() throws MalformedURLException {
if (clientOnly) {
LOG.debug("Client only. Not registering self with consul");
return;
}
LOG.info("Registering self with Consul");
Registration.RegCheck ttlCheck = ImmutableRegCheck.builder().ttl("60s").deregisterCriticalServiceAfter("1m").build();
Registration registration =
ImmutableRegistration.builder().address(consulServiceAddress).port(Integer.parseInt(consulServicePort))
.name(consulServiceName).id(consulServiceId).check(ttlCheck).build();
if (CONSUL_HOLDER != null && CONSUL_HOLDER.hasInstance()) {
CONSUL_HOLDER.registerSelf(registration);
} else {
CONSUL_HOLDER = ConsulHolder.initialize(Consul.builder().withUrl(basePath.toURL()).build(), this);
CONSUL_HOLDER.registerSelf(registration);
}
Runtime.getRuntime().removeShutdownHook(shutdownHook);
Runtime.getRuntime().addShutdownHook(shutdownHook);
}
开发者ID:squark-io,项目名称:active-mq-consul-discovery,代码行数:20,代码来源:ConsulDiscoveryAgent.java
示例3: advertise
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
public void advertise(Registration registration) {
if (this.advertisements.contains(registration)) {
return;
}
AgentClient client = this.agentClientInjector.getValue();
com.orbitz.consul.model.agent.Registration consulReg = ImmutableRegistration.builder()
.address(registration.getAddress())
.port(registration.getPort())
.id(serviceId(registration))
.name(registration.getName())
.addTags(registration.getTags().toArray(new String[]{}))
.check(com.orbitz.consul.model.agent.Registration.RegCheck.ttl(3L))
.build();
client.register(consulReg);
this.advertisements.add(registration);
log.info("Registered service " + consulReg.getId());
}
开发者ID:wildfly-swarm-archive,项目名称:wildfly-swarm-topology-consul,代码行数:22,代码来源:Advertiser.java
示例4: testHostFromConfig
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
@Test
public void testHostFromConfig() {
factory.setServicePort(8888);
factory.setServiceAddress("127.0.0.1");
when(agent.isRegistered(anyString())).thenReturn(false);
final ConsulAdvertiser advertiser = new ConsulAdvertiser(environment,
factory, consul, serviceId);
advertiser.register(8080, 8081);
final ImmutableRegistration registration = ImmutableRegistration
.builder().id(serviceId).port(8888).address("127.0.0.1")
.check(ImmutableRegCheck.builder()
.http("http://127.0.0.1:8081/admin/healthcheck")
.interval("1s").deregisterCriticalServiceAfter("1m")
.build())
.name("test").build();
verify(agent).register(registration);
}
开发者ID:smoketurner,项目名称:dropwizard-consul,代码行数:21,代码来源:ConsulAdvertiserTest.java
示例5: testTagsFromConfig
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
@Test
public void testTagsFromConfig() {
final List<String> tags = Arrays.asList("test", "second-test");
factory.setTags(tags);
when(agent.isRegistered(serviceId)).thenReturn(false);
final ConsulAdvertiser advertiser = new ConsulAdvertiser(environment,
factory, consul, serviceId);
advertiser.register(8080, 8081);
final ImmutableRegistration registration = ImmutableRegistration
.builder().tags(tags)
.check(ImmutableRegCheck.builder()
.http("http://127.0.0.1:8081/admin/healthcheck")
.interval("1s").deregisterCriticalServiceAfter("1m")
.build())
.name("test").port(8080).id(serviceId).build();
verify(agent).register(registration);
}
开发者ID:smoketurner,项目名称:dropwizard-consul,代码行数:21,代码来源:ConsulAdvertiserTest.java
示例6: doPreSetup
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
@Override
protected void doPreSetup() throws Exception {
client = getConsul().agentClient();
registrations = new ArrayList<>(SERVICE_COUNT);
expectedBodies = new ArrayList<>(SERVICE_COUNT);
for (int i = 0; i < SERVICE_COUNT; i++) {
Registration r = ImmutableRegistration.builder()
.id("service-" + i)
.name(SERVICE_NAME)
.address("127.0.0.1")
.port(SERVICE_PORT_BASE + i)
.build();
client.register(r);
registrations.add(r);
expectedBodies.add("ping on " + r.getPort().get());
}
}
开发者ID:HydAu,项目名称:Camel,代码行数:22,代码来源:ConsulServiceCallRouteTest.java
示例7: advertise
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
public void advertise(Registration registration) {
if (this.advertisements.contains(registration)) {
return;
}
AgentClient client = this.agentClientInjector.getValue();
com.orbitz.consul.model.agent.Registration consulReg = ImmutableRegistration.builder()
.address(registration.getAddress())
.port(registration.getPort())
.id(serviceId(registration))
.name(registration.getName())
.addTags(registration.getTags().toArray(new String[]{}))
.check(com.orbitz.consul.model.agent.Registration.RegCheck.ttl(3L))
.build();
client.register(consulReg);
this.advertisements.add(registration);
}
开发者ID:wildfly-swarm-archive,项目名称:ARCHIVE-wildfly-swarm,代码行数:20,代码来源:Advertiser.java
示例8: register
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
private static void register() {
AgentClient agentClient = consul.agentClient();
List<Registration.RegCheck> checks = new ArrayList<Registration.RegCheck>();
HostAndPort serviceHostAndPort = HostAndPort.fromParts(visibleHost, visiblePort);
Registration.RegCheck mainCheck = Registration.RegCheck.tcp(serviceHostAndPort.toString(), 30);
checks.add(mainCheck);
Registration registration = ImmutableRegistration
.builder()
.port(visiblePort)
.address(visibleHost)
.checks(checks)
.name(serviceName)
.id(serviceId)
.addTags(tsdMode)
.build();
agentClient.register(registration);
if (agentClient.isRegistered(serviceId)) {
LOGGER.info("Registered this instance with Consul");
} else {
LOGGER.warn("Consul reports that this instance is not registered");
}
}
开发者ID:inst-tech,项目名称:opentsdb-plugins,代码行数:30,代码来源:ConsulPlugin.java
示例9: testRegister
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
@Test
public void testRegister() {
when(agent.isRegistered(serviceId)).thenReturn(false);
advertiser.register(8080, 8081);
final ImmutableRegistration registration = ImmutableRegistration
.builder().port(8080)
.check(ImmutableRegCheck.builder()
.http("http://127.0.0.1:8081/admin/healthcheck")
.interval("1s").deregisterCriticalServiceAfter("1m")
.build())
.name("test").id(serviceId).build();
verify(agent).register(registration);
}
开发者ID:smoketurner,项目名称:dropwizard-consul,代码行数:16,代码来源:ConsulAdvertiserTest.java
示例10: register
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
@Override
public void register() throws Exception {
try {
this.myServiceId = this.consulServiceName + "-" +
this.myLocalAddress.getInetAddress().getHostAddress() +"-" +
this.myLocalAddress.getHost() + "-" +
this.myLocalAddress.getPort();
ImmutableRegistration.Builder builder = ImmutableRegistration.builder()
.name(this.consulServiceName)
.id(myServiceId)
.address(this.myLocalAddress.getInetAddress().getHostAddress())
.port(this.myLocalAddress.getPort())
.tags(Arrays.asList(tags));
String healthCheckProvider = getHealthCheckProvider( (String)registratorConfig.get(CONFIG_PROP_HEALTH_CHECK_PROVIDER) );
HealthCheckBuilder healthBuilder = (HealthCheckBuilder)Class.forName(healthCheckProvider).newInstance();
RegCheck regCheck =healthBuilder.buildRegistrationCheck(registratorConfig, this.myLocalAddress);
if (regCheck != null) {
builder.check(regCheck);
}
// register...
this.consulAgentClient.register(builder.build(), ConsulUtility.getAclToken(this.consulAclToken));
this.logger.info("Registered with Consul["+this.consulHost+":"+this.consulPort+"] serviceId:"+myServiceId);
} catch(Exception e) {
String msg = "Unexpected error in register(serviceId:"+myServiceId+"): " + e.getMessage();
logger.severe(msg,e);
throw new Exception(msg,e);
}
}
开发者ID:bitsofinfo,项目名称:hazelcast-consul-discovery-spi,代码行数:39,代码来源:BaseRegistrator.java
示例11: configure
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
@Override
public void configure(final Env env, final Config config, final Binder binder) throws Throwable {
Config consulConfig = config.getConfig("consul.default");
if (!name.equals("default") && config.hasPath("consul." + name)) {
consulConfig = config.getConfig("consul." + name).withFallback(consulConfig);
}
Consul.Builder consulBuilder = Consul.builder()
.withUrl(consulConfig.getString("url"));
if (consulBuilderConsumer != null) {
consulBuilderConsumer.accept(consulBuilder);
}
Consul consul = consulBuilder.build();
env.onStop(consul::destroy);
env.serviceKey().generate(Consul.class, name, k -> binder.bind(k).toInstance(consul));
if (consulConfig.hasPath("register")) {
Config registerConfig = consulConfig.getConfig("register");
ImmutableRegistration.Builder registrationBuilder = ImmutableRegistration.builder()
.name(registerConfig.getString("name"))
.address(registerConfig.getString("host"))
.port(registerConfig.getInt("port"))
.tags(registerConfig.getStringList("tags"))
.id(UUID.randomUUID().toString());
if (registerConfig.hasPath("check")) {
Config checkConfig = registerConfig.getConfig("check");
String http = MessageFormat.format("http://{0}:{1,number,####}{2}",
registerConfig.getString("host"),
registerConfig.getInt("port"),
checkConfig.getString("path"));
Registration.RegCheck check = Registration.RegCheck.http(http,
checkConfig.getDuration("interval", TimeUnit.SECONDS),
checkConfig.getDuration("timeout", TimeUnit.SECONDS));
registrationBuilder.check(check);
String response = checkConfig.getString("response");
env.router().get(checkConfig.getString("path"), () -> response);
}
if (registrationBuilderConsumer != null) {
registrationBuilderConsumer.accept(registrationBuilder);
}
Registration registration = registrationBuilder.build();
AgentClient agentClient = consul.agentClient();
env.onStarted(() -> agentClient.register(registration));
env.onStop(() -> agentClient.deregister(registration.getId()));
}
}
开发者ID:jooby-project,项目名称:jooby,代码行数:63,代码来源:Consulby.java
示例12: testServiceDiscovery
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
@Test
public void testServiceDiscovery() throws Exception {
final AgentClient client = getConsul().agentClient();
try {
registrations = new ArrayList<>(3);
for (int i = 0; i < 3; i++) {
Registration r = ImmutableRegistration.builder()
.id("service-" + i)
.name("my-service")
.address("127.0.0.1")
.addTags("a-tag")
.addTags("key1=value1")
.addTags("key2=value2")
.port(9000 + i)
.build();
client.register(r);
registrations.add(r);
}
ConsulConfiguration configuration = new ConsulConfiguration();
configuration.setUrl(consulUrl);
ServiceDiscovery discovery = new ConsulServiceDiscovery(configuration);
List<ServiceDefinition> services = discovery.getServices("my-service");
assertNotNull(services);
assertEquals(3, services.size());
for (ServiceDefinition service : services) {
assertFalse(service.getMetadata().isEmpty());
assertTrue(service.getMetadata().containsKey("service_name"));
assertTrue(service.getMetadata().containsKey("service_id"));
assertTrue(service.getMetadata().containsKey("a-tag"));
assertTrue(service.getMetadata().containsKey("key1"));
assertTrue(service.getMetadata().containsKey("key2"));
}
} finally {
if (registrations != null && client != null) {
registrations.forEach(r -> client.deregister(r.getId()));
}
}
}
开发者ID:wildfly-extras,项目名称:wildfly-camel,代码行数:44,代码来源:ConsulIntegrationTest.java
示例13: withRegistrationBuilder
import com.orbitz.consul.model.agent.ImmutableRegistration; //导入依赖的package包/类
/**
* <p>
* {@link Registration} object can be configured programmatically:
* </p>
*
* <pre>{@code
* {
* use(new Consulby()
* .withRegistrationBuilder(registrationBuilder -> {
* registrationBuilder.enableTagOverride(true);
* registrationBuilder.id("custom-service-id");
* }));
* }
* }</pre>
*
* @param registrationBuilderConsumer A {@link Consumer} that accepts
* {@link ImmutableRegistration.Builder}
* @return This {@link Consulby} to allow chaining
*/
public Consulby withRegistrationBuilder(
final Consumer<ImmutableRegistration.Builder> registrationBuilderConsumer) {
this.registrationBuilderConsumer = registrationBuilderConsumer;
return this;
}
开发者ID:jooby-project,项目名称:jooby,代码行数:25,代码来源:Consulby.java
注:本文中的com.orbitz.consul.model.agent.ImmutableRegistration类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论