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.



8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
# File 'lib/models/porcelain.rb', line 8255

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.



8229
8230
8231
# File 'lib/models/porcelain.rb', line 8229

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



8231
8232
8233
# File 'lib/models/porcelain.rb', line 8231

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



8233
8234
8235
# File 'lib/models/porcelain.rb', line 8233

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



8235
8236
8237
# File 'lib/models/porcelain.rb', line 8235

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



8237
8238
8239
# File 'lib/models/porcelain.rb', line 8237

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



8239
8240
8241
# File 'lib/models/porcelain.rb', line 8239

def file_size
  @file_size
end

#heightObject

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



8241
8242
8243
# File 'lib/models/porcelain.rb', line 8241

def height
  @height
end

#podObject

The target pod of a Kubernetes operation.



8243
8244
8245
# File 'lib/models/porcelain.rb', line 8243

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



8245
8246
8247
# File 'lib/models/porcelain.rb', line 8245

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



8247
8248
8249
# File 'lib/models/porcelain.rb', line 8247

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



8249
8250
8251
# File 'lib/models/porcelain.rb', line 8249

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture.



8251
8252
8253
# File 'lib/models/porcelain.rb', line 8251

def type
  @type
end

#widthObject

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



8253
8254
8255
# File 'lib/models/porcelain.rb', line 8253

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



8285
8286
8287
8288
8289
8290
8291
# File 'lib/models/porcelain.rb', line 8285

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