Skip to content

Commit 3716974

Browse files
authored
Merge pull request #5 from Copyleaks/features/best-practice
Features/best practice
2 parents c45adf8 + 8cdbaf2 commit 3716974

File tree

11 files changed

+85
-56
lines changed

11 files changed

+85
-56
lines changed

lib/copyleaks.rb

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,11 @@
2222
# SOFTWARE.
2323
# =
2424

25-
$LOAD_PATH.unshift(__dir__) unless $LOAD_PATH.include?(__dir__)
26-
27-
require 'copyleaks/version'
28-
29-
require 'copyleaks/models/index'
30-
require 'copyleaks/utils/status-code.utils'
31-
require 'copyleaks/app.config'
32-
require 'copyleaks/api'
25+
require_relative './copyleaks/api.rb'
26+
require_relative './copyleaks/version.rb'
27+
require_relative './copyleaks/app.config.rb'
28+
require_relative './copyleaks/models/index.rb'
29+
require_relative './copyleaks/utils/status-code.utils.rb'
3330

3431
module Copyleaks
3532
end

lib/copyleaks/models/exceptions/index.rb

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,11 @@
2121
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2222
# SOFTWARE.
2323
# =
24-
$LOAD_PATH.unshift(__dir__) unless $LOAD_PATH.include?(__dir__)
2524

26-
require 'auth_exipred_exception'
27-
require 'command_exception'
28-
require 'rate_limit_exception'
29-
require 'under_maintenance_exception'
25+
require_relative 'auth_exipred_exception.rb'
26+
require_relative 'command_exception.rb'
27+
require_relative 'rate_limit_exception.rb'
28+
require_relative 'under_maintenance_exception.rb'
3029

3130
module Copyleaks
3231
end

lib/copyleaks/models/exports/index.rb

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,11 @@
2121
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2222
# SOFTWARE.
2323
# =
24-
$LOAD_PATH.unshift(__dir__) unless $LOAD_PATH.include?(__dir__)
2524

26-
require 'export_model'
27-
require 'export_crawled_version'
28-
require 'export_pdf_report'
29-
require 'export_results'
25+
require_relative 'export_model.rb'
26+
require_relative 'export_crawled_version.rb'
27+
require_relative 'export_pdf_report.rb'
28+
require_relative 'export_results.rb'
3029

3130
module Copyleaks
3231
end

lib/copyleaks/models/index.rb

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,15 @@
2121
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2222
# SOFTWARE.
2323
# =
24-
$LOAD_PATH.unshift(__dir__) unless $LOAD_PATH.include?(__dir__)
25-
require 'exceptions/index'
26-
require 'exports/index'
27-
require 'submissions/index'
28-
require 'auth_token'
2924

30-
require 'id_object'
31-
require 'delete_request_model'
32-
require 'start_request_model'
25+
require_relative 'exceptions/index.rb'
26+
require_relative 'exports/index.rb'
27+
require_relative 'submissions/index.rb'
28+
require_relative 'auth_token.rb'
29+
30+
require_relative 'id_object.rb'
31+
require_relative 'delete_request_model.rb'
32+
require_relative 'start_request_model.rb'
3333

3434
module Copyleaks
3535
end

lib/copyleaks/models/submissions/index.rb

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,12 @@
2121
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2222
# SOFTWARE.
2323
# =
24-
$LOAD_PATH.unshift(__dir__) unless $LOAD_PATH.include?(__dir__)
25-
require 'properties/index'
24+
require_relative 'properties/index.rb'
2625

27-
require 'submission_model'
28-
require 'file_submission_model'
29-
require 'file_ocr_submission_model'
30-
require 'url_submission_model'
26+
require_relative 'submission_model.rb'
27+
require_relative 'file_submission_model.rb'
28+
require_relative 'file_ocr_submission_model.rb'
29+
require_relative 'url_submission_model.rb'
3130

3231
module Copyleaks
3332
end

lib/copyleaks/models/submissions/properties/index.rb

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -21,25 +21,25 @@
2121
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2222
# SOFTWARE.
2323
# =
24-
$LOAD_PATH.unshift(__dir__) unless $LOAD_PATH.include?(__dir__)
2524

26-
require 'submission_properties'
25+
require_relative 'submission_properties.rb'
2726

28-
require 'actions'
29-
require 'author'
30-
require 'copyleaks_db'
31-
require 'domains_mode'
32-
require 'exclude'
33-
require 'filter'
34-
require 'indexing'
35-
require 'pdf_properties'
36-
require 'repository'
37-
require 'scanning'
38-
require 'scanning_exclude'
39-
require 'scanning_repository'
40-
require 'sensitive_data_protection'
41-
require 'submission_properties'
42-
require 'webhooks'
27+
require_relative 'actions.rb'
28+
require_relative 'author.rb'
29+
require_relative 'copyleaks_db.rb'
30+
require_relative 'domains_mode.rb'
31+
require_relative 'exclude.rb'
32+
require_relative 'filter.rb'
33+
require_relative 'scan_method_algorithm.rb'
34+
require_relative 'indexing.rb'
35+
require_relative 'pdf_properties.rb'
36+
require_relative 'repository.rb'
37+
require_relative 'scanning.rb'
38+
require_relative 'scanning_exclude.rb'
39+
require_relative 'scanning_repository.rb'
40+
require_relative 'sensitive_data_protection.rb'
41+
require_relative 'submission_properties.rb'
42+
require_relative 'webhooks.rb'
4343

4444
module Copyleaks
4545
end
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#
2+
# The MIT License(MIT)
3+
#
4+
# Copyright(c) 2016 Copyleaks LTD (https://copyleaks.com)
5+
#
6+
# Permission is hereby granted, free of charge, to any person obtaining a copy
7+
# of this software and associated documentation files (the "Software"), to deal
8+
# in the Software without restriction, including without limitation the rights
9+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
# copies of the Software, and to permit persons to whom the Software is
11+
# furnished to do so, subject to the following conditions:
12+
#
13+
# The above copyright notice and this permission notice shall be included in all
14+
# copies or substantial portions of the Software.
15+
#
16+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22+
# SOFTWARE.
23+
# =
24+
module Copyleaks
25+
class SubmissionScanMethodAlgorithm
26+
# prioritize higher similarity
27+
MAXIMUM_COVERAGE = 0
28+
# prioritize finding more sources.
29+
MAXIMUM_RESULTS = 1
30+
end
31+
end

lib/copyleaks/models/submissions/properties/submission_properties.rb

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
module Copyleaks
2525
class SubmissionProperties
2626
attr_reader :webhooks, :includeHtml, :developerPayload, :sandbox, :expiration, :sensitivityLevel, :cheatDetection,
27-
:action, :author, :filters, :scanning, :indexing, :exclude, :pdf, :sensitiveDataProtection
27+
:action, :author, :filters, :scanning, :indexing, :exclude, :pdf, :sensitiveDataProtection, :scanMethodAlgorithm
2828

2929
# @param [SubmissionWebhooks] webhooks - Check inner properties for more details.
3030
# @param [Boolean] includeHtml - By default, Copyleaks will present the report in text format. If set to true, Copyleaks will also include html format.
@@ -41,10 +41,11 @@ class SubmissionProperties
4141
# @param [SubmissionExclude] exclude - Check inner properties for more details.
4242
# @param [SubmissionPDF] pdf - Check inner properties for more details.
4343
# @param [SubmissionSensitiveData] sensitiveDataProtection - Check inner properties for more details.
44+
# @param [SubmissionScanMethodAlgorithm] scanMethodAlgorithm - Check inner properties for more details.
4445
def initialize(
4546
webhooks, includeHtml = nil, developerPayload = nil, sandbox = nil, expiration = nil,
4647
sensitivityLevel = nil, cheatDetection = nil, action = nil, author = nil, filters = nil,
47-
scanning = nil, indexing = nil, exclude = nil, pdf = nil, sensitiveDataProtection = nil
48+
scanning = nil, indexing = nil, exclude = nil, pdf = nil, sensitiveDataProtection = nil, scanMethodAlgorithm = nil
4849
)
4950
unless webhooks.instance_of?(SubmissionWebhooks)
5051
raise 'Copyleaks::SubmissionProperties - webhooks - webhooks must be of type SubmissionWebhooks'
@@ -91,6 +92,9 @@ def initialize(
9192
if !sensitiveDataProtection.nil? && !sensitiveDataProtection.instance_of?(SubmissionSensitiveData)
9293
raise 'Copyleaks::SubmissionProperties - sensitiveDataProtection - sensitiveDataProtection must be of type SubmissionSensitiveData'
9394
end
95+
if !scanMethodAlgorithm.nil? && ![0, 1].include?(scanMethodAlgorithm)
96+
raise 'Copyleaks::SubmissionProperties - scanMethodAlgorithm - action must be of type SubmissionScanMethodAlgorithm consts'
97+
end
9498

9599
@webhooks = webhooks
96100
@includeHtml = includeHtml
@@ -107,6 +111,7 @@ def initialize(
107111
@exclude = exclude
108112
@pdf = pdf
109113
@sensitiveDataProtection = sensitiveDataProtection
114+
@scanMethodAlgorithm = scanMethodAlgorithm
110115
end
111116

112117
def as_json(*_args)
@@ -125,7 +130,8 @@ def as_json(*_args)
125130
indexing: @indexing,
126131
exclude: @exclude,
127132
pdf: @pdf,
128-
sensitiveDataProtection: @sensitiveDataProtection
133+
sensitiveDataProtection: @sensitiveDataProtection,
134+
scanMethodAlgorithm: @scanMethodAlgorithm
129135
}.select { |_k, v| !v.nil? }
130136
end
131137

lib/copyleaks/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module Copyleaks
2-
VERSION = '3.1.0'
2+
VERSION = '3.1.1'
33
end

lib/index.rb

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,7 @@
2222
# SOFTWARE.
2323
# =
2424

25-
$LOAD_PATH.unshift(__dir__) unless $LOAD_PATH.include?(__dir__)
26-
27-
require 'copyleaks'
25+
require_relative 'copyleaks.rb'
2826

2927
module Copyleaks
3028
end

0 commit comments

Comments
 (0)