gpt4 book ai didi

org.springframework.cloud.zookeeper.discovery.ZookeeperInstance类的使用及代码示例

转载 作者:知者 更新时间:2024-03-20 02:54:31 30 4
gpt4 key购买 nike

本文整理了Java中org.springframework.cloud.zookeeper.discovery.ZookeeperInstance类的一些代码示例,展示了ZookeeperInstance类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZookeeperInstance类的具体详情如下:
包路径:org.springframework.cloud.zookeeper.discovery.ZookeeperInstance
类名称:ZookeeperInstance

ZookeeperInstance介绍

[英]Represents the default payload of a registered service in Zookeeper.
[中]表示Zookeeper中已注册服务的默认负载。

代码示例

代码示例来源:origin: Nepxion/Discovery

@Override
  public Map<String, String> getServerMetadata(Server server) {
    if (server instanceof ZookeeperServer) {
      ZookeeperServer zookeeperServer = (ZookeeperServer) server;

      return zookeeperServer.getInstance().getPayload().getMetadata();
    }

    throw new DiscoveryException("Server instance isn't the type of ZookeeperServer");
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-zookeeper

@Bean
@ConditionalOnMissingBean(ZookeeperRegistration.class)
public ServiceInstanceRegistration serviceInstanceRegistration(
    ApplicationContext context, ZookeeperDiscoveryProperties properties) {
  String appName = context.getEnvironment().getProperty("spring.application.name",
      "application");
  String host = properties.getInstanceHost();
  if (!StringUtils.hasText(host)) {
    throw new IllegalStateException("instanceHost must not be empty");
  }
  ZookeeperInstance zookeeperInstance = new ZookeeperInstance(context.getId(),
      appName, properties.getMetadata());
  RegistrationBuilder builder = ServiceInstanceRegistration.builder().address(host)
      .name(appName).payload(zookeeperInstance)
      .uriSpec(properties.getUriSpec());
  if (properties.getInstanceSslPort() != null) {
    builder.sslPort(properties.getInstanceSslPort());
  }
  if (properties.getInstanceId() != null) {
    builder.id(properties.getInstanceId());
  }
  // TODO add customizer?
  return builder.build();
}

代码示例来源:origin: org.apache.camel/camel-spring-cloud-zookeeper

@Override
  public ZookeeperRegistration convert(ServiceDefinition source) {
    ZookeeperInstance instance = new ZookeeperInstance(
      source.getId(),
      source.getName(),
      source.getMetadata()
    );

    return ServiceInstanceRegistration.builder()
      .address(properties.getServiceRegistry().getServiceHost())
      .port(source.getPort())
      .name(source.getName())
      .payload(instance)
      .uriSpec(ZookeeperDiscoveryProperties.DEFAULT_URI_SPEC)
      .build();
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-zookeeper

@Override
public Object getStatus(ZookeeperRegistration registration) {
  ZookeeperInstance instance = registration.getServiceInstance().getPayload();
  String instanceStatus = instance.getMetadata().get(INSTANCE_STATUS_KEY);
  if (!StringUtils.hasText(instanceStatus)) {
    instanceStatus = STATUS_UP;
  }
  return instanceStatus;
}

代码示例来源:origin: spring-cloud/spring-cloud-zookeeper

@Override
  public Map<String, String> getMetadata() {
    if (this.serviceInstance == null || this.serviceInstance.getPayload() == null) {
      return Collections.emptyMap();
    }
    return this.serviceInstance.getPayload().getMetadata();
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-zookeeper

@SuppressWarnings("unchecked")
  protected List<ZookeeperServer> getServers() {
    try {
      if (this.serviceDiscovery == null) {
        return Collections.EMPTY_LIST;
      }
      Collection<ServiceInstance<ZookeeperInstance>> instances = this.serviceDiscovery
          .queryForInstances(this.serviceId);
      if (instances == null || instances.isEmpty()) {
        return Collections.EMPTY_LIST;
      }
      List<ZookeeperServer> servers = new ArrayList<>();
      for (ServiceInstance<ZookeeperInstance> instance : instances) {
        String instanceStatus = null;
        if (instance.getPayload() != null && instance.getPayload().getMetadata() != null) {
          instanceStatus = instance.getPayload().getMetadata().get(INSTANCE_STATUS_KEY);
        }
        if (!StringUtils.hasText(instanceStatus) // backwards compatibility
            || instanceStatus.equalsIgnoreCase(STATUS_UP)) {
          servers.add(new ZookeeperServer(instance));
        }
      }
      return servers;
    }
    catch (Exception e) {
      rethrowRuntimeException(e);
    }
    return Collections.EMPTY_LIST;
  }
}

代码示例来源:origin: com.nepxion/discovery-plugin-framework-zookeeper

@Override
  public Map<String, String> getServerMetadata(Server server) {
    if (server instanceof ZookeeperServer) {
      ZookeeperServer zookeeperServer = (ZookeeperServer) server;

      return zookeeperServer.getInstance().getPayload().getMetadata();
    }

    throw new DiscoveryException("Server instance isn't the type of ZookeeperServer");
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-zookeeper

@Override
public void setStatus(ZookeeperRegistration registration, String status) {
  ServiceInstance<ZookeeperInstance> serviceInstance = registration.getServiceInstance();
  ZookeeperInstance instance = serviceInstance.getPayload();
  instance.getMetadata().put(INSTANCE_STATUS_KEY, status);
  try {
    getServiceDiscovery().updateService(serviceInstance);
  } catch (Exception e) {
    ReflectionUtils.rethrowRuntimeException(e);
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-zookeeper

@Override
  public Map<String, String> getMetadata(Server server) {
    if (server instanceof ZookeeperServer) {
      ZookeeperServer zookeeperServer = (ZookeeperServer) server;
      ServiceInstance<ZookeeperInstance> instance = zookeeperServer.getInstance();
      if (instance != null && instance.getPayload() != null) {
        return instance.getPayload().getMetadata();
      }
    }
    return super.getMetadata(server);
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-zookeeper

/**
 * @param serviceId The service id to be used
 * @param serviceInstance The zookeeper service instance described by this service instance
 */
public ZookeeperServiceInstance(String serviceId, org.apache.curator.x.discovery.ServiceInstance<ZookeeperInstance> serviceInstance) {
  this.serviceId = serviceId;
  this.serviceInstance = serviceInstance;
  this.host = this.serviceInstance.getAddress();
  this.secure = serviceInstance.getSslPort() != null;
  Integer port = serviceInstance.getPort();
  if (this.secure) {
    port = serviceInstance.getSslPort();
  }
  this.port = port;
  this.uri = URI.create(serviceInstance.buildUriSpec());
  if (serviceInstance.getPayload() != null) {
    this.metadata = serviceInstance.getPayload().getMetadata();
  } else {
    this.metadata = new HashMap<>();
  }
}

代码示例来源:origin: org.apache.camel/camel-spring-cloud-zookeeper

@Override
  public ServiceDefinition convert(ZookeeperServer source) {
    return new DefaultServiceDefinition(
      source.getId(),
      source.getHost(),
      source.getPort(),
      source.getInstance().getPayload().getMetadata()
    );
  }
}

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com