connectors_sdk 8.3.0.0.pre.20220414T060419Z → 8.3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/connectors_sdk/atlassian/config.rb +27 -0
  3. data/lib/connectors_sdk/atlassian/custom_client.rb +87 -0
  4. data/lib/connectors_sdk/base/adapter.rb +7 -8
  5. data/lib/connectors_sdk/base/authorization.rb +89 -0
  6. data/lib/connectors_sdk/base/connector.rb +166 -0
  7. data/lib/connectors_sdk/base/custom_client.rb +1 -2
  8. data/lib/connectors_sdk/base/extractor.rb +6 -2
  9. data/lib/connectors_sdk/base/registry.rb +9 -4
  10. data/lib/connectors_sdk/confluence/adapter.rb +216 -0
  11. data/lib/connectors_sdk/confluence/custom_client.rb +143 -0
  12. data/lib/connectors_sdk/confluence/extractor.rb +265 -0
  13. data/lib/connectors_sdk/confluence_cloud/authorization.rb +64 -0
  14. data/lib/connectors_sdk/confluence_cloud/connector.rb +84 -0
  15. data/lib/connectors_sdk/confluence_cloud/custom_client.rb +61 -0
  16. data/lib/connectors_sdk/confluence_cloud/extractor.rb +59 -0
  17. data/lib/connectors_sdk/helpers/atlassian_time_formatter.rb +10 -0
  18. data/lib/connectors_sdk/office365/adapter.rb +7 -7
  19. data/lib/connectors_sdk/office365/config.rb +1 -0
  20. data/lib/connectors_sdk/office365/custom_client.rb +20 -39
  21. data/lib/connectors_sdk/office365/extractor.rb +18 -34
  22. data/lib/connectors_sdk/share_point/adapter.rb +24 -12
  23. data/lib/connectors_sdk/share_point/authorization.rb +14 -62
  24. data/lib/connectors_sdk/share_point/connector.rb +82 -0
  25. data/lib/connectors_sdk/share_point/extractor.rb +2 -2
  26. data/lib/connectors_sdk/stub_connector/connector.rb +62 -0
  27. data/lib/connectors_shared/constants.rb +12 -0
  28. data/lib/connectors_shared/exception_tracking.rb +4 -4
  29. data/lib/connectors_shared/extraction_utils.rb +109 -0
  30. data/lib/connectors_shared/job_status.rb +18 -0
  31. data/lib/connectors_shared/middleware/basic_auth.rb +27 -0
  32. data/lib/connectors_shared/middleware/bearer_auth.rb +27 -0
  33. data/lib/connectors_shared/middleware/restrict_hostnames.rb +73 -0
  34. data/lib/connectors_shared/monitor.rb +3 -3
  35. data/lib/connectors_shared.rb +1 -0
  36. data/lib/stubs/enterprise_search/exception_tracking.rb +43 -0
  37. metadata +30 -16
  38. data/lib/connectors_sdk/base/.config.rb.un~ +0 -0
  39. data/lib/connectors_sdk/base/.connectors.rb.un~ +0 -0
  40. data/lib/connectors_sdk/base/.registry.rb.un~ +0 -0
  41. data/lib/connectors_sdk/share_point/.http_call_wrapper.rb.un~ +0 -0
  42. data/lib/connectors_sdk/share_point/http_call_wrapper.rb +0 -117
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: connectors_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.3.0.0.pre.20220414T060419Z
4
+ version: 8.3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elastic
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-14 00:00:00.000000000 Z
11
+ date: 2022-05-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -61,37 +61,52 @@ files:
61
61
  - LICENSE
62
62
  - NOTICE.txt
63
63
  - lib/connectors_sdk.rb
64
- - lib/connectors_sdk/base/.config.rb.un~
65
- - lib/connectors_sdk/base/.connectors.rb.un~
66
- - lib/connectors_sdk/base/.registry.rb.un~
64
+ - lib/connectors_sdk/atlassian/config.rb
65
+ - lib/connectors_sdk/atlassian/custom_client.rb
67
66
  - lib/connectors_sdk/base/adapter.rb
67
+ - lib/connectors_sdk/base/authorization.rb
68
68
  - lib/connectors_sdk/base/config.rb
69
+ - lib/connectors_sdk/base/connector.rb
69
70
  - lib/connectors_sdk/base/custom_client.rb
70
71
  - lib/connectors_sdk/base/extractor.rb
71
72
  - lib/connectors_sdk/base/registry.rb
73
+ - lib/connectors_sdk/confluence/adapter.rb
74
+ - lib/connectors_sdk/confluence/custom_client.rb
75
+ - lib/connectors_sdk/confluence/extractor.rb
76
+ - lib/connectors_sdk/confluence_cloud/authorization.rb
77
+ - lib/connectors_sdk/confluence_cloud/connector.rb
78
+ - lib/connectors_sdk/confluence_cloud/custom_client.rb
79
+ - lib/connectors_sdk/confluence_cloud/extractor.rb
80
+ - lib/connectors_sdk/helpers/atlassian_time_formatter.rb
72
81
  - lib/connectors_sdk/office365/adapter.rb
73
82
  - lib/connectors_sdk/office365/config.rb
74
83
  - lib/connectors_sdk/office365/custom_client.rb
75
84
  - lib/connectors_sdk/office365/extractor.rb
76
- - lib/connectors_sdk/share_point/.http_call_wrapper.rb.un~
77
85
  - lib/connectors_sdk/share_point/adapter.rb
78
86
  - lib/connectors_sdk/share_point/authorization.rb
87
+ - lib/connectors_sdk/share_point/connector.rb
79
88
  - lib/connectors_sdk/share_point/extractor.rb
80
- - lib/connectors_sdk/share_point/http_call_wrapper.rb
89
+ - lib/connectors_sdk/stub_connector/connector.rb
81
90
  - lib/connectors_shared.rb
82
91
  - lib/connectors_shared/constants.rb
83
92
  - lib/connectors_shared/errors.rb
84
93
  - lib/connectors_shared/exception_tracking.rb
85
94
  - lib/connectors_shared/extension_mapping_util.rb
95
+ - lib/connectors_shared/extraction_utils.rb
96
+ - lib/connectors_shared/job_status.rb
86
97
  - lib/connectors_shared/logger.rb
98
+ - lib/connectors_shared/middleware/basic_auth.rb
99
+ - lib/connectors_shared/middleware/bearer_auth.rb
100
+ - lib/connectors_shared/middleware/restrict_hostnames.rb
87
101
  - lib/connectors_shared/monitor.rb
102
+ - lib/stubs/enterprise_search/exception_tracking.rb
88
103
  homepage: https://github.com/elastic/connectors
89
104
  licenses:
90
105
  - Elastic-2.0
91
106
  metadata:
92
- revision: 427fad57fc69a8107c127ecbf99c6a5e803ea90c
93
- repository: https://github.com/elastic/connectors.git
94
- post_install_message:
107
+ revision: 8fe65b05c8d8c89d62d73e7d717238a5393d42f5
108
+ repository: git@github.com:elastic/connectors.git
109
+ post_install_message:
95
110
  rdoc_options: []
96
111
  require_paths:
97
112
  - lib
@@ -102,13 +117,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
102
117
  version: '0'
103
118
  required_rubygems_version: !ruby/object:Gem::Requirement
104
119
  requirements:
105
- - - ">"
120
+ - - ">="
106
121
  - !ruby/object:Gem::Version
107
- version: 1.3.1
122
+ version: '0'
108
123
  requirements: []
109
- rubyforge_project:
110
- rubygems_version: 2.7.7
111
- signing_key:
124
+ rubygems_version: 3.0.3.1
125
+ signing_key:
112
126
  specification_version: 4
113
127
  summary: Gem containing apis used by Enterprise Search and implementations of Connectors
114
128
  test_files: []
Binary file
@@ -1,117 +0,0 @@
1
- #
2
- # Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
- # or more contributor license agreements. Licensed under the Elastic License;
4
- # you may not use this file except in compliance with the Elastic License.
5
- #
6
-
7
- # frozen_string_literal: true
8
-
9
- require 'connectors_sdk/office365/config'
10
- require 'connectors_sdk/share_point/extractor'
11
- require 'connectors_sdk/share_point/authorization'
12
- require 'bson'
13
-
14
- module ConnectorsSdk
15
- module SharePoint
16
- SERVICE_TYPE = 'share_point'
17
-
18
- class HttpCallWrapper
19
- def extractor(params)
20
- cursors = params.fetch(:cursors, {}) || {}
21
- features = params.fetch(:features, {}) || {}
22
-
23
- # XXX can we cache that class across calls?
24
- ConnectorsSdk::SharePoint::Extractor.new(
25
- content_source_id: BSON::ObjectId.new,
26
- service_type: SERVICE_TYPE,
27
- authorization_data_proc: proc { { access_token: params[:access_token] } },
28
- client_proc: proc { ConnectorsSdk::Office365::CustomClient.new(:access_token => params[:access_token], :cursors => cursors) },
29
- config: ConnectorsSdk::Office365::Config.new(:cursors => cursors, :drive_ids => 'all', :index_permissions => params[:index_permissions] || false),
30
- features: features
31
- )
32
- end
33
-
34
- def document_batch(params)
35
- results = []
36
-
37
- @extractor = extractor(params)
38
-
39
- @extractor.yield_document_changes(:break_after_page => true, :modified_since => @extractor.config.cursors['modified_since']) do |action, doc, download_args_and_proc|
40
- download_obj = nil
41
- if download_args_and_proc
42
- download_obj = {
43
- id: download_args_and_proc[0],
44
- name: download_args_and_proc[1],
45
- size: download_args_and_proc[2],
46
- download_args: download_args_and_proc[3]
47
- }
48
- end
49
-
50
- results << {
51
- :action => action,
52
- :document => doc,
53
- :download => download_obj
54
- }
55
- end
56
-
57
- results
58
- rescue ConnectorsSdk::Office365::CustomClient::ClientError => e
59
- raise e.status_code == 401 ? ConnectorsShared::InvalidTokenError : e
60
- end
61
-
62
- def cursors
63
- @extractor.config.cursors
64
- end
65
-
66
- def completed?
67
- @extractor.completed
68
- end
69
-
70
- def deleted(params)
71
- results = []
72
- extractor(params).yield_deleted_ids(params[:ids]) do |id|
73
- results << id
74
- end
75
- results
76
- rescue ConnectorsSdk::Office365::CustomClient::ClientError => e
77
- raise e.status_code == 401 ? ConnectorsShared::InvalidTokenError : e
78
- end
79
-
80
- def permissions(params)
81
- extractor(params).yield_permissions(params[:user_id]) do |permissions|
82
- return permissions
83
- end
84
- rescue ConnectorsSdk::Office365::CustomClient::ClientError => e
85
- raise e.status_code == 401 ? ConnectorsShared::InvalidTokenError : e
86
- end
87
-
88
- def authorization_uri(body)
89
- ConnectorsSdk::SharePoint::Authorization.authorization_uri(body)
90
- end
91
-
92
- def access_token(params)
93
- ConnectorsSdk::SharePoint::Authorization.access_token(params)
94
- end
95
-
96
- def refresh(params)
97
- ConnectorsSdk::SharePoint::Authorization.refresh(params)
98
- end
99
-
100
- def download(params)
101
- extractor(params).download(params[:meta])
102
- end
103
-
104
- def name
105
- 'SharePoint'
106
- end
107
-
108
- def source_status(params)
109
- client = ConnectorsSdk::Office365::CustomClient.new(:access_token => params[:access_token])
110
- client.me
111
- { :status => 'OK', :statusCode => 200, :message => 'Connected to SharePoint' }
112
- rescue StandardError => e
113
- { :status => 'FAILURE', :statusCode => e.is_a?(ConnectorsSdk::Office365::CustomClient::ClientError) ? e.status_code : 500, :message => e.message }
114
- end
115
- end
116
- end
117
- end