apimatic-semgrep-sdk 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +28 -0
- data/README.md +205 -0
- data/bin/console +15 -0
- data/lib/semgrep_web_app/api_helper.rb +10 -0
- data/lib/semgrep_web_app/apis/base_api.rb +67 -0
- data/lib/semgrep_web_app/apis/deployments_service_api.rb +29 -0
- data/lib/semgrep_web_app/apis/findings_service_api.rb +107 -0
- data/lib/semgrep_web_app/apis/misc_service_api.rb +47 -0
- data/lib/semgrep_web_app/apis/policies_service_api.rb +97 -0
- data/lib/semgrep_web_app/apis/projects_service_api.rb +238 -0
- data/lib/semgrep_web_app/apis/scans_service_api.rb +65 -0
- data/lib/semgrep_web_app/apis/secrets_service_api.rb +55 -0
- data/lib/semgrep_web_app/apis/supply_chain_service_api.rb +154 -0
- data/lib/semgrep_web_app/apis/ticketing_service_api.rb +144 -0
- data/lib/semgrep_web_app/apis/triage_service_api.rb +43 -0
- data/lib/semgrep_web_app/client.rb +136 -0
- data/lib/semgrep_web_app/configuration.rb +178 -0
- data/lib/semgrep_web_app/exceptions/api_exception.rb +21 -0
- data/lib/semgrep_web_app/http/api_response.rb +19 -0
- data/lib/semgrep_web_app/http/auth/semgrep_admin_jwt.rb +53 -0
- data/lib/semgrep_web_app/http/auth/semgrep_jwt.rb +53 -0
- data/lib/semgrep_web_app/http/auth/semgrep_web_token.rb +53 -0
- data/lib/semgrep_web_app/http/http_call_back.rb +10 -0
- data/lib/semgrep_web_app/http/http_method_enum.rb +10 -0
- data/lib/semgrep_web_app/http/http_request.rb +10 -0
- data/lib/semgrep_web_app/http/http_response.rb +10 -0
- data/lib/semgrep_web_app/http/proxy_settings.rb +22 -0
- data/lib/semgrep_web_app/logging/configuration/api_logging_configuration.rb +186 -0
- data/lib/semgrep_web_app/logging/sdk_logger.rb +17 -0
- data/lib/semgrep_web_app/models/add_project_tags_request.rb +96 -0
- data/lib/semgrep_web_app/models/add_project_tags_response.rb +73 -0
- data/lib/semgrep_web_app/models/ai_powered_scan_finding.rb +426 -0
- data/lib/semgrep_web_app/models/ai_sast_findings.rb +85 -0
- data/lib/semgrep_web_app/models/api_v1_deployments_findings_response.rb +87 -0
- data/lib/semgrep_web_app/models/assistant.rb +127 -0
- data/lib/semgrep_web_app/models/autofix.rb +98 -0
- data/lib/semgrep_web_app/models/autotriage.rb +98 -0
- data/lib/semgrep_web_app/models/autotriage_verdict.rb +36 -0
- data/lib/semgrep_web_app/models/autotriage_verdict2.rb +38 -0
- data/lib/semgrep_web_app/models/base_model.rb +110 -0
- data/lib/semgrep_web_app/models/bulk_triage_request.rb +393 -0
- data/lib/semgrep_web_app/models/bulk_triage_response.rb +83 -0
- data/lib/semgrep_web_app/models/click_to_fix_failure.rb +95 -0
- data/lib/semgrep_web_app/models/click_to_fix_pr.rb +95 -0
- data/lib/semgrep_web_app/models/click_to_fix_pr_state.rb +38 -0
- data/lib/semgrep_web_app/models/component.rb +95 -0
- data/lib/semgrep_web_app/models/confidence.rb +42 -0
- data/lib/semgrep_web_app/models/confidence1.rb +40 -0
- data/lib/semgrep_web_app/models/confidence2.rb +40 -0
- data/lib/semgrep_web_app/models/confidence3.rb +40 -0
- data/lib/semgrep_web_app/models/confidence7.rb +41 -0
- data/lib/semgrep_web_app/models/confidence8.rb +42 -0
- data/lib/semgrep_web_app/models/create_sbom_export_request.rb +176 -0
- data/lib/semgrep_web_app/models/create_sbom_export_response.rb +74 -0
- data/lib/semgrep_web_app/models/create_ticket_request.rb +393 -0
- data/lib/semgrep_web_app/models/cyclonedx_version.rb +48 -0
- data/lib/semgrep_web_app/models/delete_project_response.rb +74 -0
- data/lib/semgrep_web_app/models/delete_project_tags_response.rb +73 -0
- data/lib/semgrep_web_app/models/deployment.rb +102 -0
- data/lib/semgrep_web_app/models/ecosystem.rb +91 -0
- data/lib/semgrep_web_app/models/ecosystem1.rb +92 -0
- data/lib/semgrep_web_app/models/ecosystem2.rb +76 -0
- data/lib/semgrep_web_app/models/endpoint_reference.rb +72 -0
- data/lib/semgrep_web_app/models/epss_probability.rb +45 -0
- data/lib/semgrep_web_app/models/epss_score.rb +95 -0
- data/lib/semgrep_web_app/models/exposures.rb +50 -0
- data/lib/semgrep_web_app/models/exposures2.rb +51 -0
- data/lib/semgrep_web_app/models/external_ticket.rb +116 -0
- data/lib/semgrep_web_app/models/finding_location.rb +126 -0
- data/lib/semgrep_web_app/models/finding_repository.rb +95 -0
- data/lib/semgrep_web_app/models/finding_rule.rb +158 -0
- data/lib/semgrep_web_app/models/fix_recommendation.rb +95 -0
- data/lib/semgrep_web_app/models/float_range.rb +85 -0
- data/lib/semgrep_web_app/models/format.rb +27 -0
- data/lib/semgrep_web_app/models/found_dependency.rb +128 -0
- data/lib/semgrep_web_app/models/get_project_response.rb +73 -0
- data/lib/semgrep_web_app/models/get_sbom_export_response.rb +100 -0
- data/lib/semgrep_web_app/models/guidance.rb +98 -0
- data/lib/semgrep_web_app/models/issue_type.rb +40 -0
- data/lib/semgrep_web_app/models/issue_type1.rb +40 -0
- data/lib/semgrep_web_app/models/issue_type2.rb +42 -0
- data/lib/semgrep_web_app/models/license_policy_settings.rb +42 -0
- data/lib/semgrep_web_app/models/link_ticket_request.rb +93 -0
- data/lib/semgrep_web_app/models/list_dependencies_request.rb +108 -0
- data/lib/semgrep_web_app/models/list_dependencies_response.rb +102 -0
- data/lib/semgrep_web_app/models/list_findings_response.rb +100 -0
- data/lib/semgrep_web_app/models/list_lockfiles_for_dependencies_request.rb +118 -0
- data/lib/semgrep_web_app/models/list_lockfiles_for_dependencies_response.rb +103 -0
- data/lib/semgrep_web_app/models/list_project.rb +145 -0
- data/lib/semgrep_web_app/models/list_projects_response.rb +82 -0
- data/lib/semgrep_web_app/models/list_repositories_for_dependencies_request.rb +107 -0
- data/lib/semgrep_web_app/models/list_repositories_for_dependencies_response.rb +103 -0
- data/lib/semgrep_web_app/models/managed_scan_config.rb +85 -0
- data/lib/semgrep_web_app/models/metadata_component_type.rb +101 -0
- data/lib/semgrep_web_app/models/mode.rb +48 -0
- data/lib/semgrep_web_app/models/new_triage_reason.rb +48 -0
- data/lib/semgrep_web_app/models/new_triage_state.rb +48 -0
- data/lib/semgrep_web_app/models/policy.rb +118 -0
- data/lib/semgrep_web_app/models/policy_mode.rb +48 -0
- data/lib/semgrep_web_app/models/policy_mode1.rb +40 -0
- data/lib/semgrep_web_app/models/policy_mode3.rb +51 -0
- data/lib/semgrep_web_app/models/policy_reference.rb +105 -0
- data/lib/semgrep_web_app/models/product_type.rb +38 -0
- data/lib/semgrep_web_app/models/products.rb +46 -0
- data/lib/semgrep_web_app/models/project.rb +157 -0
- data/lib/semgrep_web_app/models/protos_ai_v1_autotriage.rb +154 -0
- data/lib/semgrep_web_app/models/protos_ai_v1_autotriage_feedback.rb +98 -0
- data/lib/semgrep_web_app/models/protos_common_v1_review_comment.rb +90 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_create_ticket_response.rb +123 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_create_ticket_response_ticket_creation_failed.rb +85 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_create_ticket_response_ticket_creation_skipped.rb +85 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_create_ticket_response_ticket_creation_success.rb +106 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_delete_ticket_response.rb +76 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_diff_scan.rb +75 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_full_scan.rb +75 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_get_bootstrap_sms_vpc_response.rb +130 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_get_scan_response.rb +168 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_get_scan_response_scan_meta.rb +256 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_link_ticket_response.rb +119 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_list_deployments_response.rb +85 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_list_policies_response.rb +84 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_list_policy_rules_response.rb +104 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_list_secrets_path_response.rb +104 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_search_scans_response.rb +94 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_unlink_ticket_response.rb +77 -0
- data/lib/semgrep_web_app/models/protos_openapi_v1_update_policy_response.rb +88 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_code_location.rb +144 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_dependency.rb +87 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_dependency_filter.rb +199 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_found_dependency.rb +174 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_lockfile_dependency_summary.rb +87 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_package_filter.rb +124 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_repository_dependency_summary.rb +111 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_sbom_format_version.rb +109 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_sbom_metadata_contact.rb +95 -0
- data/lib/semgrep_web_app/models/protos_sca_v1_sbom_metadata_supplier.rb +95 -0
- data/lib/semgrep_web_app/models/protos_scan_v1_scan_findings_counts.rb +105 -0
- data/lib/semgrep_web_app/models/protos_scan_v1_scan_public.rb +228 -0
- data/lib/semgrep_web_app/models/protos_secrets_v1_historical_info.rb +116 -0
- data/lib/semgrep_web_app/models/protos_secrets_v1_secrets_finding.rb +320 -0
- data/lib/semgrep_web_app/models/protos_secrets_v1_secrets_finding_repository.rb +121 -0
- data/lib/semgrep_web_app/models/protos_ticketing_v1_external_ticket.rb +106 -0
- data/lib/semgrep_web_app/models/rating.rb +38 -0
- data/lib/semgrep_web_app/models/reachability.rb +48 -0
- data/lib/semgrep_web_app/models/repository_visibility.rb +40 -0
- data/lib/semgrep_web_app/models/review_comment.rb +100 -0
- data/lib/semgrep_web_app/models/risk.rb +40 -0
- data/lib/semgrep_web_app/models/rule.rb +292 -0
- data/lib/semgrep_web_app/models/rule_explanation.rb +98 -0
- data/lib/semgrep_web_app/models/sast_finding.rb +426 -0
- data/lib/semgrep_web_app/models/sast_findings.rb +84 -0
- data/lib/semgrep_web_app/models/sbom_output_format.rb +37 -0
- data/lib/semgrep_web_app/models/sca_finding.rb +458 -0
- data/lib/semgrep_web_app/models/sca_findings.rb +85 -0
- data/lib/semgrep_web_app/models/scm_type.rb +70 -0
- data/lib/semgrep_web_app/models/search_scans_request.rb +202 -0
- data/lib/semgrep_web_app/models/severities.rb +44 -0
- data/lib/semgrep_web_app/models/severities2.rb +45 -0
- data/lib/semgrep_web_app/models/severity.rb +46 -0
- data/lib/semgrep_web_app/models/severity1.rb +45 -0
- data/lib/semgrep_web_app/models/severity4.rb +46 -0
- data/lib/semgrep_web_app/models/severity5.rb +48 -0
- data/lib/semgrep_web_app/models/source.rb +42 -0
- data/lib/semgrep_web_app/models/state.rb +42 -0
- data/lib/semgrep_web_app/models/status.rb +55 -0
- data/lib/semgrep_web_app/models/status1.rb +52 -0
- data/lib/semgrep_web_app/models/status3.rb +44 -0
- data/lib/semgrep_web_app/models/status6.rb +55 -0
- data/lib/semgrep_web_app/models/status7.rb +59 -0
- data/lib/semgrep_web_app/models/status8.rb +61 -0
- data/lib/semgrep_web_app/models/status9.rb +55 -0
- data/lib/semgrep_web_app/models/statuses.rb +63 -0
- data/lib/semgrep_web_app/models/toggle_project_managed_scan_request.rb +108 -0
- data/lib/semgrep_web_app/models/toggle_project_managed_scan_response.rb +73 -0
- data/lib/semgrep_web_app/models/transitivities.rb +40 -0
- data/lib/semgrep_web_app/models/transitivities2.rb +42 -0
- data/lib/semgrep_web_app/models/transitivity.rb +41 -0
- data/lib/semgrep_web_app/models/transitivity1.rb +42 -0
- data/lib/semgrep_web_app/models/transitivity2.rb +40 -0
- data/lib/semgrep_web_app/models/triage_reason.rb +48 -0
- data/lib/semgrep_web_app/models/triage_reasons.rb +48 -0
- data/lib/semgrep_web_app/models/triage_reasons2.rb +50 -0
- data/lib/semgrep_web_app/models/triage_state.rb +54 -0
- data/lib/semgrep_web_app/models/unlink_ticket_request.rb +83 -0
- data/lib/semgrep_web_app/models/update_policy_request.rb +113 -0
- data/lib/semgrep_web_app/models/update_project_request.rb +121 -0
- data/lib/semgrep_web_app/models/update_project_response.rb +73 -0
- data/lib/semgrep_web_app/models/usage.rb +99 -0
- data/lib/semgrep_web_app/models/validation_state.rb +45 -0
- data/lib/semgrep_web_app/models/validation_state2.rb +47 -0
- data/lib/semgrep_web_app/models/validation_state3.rb +48 -0
- data/lib/semgrep_web_app/models/verdict.rb +41 -0
- data/lib/semgrep_web_app/models/verdict1.rb +38 -0
- data/lib/semgrep_web_app/models/visibility.rb +42 -0
- data/lib/semgrep_web_app/utilities/date_time_helper.rb +11 -0
- data/lib/semgrep_web_app/utilities/file_wrapper.rb +28 -0
- data/lib/semgrep_web_app/utilities/union_type_lookup.rb +34 -0
- data/lib/semgrep_web_app.rb +245 -0
- metadata +283 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# Filter findings by Click-to-Fix PR state. If not specified, returns all
|
|
8
|
+
# findings regardless of autofix PR status. This filter applies to both sast
|
|
9
|
+
# and sca issue types. Valid values: open, merged
|
|
10
|
+
class ClickToFixPrState
|
|
11
|
+
CLICK_TO_FIX_PR_STATE = [
|
|
12
|
+
# TODO: Write general description for OPEN
|
|
13
|
+
OPEN = 'open'.freeze,
|
|
14
|
+
|
|
15
|
+
# TODO: Write general description for MERGED
|
|
16
|
+
MERGED = 'merged'.freeze
|
|
17
|
+
].freeze
|
|
18
|
+
|
|
19
|
+
def self.validate(value)
|
|
20
|
+
return false if value.nil?
|
|
21
|
+
|
|
22
|
+
CLICK_TO_FIX_PR_STATE.include?(value)
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def self.from_value(value, default_value = OPEN)
|
|
26
|
+
return default_value if value.nil?
|
|
27
|
+
|
|
28
|
+
str = value.to_s.strip
|
|
29
|
+
|
|
30
|
+
case str.downcase
|
|
31
|
+
when 'open' then OPEN
|
|
32
|
+
when 'merged' then MERGED
|
|
33
|
+
else
|
|
34
|
+
default_value
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# Semgrep Assistant's guess as for what the matched source code's purpose is
|
|
8
|
+
class Component < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# Component risk level
|
|
13
|
+
# @return [Risk]
|
|
14
|
+
attr_accessor :risk
|
|
15
|
+
|
|
16
|
+
# Component tag
|
|
17
|
+
# @return [String]
|
|
18
|
+
attr_accessor :tag
|
|
19
|
+
|
|
20
|
+
# A mapping from model property names to API property names.
|
|
21
|
+
def self.names
|
|
22
|
+
@_hash = {} if @_hash.nil?
|
|
23
|
+
@_hash['risk'] = 'risk'
|
|
24
|
+
@_hash['tag'] = 'tag'
|
|
25
|
+
@_hash
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# An array for optional fields
|
|
29
|
+
def self.optionals
|
|
30
|
+
%w[
|
|
31
|
+
risk
|
|
32
|
+
tag
|
|
33
|
+
]
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# An array for nullable fields
|
|
37
|
+
def self.nullables
|
|
38
|
+
[]
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def initialize(risk: SKIP, tag: SKIP, additional_properties: nil)
|
|
42
|
+
# Add additional model properties to the instance
|
|
43
|
+
additional_properties = {} if additional_properties.nil?
|
|
44
|
+
|
|
45
|
+
@risk = risk unless risk == SKIP
|
|
46
|
+
@tag = tag unless tag == SKIP
|
|
47
|
+
@additional_properties = additional_properties
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# Creates an instance of the object from a hash.
|
|
51
|
+
def self.from_hash(hash)
|
|
52
|
+
return nil unless hash
|
|
53
|
+
|
|
54
|
+
# Extract variables from the hash.
|
|
55
|
+
risk = hash.key?('risk') ? hash['risk'] : SKIP
|
|
56
|
+
tag = hash.key?('tag') ? hash['tag'] : SKIP
|
|
57
|
+
|
|
58
|
+
# Create a new hash for additional properties, removing known properties.
|
|
59
|
+
new_hash = hash.reject { |k, _| names.value?(k) }
|
|
60
|
+
|
|
61
|
+
additional_properties = APIHelper.get_additional_properties(
|
|
62
|
+
new_hash, proc { |value| value }
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
# Create object from extracted values.
|
|
66
|
+
Component.new(risk: risk,
|
|
67
|
+
tag: tag,
|
|
68
|
+
additional_properties: additional_properties)
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
# Validates an instance of the object from a given value.
|
|
72
|
+
# @param [Component | Hash] The value against the validation is performed.
|
|
73
|
+
def self.validate(value)
|
|
74
|
+
return true if value.instance_of? self
|
|
75
|
+
|
|
76
|
+
return false unless value.instance_of? Hash
|
|
77
|
+
|
|
78
|
+
true
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
# Provides a human-readable string representation of the object.
|
|
82
|
+
def to_s
|
|
83
|
+
class_name = self.class.name.split('::').last
|
|
84
|
+
"<#{class_name} risk: #{@risk}, tag: #{@tag}, additional_properties:"\
|
|
85
|
+
" #{@additional_properties}>"
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
89
|
+
def inspect
|
|
90
|
+
class_name = self.class.name.split('::').last
|
|
91
|
+
"<#{class_name} risk: #{@risk.inspect}, tag: #{@tag.inspect}, additional_properties:"\
|
|
92
|
+
" #{@additional_properties}>"
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# Confidence based on the Rule's false-positive rate. | value | description |
|
|
8
|
+
# |-------|---------------| | CONFIDENCE_HIGH | | | CONFIDENCE_MEDIUM | | |
|
|
9
|
+
# CONFIDENCE_LOW | |
|
|
10
|
+
class Confidence
|
|
11
|
+
CONFIDENCE = [
|
|
12
|
+
# TODO: Write general description for CONFIDENCE_HIGH
|
|
13
|
+
CONFIDENCE_HIGH = 'CONFIDENCE_HIGH'.freeze,
|
|
14
|
+
|
|
15
|
+
# TODO: Write general description for CONFIDENCE_MEDIUM
|
|
16
|
+
CONFIDENCE_MEDIUM = 'CONFIDENCE_MEDIUM'.freeze,
|
|
17
|
+
|
|
18
|
+
# TODO: Write general description for CONFIDENCE_LOW
|
|
19
|
+
CONFIDENCE_LOW = 'CONFIDENCE_LOW'.freeze
|
|
20
|
+
].freeze
|
|
21
|
+
|
|
22
|
+
def self.validate(value)
|
|
23
|
+
return false if value.nil?
|
|
24
|
+
|
|
25
|
+
CONFIDENCE.include?(value)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def self.from_value(value, default_value = CONFIDENCE_HIGH)
|
|
29
|
+
return default_value if value.nil?
|
|
30
|
+
|
|
31
|
+
str = value.to_s.strip
|
|
32
|
+
|
|
33
|
+
case str.downcase
|
|
34
|
+
when 'confidence_high' then CONFIDENCE_HIGH
|
|
35
|
+
when 'confidence_medium' then CONFIDENCE_MEDIUM
|
|
36
|
+
when 'confidence_low' then CONFIDENCE_LOW
|
|
37
|
+
else
|
|
38
|
+
default_value
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# Confidence of the finding, derived from the rule that triggered it
|
|
8
|
+
class Confidence1
|
|
9
|
+
CONFIDENCE1 = [
|
|
10
|
+
# TODO: Write general description for LOW
|
|
11
|
+
LOW = 'low'.freeze,
|
|
12
|
+
|
|
13
|
+
# TODO: Write general description for MEDIUM
|
|
14
|
+
MEDIUM = 'medium'.freeze,
|
|
15
|
+
|
|
16
|
+
# TODO: Write general description for HIGH
|
|
17
|
+
HIGH = 'high'.freeze
|
|
18
|
+
].freeze
|
|
19
|
+
|
|
20
|
+
def self.validate(value)
|
|
21
|
+
return false if value.nil?
|
|
22
|
+
|
|
23
|
+
CONFIDENCE1.include?(value)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def self.from_value(value, default_value = LOW)
|
|
27
|
+
return default_value if value.nil?
|
|
28
|
+
|
|
29
|
+
str = value.to_s.strip
|
|
30
|
+
|
|
31
|
+
case str.downcase
|
|
32
|
+
when 'low' then LOW
|
|
33
|
+
when 'medium' then MEDIUM
|
|
34
|
+
when 'high' then HIGH
|
|
35
|
+
else
|
|
36
|
+
default_value
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# Confidence level of the rule
|
|
8
|
+
class Confidence2
|
|
9
|
+
CONFIDENCE2 = [
|
|
10
|
+
# TODO: Write general description for LOW
|
|
11
|
+
LOW = 'low'.freeze,
|
|
12
|
+
|
|
13
|
+
# TODO: Write general description for MEDIUM
|
|
14
|
+
MEDIUM = 'medium'.freeze,
|
|
15
|
+
|
|
16
|
+
# TODO: Write general description for HIGH
|
|
17
|
+
HIGH = 'high'.freeze
|
|
18
|
+
].freeze
|
|
19
|
+
|
|
20
|
+
def self.validate(value)
|
|
21
|
+
return false if value.nil?
|
|
22
|
+
|
|
23
|
+
CONFIDENCE2.include?(value)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def self.from_value(value, default_value = LOW)
|
|
27
|
+
return default_value if value.nil?
|
|
28
|
+
|
|
29
|
+
str = value.to_s.strip
|
|
30
|
+
|
|
31
|
+
case str.downcase
|
|
32
|
+
when 'low' then LOW
|
|
33
|
+
when 'medium' then MEDIUM
|
|
34
|
+
when 'high' then HIGH
|
|
35
|
+
else
|
|
36
|
+
default_value
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# List of confidence levels to filter by
|
|
8
|
+
class Confidence3
|
|
9
|
+
CONFIDENCE3 = [
|
|
10
|
+
# TODO: Write general description for LOW
|
|
11
|
+
LOW = 'low'.freeze,
|
|
12
|
+
|
|
13
|
+
# TODO: Write general description for MEDIUM
|
|
14
|
+
MEDIUM = 'medium'.freeze,
|
|
15
|
+
|
|
16
|
+
# TODO: Write general description for HIGH
|
|
17
|
+
HIGH = 'high'.freeze
|
|
18
|
+
].freeze
|
|
19
|
+
|
|
20
|
+
def self.validate(value)
|
|
21
|
+
return false if value.nil?
|
|
22
|
+
|
|
23
|
+
CONFIDENCE3.include?(value)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def self.from_value(value, default_value = LOW)
|
|
27
|
+
return default_value if value.nil?
|
|
28
|
+
|
|
29
|
+
str = value.to_s.strip
|
|
30
|
+
|
|
31
|
+
case str.downcase
|
|
32
|
+
when 'low' then LOW
|
|
33
|
+
when 'medium' then MEDIUM
|
|
34
|
+
when 'high' then HIGH
|
|
35
|
+
else
|
|
36
|
+
default_value
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# Confidence of the finding. | value | description | |-------|---------------|
|
|
8
|
+
# | CONFIDENCE_HIGH | | | CONFIDENCE_MEDIUM | | | CONFIDENCE_LOW | |
|
|
9
|
+
class Confidence7
|
|
10
|
+
CONFIDENCE7 = [
|
|
11
|
+
# TODO: Write general description for CONFIDENCE_HIGH
|
|
12
|
+
CONFIDENCE_HIGH = 'CONFIDENCE_HIGH'.freeze,
|
|
13
|
+
|
|
14
|
+
# TODO: Write general description for CONFIDENCE_MEDIUM
|
|
15
|
+
CONFIDENCE_MEDIUM = 'CONFIDENCE_MEDIUM'.freeze,
|
|
16
|
+
|
|
17
|
+
# TODO: Write general description for CONFIDENCE_LOW
|
|
18
|
+
CONFIDENCE_LOW = 'CONFIDENCE_LOW'.freeze
|
|
19
|
+
].freeze
|
|
20
|
+
|
|
21
|
+
def self.validate(value)
|
|
22
|
+
return false if value.nil?
|
|
23
|
+
|
|
24
|
+
CONFIDENCE7.include?(value)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def self.from_value(value, default_value = CONFIDENCE_HIGH)
|
|
28
|
+
return default_value if value.nil?
|
|
29
|
+
|
|
30
|
+
str = value.to_s.strip
|
|
31
|
+
|
|
32
|
+
case str.downcase
|
|
33
|
+
when 'confidence_high' then CONFIDENCE_HIGH
|
|
34
|
+
when 'confidence_medium' then CONFIDENCE_MEDIUM
|
|
35
|
+
when 'confidence_low' then CONFIDENCE_LOW
|
|
36
|
+
else
|
|
37
|
+
default_value
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# Which rule confidence level do you want to include? If not specified,
|
|
8
|
+
# includes all. This filter is applicable when `issue_type` is `sast` or
|
|
9
|
+
# unspecified. Valid values: low, medium, high
|
|
10
|
+
class Confidence8
|
|
11
|
+
CONFIDENCE8 = [
|
|
12
|
+
# TODO: Write general description for LOW
|
|
13
|
+
LOW = 'low'.freeze,
|
|
14
|
+
|
|
15
|
+
# TODO: Write general description for MEDIUM
|
|
16
|
+
MEDIUM = 'medium'.freeze,
|
|
17
|
+
|
|
18
|
+
# TODO: Write general description for HIGH
|
|
19
|
+
HIGH = 'high'.freeze
|
|
20
|
+
].freeze
|
|
21
|
+
|
|
22
|
+
def self.validate(value)
|
|
23
|
+
return false if value.nil?
|
|
24
|
+
|
|
25
|
+
CONFIDENCE8.include?(value)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def self.from_value(value, default_value = LOW)
|
|
29
|
+
return default_value if value.nil?
|
|
30
|
+
|
|
31
|
+
str = value.to_s.strip
|
|
32
|
+
|
|
33
|
+
case str.downcase
|
|
34
|
+
when 'low' then LOW
|
|
35
|
+
when 'medium' then MEDIUM
|
|
36
|
+
when 'high' then HIGH
|
|
37
|
+
else
|
|
38
|
+
default_value
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# CreateSbomExportRequest Model.
|
|
8
|
+
class CreateSbomExportRequest < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# Deployment ID (numeric). Example: `123`. Can be found at `/deployments`,
|
|
13
|
+
# or in your Settings in the web UI.
|
|
14
|
+
# @return [String]
|
|
15
|
+
attr_accessor :deployment_id
|
|
16
|
+
|
|
17
|
+
# Deployment ID (numeric). Example: `123`. Can be found at `/deployments`,
|
|
18
|
+
# or in your Settings in the web UI.
|
|
19
|
+
# @return [ProtosScaV1SbomFormatVersion]
|
|
20
|
+
attr_accessor :format_version
|
|
21
|
+
|
|
22
|
+
# Metadata component type for the SBOM export.
|
|
23
|
+
# | value | description |
|
|
24
|
+
# |-------|---------------|
|
|
25
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_APPLICATION | |
|
|
26
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_FRAMEWORK | |
|
|
27
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_LIBRARY | |
|
|
28
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_CONTAINER | |
|
|
29
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_PLATFORM | |
|
|
30
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_OPERATING_SYSTEM | |
|
|
31
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_DEVICE | |
|
|
32
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_DEVICE_DRIVER | |
|
|
33
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_FIRMWARE | |
|
|
34
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_FILE | |
|
|
35
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_MACHINE_LEARNING_MODEL | |
|
|
36
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_DATA | |
|
|
37
|
+
# @return [MetadataComponentType]
|
|
38
|
+
attr_accessor :metadata_component_type
|
|
39
|
+
|
|
40
|
+
# Metadata component type for the SBOM export.
|
|
41
|
+
# | value | description |
|
|
42
|
+
# |-------|---------------|
|
|
43
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_APPLICATION | |
|
|
44
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_FRAMEWORK | |
|
|
45
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_LIBRARY | |
|
|
46
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_CONTAINER | |
|
|
47
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_PLATFORM | |
|
|
48
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_OPERATING_SYSTEM | |
|
|
49
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_DEVICE | |
|
|
50
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_DEVICE_DRIVER | |
|
|
51
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_FIRMWARE | |
|
|
52
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_FILE | |
|
|
53
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_MACHINE_LEARNING_MODEL | |
|
|
54
|
+
# | SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_DATA | |
|
|
55
|
+
# @return [ProtosScaV1SbomMetadataSupplier]
|
|
56
|
+
attr_accessor :metadata_supplier
|
|
57
|
+
|
|
58
|
+
# Branch to export SBOM for (Ex. ref=`refs/pull/1234/merge`).
|
|
59
|
+
# @return [String]
|
|
60
|
+
attr_accessor :ref
|
|
61
|
+
|
|
62
|
+
# Repository ID to export SBOM for.
|
|
63
|
+
# @return [String]
|
|
64
|
+
attr_accessor :repository_id
|
|
65
|
+
|
|
66
|
+
# SBOM output format for the SBOM export.
|
|
67
|
+
# | value | description |
|
|
68
|
+
# |-------|---------------|
|
|
69
|
+
# | SBOM_OUTPUT_FORMAT_JSON | |
|
|
70
|
+
# @return [SbomOutputFormat]
|
|
71
|
+
attr_accessor :sbom_output_format
|
|
72
|
+
|
|
73
|
+
# A mapping from model property names to API property names.
|
|
74
|
+
def self.names
|
|
75
|
+
@_hash = {} if @_hash.nil?
|
|
76
|
+
@_hash['deployment_id'] = 'deploymentId'
|
|
77
|
+
@_hash['format_version'] = 'formatVersion'
|
|
78
|
+
@_hash['metadata_component_type'] = 'metadataComponentType'
|
|
79
|
+
@_hash['metadata_supplier'] = 'metadataSupplier'
|
|
80
|
+
@_hash['ref'] = 'ref'
|
|
81
|
+
@_hash['repository_id'] = 'repositoryId'
|
|
82
|
+
@_hash['sbom_output_format'] = 'sbomOutputFormat'
|
|
83
|
+
@_hash
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
# An array for optional fields
|
|
87
|
+
def self.optionals
|
|
88
|
+
%w[
|
|
89
|
+
format_version
|
|
90
|
+
metadata_component_type
|
|
91
|
+
metadata_supplier
|
|
92
|
+
ref
|
|
93
|
+
repository_id
|
|
94
|
+
sbom_output_format
|
|
95
|
+
]
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# An array for nullable fields
|
|
99
|
+
def self.nullables
|
|
100
|
+
[]
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
def initialize(
|
|
104
|
+
deployment_id:, format_version: SKIP,
|
|
105
|
+
metadata_component_type: MetadataComponentType::SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_APPLICATION,
|
|
106
|
+
metadata_supplier: SKIP, ref: SKIP, repository_id: SKIP,
|
|
107
|
+
sbom_output_format: SKIP, additional_properties: nil
|
|
108
|
+
)
|
|
109
|
+
# Add additional model properties to the instance
|
|
110
|
+
additional_properties = {} if additional_properties.nil?
|
|
111
|
+
|
|
112
|
+
@deployment_id = deployment_id
|
|
113
|
+
@format_version = format_version unless format_version == SKIP
|
|
114
|
+
@metadata_component_type = metadata_component_type unless metadata_component_type == SKIP
|
|
115
|
+
@metadata_supplier = metadata_supplier unless metadata_supplier == SKIP
|
|
116
|
+
@ref = ref unless ref == SKIP
|
|
117
|
+
@repository_id = repository_id unless repository_id == SKIP
|
|
118
|
+
@sbom_output_format = sbom_output_format unless sbom_output_format == SKIP
|
|
119
|
+
@additional_properties = additional_properties
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
# Creates an instance of the object from a hash.
|
|
123
|
+
def self.from_hash(hash)
|
|
124
|
+
return nil unless hash
|
|
125
|
+
|
|
126
|
+
# Extract variables from the hash.
|
|
127
|
+
deployment_id = hash.key?('deploymentId') ? hash['deploymentId'] : nil
|
|
128
|
+
format_version = ProtosScaV1SbomFormatVersion.from_hash(hash['formatVersion']) if
|
|
129
|
+
hash['formatVersion']
|
|
130
|
+
metadata_component_type =
|
|
131
|
+
hash['metadataComponentType'] ||= MetadataComponentType::SBOM_METADATA_COMPONENT_TYPE_CYCLONE_DX_V15_APPLICATION
|
|
132
|
+
metadata_supplier = ProtosScaV1SbomMetadataSupplier.from_hash(hash['metadataSupplier']) if
|
|
133
|
+
hash['metadataSupplier']
|
|
134
|
+
ref = hash.key?('ref') ? hash['ref'] : SKIP
|
|
135
|
+
repository_id = hash.key?('repositoryId') ? hash['repositoryId'] : SKIP
|
|
136
|
+
sbom_output_format =
|
|
137
|
+
hash.key?('sbomOutputFormat') ? hash['sbomOutputFormat'] : SKIP
|
|
138
|
+
|
|
139
|
+
# Create a new hash for additional properties, removing known properties.
|
|
140
|
+
new_hash = hash.reject { |k, _| names.value?(k) }
|
|
141
|
+
|
|
142
|
+
additional_properties = APIHelper.get_additional_properties(
|
|
143
|
+
new_hash, proc { |value| value }
|
|
144
|
+
)
|
|
145
|
+
|
|
146
|
+
# Create object from extracted values.
|
|
147
|
+
CreateSbomExportRequest.new(deployment_id: deployment_id,
|
|
148
|
+
format_version: format_version,
|
|
149
|
+
metadata_component_type: metadata_component_type,
|
|
150
|
+
metadata_supplier: metadata_supplier,
|
|
151
|
+
ref: ref,
|
|
152
|
+
repository_id: repository_id,
|
|
153
|
+
sbom_output_format: sbom_output_format,
|
|
154
|
+
additional_properties: additional_properties)
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
# Provides a human-readable string representation of the object.
|
|
158
|
+
def to_s
|
|
159
|
+
class_name = self.class.name.split('::').last
|
|
160
|
+
"<#{class_name} deployment_id: #{@deployment_id}, format_version: #{@format_version},"\
|
|
161
|
+
" metadata_component_type: #{@metadata_component_type}, metadata_supplier:"\
|
|
162
|
+
" #{@metadata_supplier}, ref: #{@ref}, repository_id: #{@repository_id}, sbom_output_format:"\
|
|
163
|
+
" #{@sbom_output_format}, additional_properties: #{@additional_properties}>"
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
167
|
+
def inspect
|
|
168
|
+
class_name = self.class.name.split('::').last
|
|
169
|
+
"<#{class_name} deployment_id: #{@deployment_id.inspect}, format_version:"\
|
|
170
|
+
" #{@format_version.inspect}, metadata_component_type: #{@metadata_component_type.inspect},"\
|
|
171
|
+
" metadata_supplier: #{@metadata_supplier.inspect}, ref: #{@ref.inspect}, repository_id:"\
|
|
172
|
+
" #{@repository_id.inspect}, sbom_output_format: #{@sbom_output_format.inspect},"\
|
|
173
|
+
" additional_properties: #{@additional_properties}>"
|
|
174
|
+
end
|
|
175
|
+
end
|
|
176
|
+
end
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# semgrep_web_app
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module SemgrepWebApp
|
|
7
|
+
# CreateSbomExportResponse Model.
|
|
8
|
+
class CreateSbomExportResponse < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# Task token for the SBOM export job.
|
|
13
|
+
# @return [String]
|
|
14
|
+
attr_accessor :task_token
|
|
15
|
+
|
|
16
|
+
# A mapping from model property names to API property names.
|
|
17
|
+
def self.names
|
|
18
|
+
@_hash = {} if @_hash.nil?
|
|
19
|
+
@_hash['task_token'] = 'taskToken'
|
|
20
|
+
@_hash
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# An array for optional fields
|
|
24
|
+
def self.optionals
|
|
25
|
+
[]
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# An array for nullable fields
|
|
29
|
+
def self.nullables
|
|
30
|
+
[]
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def initialize(task_token:, additional_properties: nil)
|
|
34
|
+
# Add additional model properties to the instance
|
|
35
|
+
additional_properties = {} if additional_properties.nil?
|
|
36
|
+
|
|
37
|
+
@task_token = task_token
|
|
38
|
+
@additional_properties = additional_properties
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
# Creates an instance of the object from a hash.
|
|
42
|
+
def self.from_hash(hash)
|
|
43
|
+
return nil unless hash
|
|
44
|
+
|
|
45
|
+
# Extract variables from the hash.
|
|
46
|
+
task_token = hash.key?('taskToken') ? hash['taskToken'] : nil
|
|
47
|
+
|
|
48
|
+
# Create a new hash for additional properties, removing known properties.
|
|
49
|
+
new_hash = hash.reject { |k, _| names.value?(k) }
|
|
50
|
+
|
|
51
|
+
additional_properties = APIHelper.get_additional_properties(
|
|
52
|
+
new_hash, proc { |value| value }
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
# Create object from extracted values.
|
|
56
|
+
CreateSbomExportResponse.new(task_token: task_token,
|
|
57
|
+
additional_properties: additional_properties)
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# Provides a human-readable string representation of the object.
|
|
61
|
+
def to_s
|
|
62
|
+
class_name = self.class.name.split('::').last
|
|
63
|
+
"<#{class_name} task_token: #{@task_token}, additional_properties:"\
|
|
64
|
+
" #{@additional_properties}>"
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
68
|
+
def inspect
|
|
69
|
+
class_name = self.class.name.split('::').last
|
|
70
|
+
"<#{class_name} task_token: #{@task_token.inspect}, additional_properties:"\
|
|
71
|
+
" #{@additional_properties}>"
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|