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.



6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
# File 'lib/models/porcelain.rb', line 6117

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.



6091
6092
6093
# File 'lib/models/porcelain.rb', line 6091

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



6093
6094
6095
# File 'lib/models/porcelain.rb', line 6093

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



6095
6096
6097
# File 'lib/models/porcelain.rb', line 6095

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



6097
6098
6099
# File 'lib/models/porcelain.rb', line 6097

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



6099
6100
6101
# File 'lib/models/porcelain.rb', line 6099

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



6101
6102
6103
# File 'lib/models/porcelain.rb', line 6101

def file_size
  @file_size
end

#heightObject

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



6103
6104
6105
# File 'lib/models/porcelain.rb', line 6103

def height
  @height
end

#podObject

The target pod of a Kubernetes operation.



6105
6106
6107
# File 'lib/models/porcelain.rb', line 6105

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



6107
6108
6109
# File 'lib/models/porcelain.rb', line 6107

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



6109
6110
6111
# File 'lib/models/porcelain.rb', line 6109

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



6111
6112
6113
# File 'lib/models/porcelain.rb', line 6111

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture.



6113
6114
6115
# File 'lib/models/porcelain.rb', line 6113

def type
  @type
end

#widthObject

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



6115
6116
6117
# File 'lib/models/porcelain.rb', line 6115

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



6147
6148
6149
6150
6151
6152
6153
# File 'lib/models/porcelain.rb', line 6147

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