type: object
required:
  - name
  - type
  - password
  - numberOfConnections
  - acknowledgment
  - autoretry
  - swapRedBlue
  - readOnly
  - port
properties:
  name:
    type: string
  type:
    type: string
    enum:
      - SCREEN
  connection:
    type: string
    enum:
      - VNC
  password:
    type: string
  numberOfConnections:
    type: integer
    default: 1
    minimum: 1
    maximum: 100
  acknowledgment:
    type: string
    default: "No"
  autoretry:
    type: integer
    minimum: 1
    maximum: 3
    default: 1
  swapRedBlue:
    type: boolean
    default: false
  readOnly:
    type: boolean
    default: false
  hostname:
    type: string
    optional: true
    minLength: 1
    maxLength: 40
    pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$
  serviceName:
    type: string
    optional: true
    pattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]*$
    minLength: 1
    maxLength: 40
  port:
    type: integer
    default: 5900
    minimum: 0
    maximum: 65535
  cursor:
    type: string
    enum:
      - EMPTYSTR
      - LOCAL
      - REMOTE
    optional: true
