Class: SDM::QueryCapture

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Overview

A QueryCapture contains additional information about queries against SSH, Kubernetes, and RDP resources.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client_command: nil, command: nil, container: nil, env: nil, file_name: nil, file_size: nil, height: nil, pod: nil, request_body: nil, request_method: nil, request_uri: nil, type: nil, width: nil) ⇒ QueryCapture

Returns a new instance of QueryCapture.



6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
# File 'lib/models/porcelain.rb', line 6346

def initialize(
  client_command: nil,
  command: nil,
  container: nil,
  env: nil,
  file_name: nil,
  file_size: nil,
  height: nil,
  pod: nil,
  request_body: nil,
  request_method: nil,
  request_uri: nil,
  type: nil,
  width: nil
)
  @client_command = client_command == nil ? "" : client_command
  @command = command == nil ? "" : command
  @container = container == nil ? "" : container
  @env = env == nil ? {} : env
  @file_name = file_name == nil ? "" : file_name
  @file_size = file_size == nil ? 0 : file_size
  @height = height == nil ? 0 : height
  @pod = pod == nil ? "" : pod
  @request_body = request_body == nil ? "" : request_body
  @request_method = request_method == nil ? "" : request_method
  @request_uri = request_uri == nil ? "" : request_uri
  @type = type == nil ? "" : type
  @width = width == nil ? 0 : width
end

Instance Attribute Details

#client_commandObject

The command executed on the client for a Kubernetes session.



6320
6321
6322
# File 'lib/models/porcelain.rb', line 6320

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



6322
6323
6324
# File 'lib/models/porcelain.rb', line 6322

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



6324
6325
6326
# File 'lib/models/porcelain.rb', line 6324

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



6326
6327
6328
# File 'lib/models/porcelain.rb', line 6326

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



6328
6329
6330
# File 'lib/models/porcelain.rb', line 6328

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



6330
6331
6332
# File 'lib/models/porcelain.rb', line 6330

def file_size
  @file_size
end

#heightObject

The height of the terminal or window for SSH, Kubernetes, and RDP interactive sessions.



6332
6333
6334
# File 'lib/models/porcelain.rb', line 6332

def height
  @height
end

#podObject

The target pod of a Kubernetes operation.



6334
6335
6336
# File 'lib/models/porcelain.rb', line 6334

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



6336
6337
6338
# File 'lib/models/porcelain.rb', line 6336

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



6338
6339
6340
# File 'lib/models/porcelain.rb', line 6338

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



6340
6341
6342
# File 'lib/models/porcelain.rb', line 6340

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture.



6342
6343
6344
# File 'lib/models/porcelain.rb', line 6342

def type
  @type
end

#widthObject

The width of the terminal or window for SSH, Kubernetes, and RDP interactive sessions.



6344
6345
6346
# File 'lib/models/porcelain.rb', line 6344

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



6376
6377
6378
6379
6380
6381
6382
# File 'lib/models/porcelain.rb', line 6376

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end