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.



7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
# File 'lib/models/porcelain.rb', line 7061

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.



7035
7036
7037
# File 'lib/models/porcelain.rb', line 7035

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



7037
7038
7039
# File 'lib/models/porcelain.rb', line 7037

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



7039
7040
7041
# File 'lib/models/porcelain.rb', line 7039

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



7041
7042
7043
# File 'lib/models/porcelain.rb', line 7041

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



7043
7044
7045
# File 'lib/models/porcelain.rb', line 7043

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



7045
7046
7047
# File 'lib/models/porcelain.rb', line 7045

def file_size
  @file_size
end

#heightObject

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



7047
7048
7049
# File 'lib/models/porcelain.rb', line 7047

def height
  @height
end

#podObject

The target pod of a Kubernetes operation.



7049
7050
7051
# File 'lib/models/porcelain.rb', line 7049

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



7051
7052
7053
# File 'lib/models/porcelain.rb', line 7051

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



7053
7054
7055
# File 'lib/models/porcelain.rb', line 7053

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



7055
7056
7057
# File 'lib/models/porcelain.rb', line 7055

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture.



7057
7058
7059
# File 'lib/models/porcelain.rb', line 7057

def type
  @type
end

#widthObject

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



7059
7060
7061
# File 'lib/models/porcelain.rb', line 7059

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



7091
7092
7093
7094
7095
7096
7097
# File 'lib/models/porcelain.rb', line 7091

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