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.



7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
# File 'lib/models/porcelain.rb', line 7779

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.



7753
7754
7755
# File 'lib/models/porcelain.rb', line 7753

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



7755
7756
7757
# File 'lib/models/porcelain.rb', line 7755

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



7757
7758
7759
# File 'lib/models/porcelain.rb', line 7757

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



7759
7760
7761
# File 'lib/models/porcelain.rb', line 7759

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



7761
7762
7763
# File 'lib/models/porcelain.rb', line 7761

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



7763
7764
7765
# File 'lib/models/porcelain.rb', line 7763

def file_size
  @file_size
end

#heightObject

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



7765
7766
7767
# File 'lib/models/porcelain.rb', line 7765

def height
  @height
end

#podObject

The target pod of a Kubernetes operation.



7767
7768
7769
# File 'lib/models/porcelain.rb', line 7767

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



7769
7770
7771
# File 'lib/models/porcelain.rb', line 7769

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



7771
7772
7773
# File 'lib/models/porcelain.rb', line 7771

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



7773
7774
7775
# File 'lib/models/porcelain.rb', line 7773

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture.



7775
7776
7777
# File 'lib/models/porcelain.rb', line 7775

def type
  @type
end

#widthObject

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



7777
7778
7779
# File 'lib/models/porcelain.rb', line 7777

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



7809
7810
7811
7812
7813
7814
7815
# File 'lib/models/porcelain.rb', line 7809

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