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.



7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
# File 'lib/models/porcelain.rb', line 7771

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.



7745
7746
7747
# File 'lib/models/porcelain.rb', line 7745

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



7747
7748
7749
# File 'lib/models/porcelain.rb', line 7747

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



7749
7750
7751
# File 'lib/models/porcelain.rb', line 7749

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



7751
7752
7753
# File 'lib/models/porcelain.rb', line 7751

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



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

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



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

def file_size
  @file_size
end

#heightObject

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



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

def height
  @height
end

#podObject

The target pod of a Kubernetes operation.



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

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



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

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



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

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



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

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture.



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

def type
  @type
end

#widthObject

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



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

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



7801
7802
7803
7804
7805
7806
7807
# File 'lib/models/porcelain.rb', line 7801

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