<commit_before>module Vcloud
  module EdgeGateway
    module Schema

      POOL_MEMBER_SERVICE_PORT_ENTRY = {
        type: Hash,
        required: false,
        internals: {
          port: { type: 'string_or_number', required: false },
          health_check_port: { type: 'string_or_number', required: false },
        }
      }

      LOAD_BALANCER_MEMBER_ENTRY = {
        type: Hash,
        internals: {
          ip_address: { type: 'ip_address', required: true },
          weight:     { type: 'string_or_number', required: false },
          service_port: {
            type: 'hash',
            required: false,
            internals: {
              http:  POOL_MEMBER_SERVICE_PORT_ENTRY,
              https: POOL_MEMBER_SERVICE_PORT_ENTRY,
              tcp:   POOL_MEMBER_SERVICE_PORT_ENTRY,
            },
          },
        },
      }

      POOL_SERVICE_SECTION = {
        type: Hash,
        required: false,
        allowed_empty: true,
        internals: {
          enabled: { type: 'boolean', required: false },
          port:    { type: 'string_or_number', required: false },
          algorithm: { type: 'enum', required: false,
            acceptable_values: [ 'ROUND_ROBIN', 'IP_HASH', 'URI', 'LEAST_CONNECTED' ]},
          health_check: {
            type: 'hash',
            required: false,
            internals: {
              port: { type: 'string_or_number', required: false },
              uri: { type: 'string', required: false },
              protocol: { type: 'enum', required: false,<commit_msg>Fixes Load balancing algorithm options<commit_after>module Vcloud
  module EdgeGateway
    module Schema

      POOL_MEMBER_SERVICE_PORT_ENTRY = {
        type: Hash,
        required: false,
        internals: {
          port: { type: 'string_or_number', required: false },
          health_check_port: { type: 'string_or_number', required: false },
        }
      }

      LOAD_BALANCER_MEMBER_ENTRY = {
        type: Hash,
        internals: {
          ip_address: { type: 'ip_address', required: true },
          weight:     { type: 'string_or_number', required: false },
          service_port: {
            type: 'hash',
            required: false,
            internals: {
              http:  POOL_MEMBER_SERVICE_PORT_ENTRY,
              https: POOL_MEMBER_SERVICE_PORT_ENTRY,
              tcp:   POOL_MEMBER_SERVICE_PORT_ENTRY,
            },
          },
        },
      }

      POOL_SERVICE_SECTION = {
        type: Hash,
        required: false,
        allowed_empty: true,
        internals: {
          enabled: { type: 'boolean', required: false },
          port:    { type: 'string_or_number', required: false },
          algorithm: { type: 'enum', required: false,
            acceptable_values: [ 'ROUND_ROBIN', 'IP_HASH', 'URI', 'LEAST_CONN' ]},
          health_check: {
            type: 'hash',
            required: false,
            internals: {
              port: { type: 'string_or_number', required: false },
              uri: { type: 'string', required: false },
              protocol: { type: 'enum', required: false,
{'fraction_non_alphanumeric': 0.10682110682110682, 'fraction_numerical': 0.0, 'mean_word_length': 1.8034265103697025, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7656328', 'n_tokens_mistral': 895, 'n_tokens_neox': 896, 'n_words': 197}