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.



6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
# File 'lib/models/porcelain.rb', line 6189

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.



6163
6164
6165
# File 'lib/models/porcelain.rb', line 6163

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



6165
6166
6167
# File 'lib/models/porcelain.rb', line 6165

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



6167
6168
6169
# File 'lib/models/porcelain.rb', line 6167

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



6169
6170
6171
# File 'lib/models/porcelain.rb', line 6169

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



6171
6172
6173
# File 'lib/models/porcelain.rb', line 6171

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



6173
6174
6175
# File 'lib/models/porcelain.rb', line 6173

def file_size
  @file_size
end

#heightObject

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



6175
6176
6177
# File 'lib/models/porcelain.rb', line 6175

def height
  @height
end

#podObject

The target pod of a Kubernetes operation.



6177
6178
6179
# File 'lib/models/porcelain.rb', line 6177

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



6179
6180
6181
# File 'lib/models/porcelain.rb', line 6179

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



6181
6182
6183
# File 'lib/models/porcelain.rb', line 6181

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



6183
6184
6185
# File 'lib/models/porcelain.rb', line 6183

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture.



6185
6186
6187
# File 'lib/models/porcelain.rb', line 6185

def type
  @type
end

#widthObject

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



6187
6188
6189
# File 'lib/models/porcelain.rb', line 6187

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



6219
6220
6221
6222
6223
6224
6225
# File 'lib/models/porcelain.rb', line 6219

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