docs: protected void initEurekaServerContext() throws Exception {
          EurekaServerConfig eurekaServerConfig = new DefaultEurekaServerConfig();
  
          // For backward compatibility
          JsonXStream.getInstance().registerConverter(new V1AwareInstanceInfoConverter(), XStream.PRIORITY_VERY_HIGH);
          XmlXStream.getInstance().registerConverter(new V1AwareInstanceInfoConverter(), XStream.PRIORITY_VERY_HIGH);
  
          logger.info("Initializing the eureka client...");
          logger.info(eurekaServerConfig.getJsonCodecName());
          ServerCodecs serverCodecs = new DefaultServerCodecs(eurekaServerConfig);
  
          ApplicationInfoManager applicationInfoManager = null;
  
          if (eurekaClient == null) {
              EurekaInstanceConfig instanceConfig = isCloud(ConfigurationManager.getDeploymentContext())
                      ? new CloudInstanceConfig()
                      : new MyDataCenterInstanceConfig();
              
              applicationInfoManager = new ApplicationInfoManager(
                      instanceConfig, new EurekaConfigBasedInstanceInfoProvider(instanceConfig).get());
              
              EurekaClientConfig eurekaClientConfig = new DefaultEurekaClientConfig();
              eurekaClient = new DiscoveryClient(applicationInfoManager, eurekaClientConfig);
          } else {
              applicationInfoManager = eurekaClient.getApplicationInfoManager();
          }
  
          PeerAwareInstanceRegistry registry;
          if (isAws(applicationInfoManager.getInfo())) {
              registry = new AwsInstanceRegistry(
                      eurekaServerConfig,
                      eurekaClient.getEurekaClientConfig(),
                      serverCodecs,
                      eurekaClient
              );
              awsBinder = new AwsBinderDelegate(eurekaServerConfig, eurekaClient.getEurekaClientConfig(), registry, applicationInfoManager);
              awsBinder.start();
          } else {
              registry = new PeerAwareInstanceRegistryImpl(
                      eurekaServerConfig,
                      eurekaClient.getEurekaClientConfig(),
                      serverCodecs,
                      eurekaClient
              );
          }
  
          PeerEurekaNodes peerEurekaNodes = getPeerEurekaNodes(
                  registry,
                  eurekaServerConfig,
                  eurekaClient.getEurekaClientConfig(),
                  serverCodecs,
                  applicationInfoManager
          );
  
          serverContext = new DefaultEurekaServerContext(
                  eurekaServerConfig,
                  serverCodecs,
                  registry,
                  peerEurekaNodes,
                  applicationInfoManager
          );
  
          EurekaServerContextHolder.initialize(serverContext);
  
          serverContext.initialize();
          logger.info("Initialized server context");
  
          // Copy registry from neighboring eureka node
          int registryCount = registry.syncUp();
          registry.openForTraffic(applicationInfoManager, registryCount);
  
          // Register all monitoring statistics.
          EurekaMonitors.registerAllStats();
      }