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.



7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
# File 'lib/models/porcelain.rb', line 7171

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.



7145
7146
7147
# File 'lib/models/porcelain.rb', line 7145

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



7147
7148
7149
# File 'lib/models/porcelain.rb', line 7147

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



7149
7150
7151
# File 'lib/models/porcelain.rb', line 7149

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



7151
7152
7153
# File 'lib/models/porcelain.rb', line 7151

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



7153
7154
7155
# File 'lib/models/porcelain.rb', line 7153

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



7155
7156
7157
# File 'lib/models/porcelain.rb', line 7155

def file_size
  @file_size
end

#heightObject

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



7157
7158
7159
# File 'lib/models/porcelain.rb', line 7157

def height
  @height
end

#podObject

The target pod of a Kubernetes operation.



7159
7160
7161
# File 'lib/models/porcelain.rb', line 7159

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



7161
7162
7163
# File 'lib/models/porcelain.rb', line 7161

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



7163
7164
7165
# File 'lib/models/porcelain.rb', line 7163

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



7165
7166
7167
# File 'lib/models/porcelain.rb', line 7165

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture.



7167
7168
7169
# File 'lib/models/porcelain.rb', line 7167

def type
  @type
end

#widthObject

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



7169
7170
7171
# File 'lib/models/porcelain.rb', line 7169

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



7201
7202
7203
7204
7205
7206
7207
# File 'lib/models/porcelain.rb', line 7201

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