Module: Controls

Extended by:
Configurable
Defined in:
lib/controls.rb,
lib/controls/client.rb,
lib/controls/default.rb,
lib/controls/version.rb,
lib/controls/response.rb,
lib/controls/configurable.rb,
lib/controls/client/assets.rb,
lib/controls/client/events.rb,
lib/controls/client/trends.rb,
lib/controls/objects/asset.rb,
lib/controls/objects/error.rb,
lib/controls/objects/event.rb,
lib/controls/objects/trend.rb,
lib/controls/authentication.rb,
lib/controls/client/threats.rb,
lib/controls/objects/threat.rb,
lib/controls/client/coverage.rb,
lib/controls/client/findings.rb,
lib/controls/client/guidance.rb,
lib/controls/objects/guidance.rb,
lib/controls/client/assessments.rb,
lib/controls/objects/assessment.rb,
lib/controls/client/configurations.rb,
lib/controls/client/threat_vectors.rb,
lib/controls/objects/configuration.rb,
lib/controls/objects/threat_vector.rb,
lib/controls/client/security_controls.rb,
lib/controls/objects/asset_collection.rb,
lib/controls/objects/security_control.rb,
lib/controls/objects/guidance/reference.rb,
lib/controls/client/prioritized_guidance.rb,
lib/controls/objects/coverage_information.rb,
lib/controls/objects/prioritized_guidance.rb,
lib/controls/objects/configuration_finding.rb,
lib/controls/objects/configuration_coverage.rb,
lib/controls/objects/security_control_finding.rb,
lib/controls/objects/security_control_coverage.rb,
lib/controls/objects/site_change_event_payload.rb,
lib/controls/objects/product_change_event_payload.rb,
lib/controls/objects/security_control_change_event_payload.rb

Overview

A Ruby client for the **controls**insight API

Defined Under Namespace

Modules: Authentication, Configurable, Default, Response Classes: Assessment, Asset, AssetCollection, Client, Configuration, ConfigurationCoverage, ConfigurationFinding, CoverageInformation, Error, Event, Guidance, SecurityControl, SecurityControlCoverage, SecurityControlFinding, Threat, ThreatVector, Trend

Constant Summary collapse

VERSION =

The version of the Controls gem

'1.7.11'
PrioritizedGuidance =

A guidance subclass for when guidance is returned with priority.

todo
  • this should include Comparable

Class.new(Guidance)
SiteChangeEventPayload =

A representation of a given SiteChangeEventPayload’s payload

Class.new(Dish::Plate)
ProductChangeEventPayload =

A representation of a given ProductChangeEvent’s payload

Class.new(Dish::Plate)
SecurityControlChangeEventPayload =

A representation of a given SecurityControlChangeEvent’s payload

Class.new(Dish::Plate)

Instance Attribute Summary

Attributes included from Configurable

#api_endpoint, #api_version, #connection_options, #default_media_type, #middleware, #netrc, #netrc_file, #password, #user_agent, #username, #web_endpoint

Class Method Summary collapse

Methods included from Configurable

configure, keys, netrc?, setup

Class Method Details

.clientClient

A Client object that includes Configurable

Returns:



13
14
15
16
17
18
19
# File 'lib/controls.rb', line 13

def client
  unless defined?(@client) && @client.same_options?(options)
    @client = Controls::Client.new(options)
  end

  @client
end

.configure {|client| ... } ⇒ Object

Yields the global client to configure in a block

Yields:



24
25
26
# File 'lib/controls.rb', line 24

def configure
  yield client
end

.respond_to_missing?(method_name, include_private = false) ⇒ Boolean

Overrides the respond_to_missing method to act as a proxy for Client

Parameters:

  • method_name (Symbol, String)

    the method name to check for

  • include_private (Boolean) (defaults to: false)

    to include private methods when checking for method response

Returns:

  • (Boolean)

    whether Controls responds to the method



34
35
36
# File 'lib/controls.rb', line 34

def respond_to_missing?(method_name, include_private = false)
  client.respond_to?(method_name, include_private)
end