infopark_cloud_connector 6.9.5 → 7.0.0

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.
Files changed (37) hide show
  1. checksums.yaml +8 -8
  2. data/app/controllers/rails_connector/default_cms_controller.rb +0 -1
  3. data/app/controllers/rails_connector/objs_controller.rb +31 -27
  4. data/app/helpers/rails_connector/cms_tag_helper.rb +20 -12
  5. data/app/views/rails_connector/objs/show_widget.html.erb +1 -0
  6. data/config/ca-bundle.crt +1 -1
  7. data/config/locales/de.rails_connector.views.yml +0 -3
  8. data/config/locales/en.rails_connector.views.yml +0 -3
  9. data/config/routes.rb +2 -1
  10. data/lib/assets/fonts/infopark_icons-webfont.eot +0 -0
  11. data/lib/assets/fonts/infopark_icons-webfont.ttf +0 -0
  12. data/lib/assets/fonts/infopark_icons-webfont.woff +0 -0
  13. data/lib/assets/javascripts/infopark_editing.js +84 -35
  14. data/lib/assets/stylesheets/infopark_editing.css +227 -33
  15. data/lib/generators/cms/migration/migration_generator.rb +1 -1
  16. data/lib/generators/cms/migration/templates/{migration.rb → migration.erb} +0 -0
  17. data/lib/rails_connector/attribute_content.rb +39 -40
  18. data/lib/rails_connector/basic_obj.rb +64 -56
  19. data/lib/rails_connector/basic_widget.rb +2 -0
  20. data/lib/rails_connector/cms_accessible.rb +0 -17
  21. data/lib/rails_connector/cms_backend.rb +2 -2
  22. data/lib/rails_connector/cms_env.rb +0 -5
  23. data/lib/rails_connector/cms_rest_api.rb +62 -30
  24. data/lib/rails_connector/configuration.rb +3 -3
  25. data/lib/rails_connector/connection_manager.rb +98 -0
  26. data/lib/rails_connector/content_service.rb +12 -94
  27. data/lib/rails_connector/content_state_caching.rb +3 -5
  28. data/lib/rails_connector/deprecation.rb +21 -0
  29. data/lib/rails_connector/link.rb +12 -22
  30. data/lib/rails_connector/migrations/cms_backend.rb +1 -1
  31. data/lib/rails_connector/migrations/migration.rb +1 -1
  32. data/lib/rails_connector/migrations/migration_dsl.rb +10 -101
  33. data/lib/rails_connector/named_link.rb +1 -1
  34. data/lib/rails_connector/obj_search_enumerator.rb +37 -49
  35. metadata +6 -5
  36. data/app/views/errors/410_gone.html.erb +0 -7
  37. data/app/views/rails_connector/objs/show.html.erb +0 -1
@@ -42,7 +42,7 @@ module RailsConnector
42
42
  # Use this method to configure the directory that should be used to store cached data.
43
43
  # By default, +RAILS_ROOT/tmp/infopark_cache+ will be used.
44
44
  # @param path [String] Path to directory that should be used to store cached data.
45
- # @example Configure +RailsConnector+ to store it's cache under +/tmp/my_cache+.
45
+ # @example Configure +RailsConnector+ to store its cache under +/tmp/my_cache+.
46
46
  # RailsConnector::Configuration.cache_path = '/tmp/my_cache'
47
47
  # @api public
48
48
  def cache_path=(path)
@@ -156,8 +156,8 @@ module RailsConnector
156
156
 
157
157
  # Configure a callback to be invoked when the rails connector delivers the homepage.
158
158
  # The given callback will receive the rack env
159
- # and must return an Obj to be used as the homepage.
160
- # If no callback is configured, Obj.homepage will be used as the default.
159
+ # and must return an {BasicObj Obj} to be used as the homepage.
160
+ # If no callback is configured, {BasicObj.homepage Obj.homepage} will be used as the default.
161
161
  # @api public
162
162
  def choose_homepage(&block)
163
163
  self.choose_homepage_callback = block
@@ -0,0 +1,98 @@
1
+ module RailsConnector
2
+ class ConnectionManager
3
+ SOCKET_ERRORS = [
4
+ EOFError,
5
+ Errno::ECONNABORTED,
6
+ Errno::ECONNREFUSED,
7
+ Errno::ECONNRESET,
8
+ Errno::EINVAL,
9
+ Errno::EPIPE,
10
+ Errno::ETIMEDOUT,
11
+ IOError,
12
+ SocketError,
13
+ Timeout::Error,
14
+ ].freeze
15
+
16
+ DEFAULT_TIMEOUT = 10.freeze
17
+
18
+ attr_reader :uri
19
+
20
+ def initialize(uri)
21
+ @uri = uri
22
+ end
23
+
24
+ def request(request, timeout=DEFAULT_TIMEOUT)
25
+ request['User-Agent'] = user_agent
26
+
27
+ retry_once_and_reset_connection do
28
+ ensure_started(uri, timeout)
29
+ connection.request(request)
30
+ end
31
+ end
32
+
33
+ private
34
+
35
+ attr_accessor :connection
36
+
37
+ def ensure_started(uri, timeout=DEFAULT_TIMEOUT)
38
+ if @connection && @connection.started?
39
+ configure_timeout(@connection, timeout)
40
+ else
41
+ conn = Net::HTTP.new(uri.host, uri.port)
42
+ if uri.scheme == 'https'
43
+ conn.use_ssl = true
44
+ conn.verify_mode = OpenSSL::SSL::VERIFY_PEER
45
+ conn.ca_file = RailsConnector::Configuration.ca_file
46
+ end
47
+ configure_timeout(conn, timeout)
48
+ retry_twice_on_socket_error do
49
+ conn.start
50
+ end
51
+ @connection = conn
52
+ end
53
+ end
54
+
55
+ def ensure_finished
56
+ @connection.finish if @connection && @connection.started?
57
+ @connection = nil
58
+ end
59
+
60
+ def retry_once_and_reset_connection
61
+ retried = false
62
+ begin
63
+ yield
64
+ rescue *SOCKET_ERRORS => e
65
+ raise BackendNotAvailable.from_socket_error(e) if retried
66
+ ensure_finished
67
+ retried = true
68
+ retry
69
+ end
70
+ end
71
+
72
+ def retry_twice_on_socket_error
73
+ attempt = 0
74
+ begin
75
+ yield
76
+ rescue *SOCKET_ERRORS => e
77
+ raise BackendNotAvailable.from_socket_error(e) if attempt == 2
78
+ attempt += 1
79
+ retry
80
+ end
81
+ end
82
+
83
+ def configure_timeout(connection, timeout)
84
+ connection.open_timeout = timeout
85
+ connection.read_timeout = timeout
86
+ connection.ssl_timeout = timeout
87
+ end
88
+
89
+ def user_agent
90
+ @user_agent ||= (
91
+ gem_info = Gem.loaded_specs["infopark_cloud_connector"]
92
+ if gem_info
93
+ "#{gem_info.name}-#{gem_info.version}"
94
+ end
95
+ )
96
+ end
97
+ end
98
+ end
@@ -4,20 +4,7 @@ require 'net/http'
4
4
  module RailsConnector
5
5
  class ContentService
6
6
  DEFAULT_PROTOCOL = 'https'.freeze
7
- DEFAULT_TIMEOUT = 10.freeze
8
-
9
- SOCKET_ERRORS = [
10
- EOFError,
11
- Errno::ECONNABORTED,
12
- Errno::ECONNREFUSED,
13
- Errno::ECONNRESET,
14
- Errno::EINVAL,
15
- Errno::EPIPE,
16
- Errno::ETIMEDOUT,
17
- IOError,
18
- SocketError,
19
- Timeout::Error,
20
- ].freeze
7
+
21
8
 
22
9
  class Configuration
23
10
  attr_accessor :url
@@ -70,16 +57,13 @@ class ContentService
70
57
  @next_request_not_before = nil
71
58
 
72
59
  def query(path, payload, options={})
73
- timeout = options.fetch(:timeout, DEFAULT_TIMEOUT)
74
- retry_once_on_socket_error do
75
- retry_until_timeout_on_rate_limit_exceeded do
76
- ConnectionManager.ensure_started(uri, timeout)
77
- request = build_request(path, payload)
78
- if @next_request_not_before && @next_request_not_before > (now = Time.now)
79
- sleep @next_request_not_before - now
80
- end
81
- handle_response(ConnectionManager.connection(timeout).request(request))
60
+ timeout = options.fetch(:timeout, ConnectionManager::DEFAULT_TIMEOUT)
61
+ retry_until_timeout_on_rate_limit_exceeded do
62
+ request = build_request(path, payload)
63
+ if @next_request_not_before && @next_request_not_before > (now = Time.now)
64
+ sleep @next_request_not_before - now
82
65
  end
66
+ handle_response(connection_manager.request(request, timeout))
83
67
  end
84
68
  end
85
69
 
@@ -88,20 +72,14 @@ class ContentService
88
72
  @next_request_not_before = nil
89
73
  end
90
74
 
91
- private
75
+ attr_writer :connection_manager
92
76
 
93
- def retry_once_on_socket_error
94
- retried = false
95
- begin
96
- yield
97
- rescue *SOCKET_ERRORS => e
98
- raise BackendNotAvailable.from_socket_error(e) if retried
99
- ConnectionManager.ensure_finished
100
- retried = true
101
- retry
102
- end
77
+ def connection_manager
78
+ @connection_manager ||= ConnectionManager.new(uri)
103
79
  end
104
80
 
81
+ private
82
+
105
83
  def retry_until_timeout_on_rate_limit_exceeded
106
84
  delay = Delay.new
107
85
  begin
@@ -145,73 +123,13 @@ class ContentService
145
123
  headers = {
146
124
  'Content-Type' => 'application/json',
147
125
  'Accept' => 'application/json',
148
- 'User-Agent' => user_agent,
149
126
  }
150
127
  if configuration.http_host
151
128
  headers['Host'] = configuration.http_host
152
129
  end
153
130
  headers
154
131
  end
155
-
156
- def user_agent
157
- @user_agent ||= (
158
- gem_info = Gem.loaded_specs["infopark_cloud_connector"]
159
- "#{gem_info.name}-#{gem_info.version}"
160
- )
161
- end
162
132
  end
163
133
 
164
- module ConnectionManager
165
- def self.connection(timeout=DEFAULT_TIMEOUT)
166
- configure_timeout(@connection, timeout) if @connection
167
- @connection
168
- end
169
-
170
- def self.connection=(conn)
171
- @connection = conn
172
- end
173
-
174
- def self.ensure_started(uri, timeout=DEFAULT_TIMEOUT)
175
- return if @connection && @connection.started?
176
- conn = Net::HTTP.new(uri.host, uri.port)
177
- if uri.scheme == 'https'
178
- conn.use_ssl = true
179
- conn.verify_mode = OpenSSL::SSL::VERIFY_PEER
180
- conn.ca_file = RailsConnector::Configuration.ca_file
181
- end
182
- configure_timeout(conn, timeout)
183
- retry_twice_on_socket_error do
184
- conn.start
185
- end
186
- @connection = conn
187
- end
188
-
189
- def self.ensure_finished
190
- @connection.finish if @connection && @connection.started?
191
- @connection = nil
192
- end
193
-
194
- class << self
195
- private
196
-
197
- def retry_twice_on_socket_error
198
- attempt = 0
199
- begin
200
- yield
201
- rescue *ContentService::SOCKET_ERRORS => e
202
- raise BackendNotAvailable.from_socket_error(e) if attempt == 2
203
- attempt += 1
204
- retry
205
- end
206
- end
207
-
208
- def configure_timeout(connection, timeout)
209
- connection.open_timeout = timeout
210
- connection.read_timeout = timeout
211
- connection.ssl_timeout = timeout
212
- end
213
-
214
- end
215
- end
216
134
  end
217
135
  end
@@ -2,7 +2,7 @@ module RailsConnector
2
2
 
3
3
  # This module provides advances auto-invalidating caching mechanism for storing obj data.
4
4
  #
5
- # To keep it up-to-date it's caches and changes should be updated periodically
5
+ # To keep it up-to-date its caches and changes should be updated periodically
6
6
  # It's changes should be updated every time a new workspace data has been fetched.
7
7
  # It's caches should be updated every time a new obj data has been fetched.
8
8
  module ContentStateCaching
@@ -16,15 +16,13 @@ module ContentStateCaching
16
16
 
17
17
  # Updates caches with data from given workspace.
18
18
  # Should be called every time a new OBJ data has been fetched.
19
- def store_obj_data(workspace_data, index, key, data)
20
- content_state = workspace_data.content_state
19
+ def store_obj_data(content_state, index, key, data)
21
20
  content_state.save_obj_data(index, key, data) if content_state
22
21
  end
23
22
 
24
23
  # Fetches up-to-date obj data for given workspace, index and key.
25
24
  # Returns nil if no up-to-date data found.
26
- def find_obj_data(workspace_data, index, key)
27
- return unless current_content_state = workspace_data.content_state
25
+ def find_obj_data(current_content_state , index, key)
28
26
  if index == 'permalink'
29
27
  current_content_state.find_obj_data(index, key)
30
28
  else
@@ -0,0 +1,21 @@
1
+ module RailsConnector
2
+ class Deprecation
3
+ class << self
4
+ def warn(message, source = caller(1))
5
+ ActiveSupport::Deprecation.warn(message, source)
6
+ end
7
+
8
+ def warn_method(depricated_method_name, new_method_name = nil)
9
+ warn(warn_method_message(depricated_method_name, new_method_name), caller(1))
10
+ end
11
+
12
+ private
13
+
14
+ def warn_method_message(depricated_method_name, new_method_name = nil)
15
+ message = "The method #{depricated_method_name} will be removed from the CloudConnector. "
16
+ message << "Please use #{new_method_name} instead" if new_method_name
17
+ message
18
+ end
19
+ end
20
+ end
21
+ end
@@ -10,7 +10,7 @@ module RailsConnector
10
10
  # @api public
11
11
  # @param [Hash] link_data
12
12
  # @option link_data [String] url
13
- # @option link_data [RailsConnector::BasicObj] obj
13
+ # @option link_data [Obj] obj
14
14
  # @option link_data [String] title
15
15
  # @option link_data [String] query
16
16
  # @option link_data [String] target
@@ -34,17 +34,17 @@ module RailsConnector
34
34
  @link_data[:url] = value
35
35
  end
36
36
 
37
- # Returns the (+Obj+) this link is referencing. May be nil if the
37
+ # Returns the {BasicObj Obj} this link is referencing. May be nil if the
38
38
  # link is external.
39
39
  # @api public
40
40
  def obj
41
41
  @link_data[:obj]
42
42
  end
43
43
 
44
- # Set the (+Obj+) this link is referencing. May be nil if the
44
+ # Set the {BasicObj Obj} this link is referencing. May be nil if the
45
45
  # link is external.
46
46
  # @api public
47
- # @param value [RailsConnector::BasicObj] the obj this link should be referencing
47
+ # @param value [Obj] the obj this link should be referencing
48
48
  def obj=(value)
49
49
  @link_data[:obj] = value
50
50
  end
@@ -131,11 +131,11 @@ module RailsConnector
131
131
  end
132
132
  end
133
133
 
134
- # Returns the id of the Links' destination_object.
134
+ # Returns the id of the Links' destination obj.
135
135
  # @api public
136
136
  # @deprecated use {#obj}.id instead
137
137
  def destination_object_id
138
- deprecation_warning(:destination_object_id, 'obj.id')
138
+ Deprecation.warn_method('Link#destination_object_id', 'obj.id')
139
139
  obj.id
140
140
  end
141
141
 
@@ -162,10 +162,12 @@ module RailsConnector
162
162
  !internal?
163
163
  end
164
164
 
165
- # An internal Link is active if it's destination object is active.
165
+ # An internal Link is active if its destination obj is active.
166
166
  # An external Link is always active.
167
167
  # @api public
168
+ # @ deprecated this method will be removed without substitution
168
169
  def active?
170
+ Deprecation.warn_method('Link#active?')
169
171
  external? || (obj && obj.active?)
170
172
  end
171
173
 
@@ -174,15 +176,15 @@ module RailsConnector
174
176
  end
175
177
 
176
178
  def resolved?
177
- external? || resolved_internal?
179
+ external? || !obj.nil?
178
180
  end
179
181
 
180
- # Returns the destination object (+Obj+) of this Link. May be nil if the
182
+ # Returns the destination obj ({BasicObj Obj}) of this Link. May be nil if the
181
183
  # link is external or internal without an existing destination object.
182
184
  # @api public
183
185
  # @deprecated use {#obj} instead
184
186
  def destination_object
185
- deprecation_warning(:destination_object, :obj)
187
+ Deprecation.warn_method('Link#destination_object', :obj)
186
188
  obj
187
189
  end
188
190
 
@@ -209,17 +211,5 @@ module RailsConnector
209
211
  external_prefix? ? url.gsub(/external:/, '').strip : url
210
212
  end
211
213
 
212
- private
213
-
214
- def resolved_internal?
215
- internal? && !obj.nil?
216
- end
217
-
218
- def deprecation_warning(method, alternative)
219
- ActiveSupport::Deprecation.warn(
220
- "[DEPRECATION] The medod #{method} will be removed from the RailsConnector. Please use #{alternative} instead"
221
- )
222
- end
223
-
224
214
  end
225
215
  end
@@ -87,7 +87,7 @@ module RailsConnector
87
87
  end
88
88
 
89
89
  def endpoint(path)
90
- "revisions/#{Workspace.current.revision_id}/#{path}"
90
+ "workspaces/#{Workspace.current.id}/#{path}"
91
91
  end
92
92
  end
93
93
  end
@@ -9,7 +9,7 @@ module RailsConnector
9
9
  #
10
10
  # class CreateTestAttribute < RailsConnector::Migrations::Migration
11
11
  # def up
12
- # create_attribute(:name => 'test', :type => 'string')
12
+ # add_attribute_to('homepage', :name => 'test', :type => 'string')
13
13
  # end
14
14
  # end
15
15
  class Migration
@@ -3,26 +3,6 @@ module RailsConnector
3
3
  module Migrations
4
4
  # @api public
5
5
  module MigrationDsl
6
- # Creates a CMS attribute.
7
- #
8
- # @example Create "test" Attribute
9
- #
10
- # create_attribute(name: 'test', type: 'string')
11
- #
12
- # @param attributes [Hash] The attributes and their values of the new
13
- # CMS attribute.
14
- #
15
- # @return nothing
16
- # @deprecated Please use local attributes. Create attributes using {#create_obj_class} or
17
- # {#update_obj_class}.
18
- # @api public
19
- def create_attribute(attributes = {})
20
- warn_deprecated __callee__, 'create_obj_class', 'update_obj_class'
21
- endpoint = "revisions/#{Workspace.current.revision_id}/attributes"
22
-
23
- CmsRestApi.post(endpoint, attribute: attributes)
24
- end
25
-
26
6
  # Adds an attribute to an object class.
27
7
  #
28
8
  # @example Add "test" attribute to object class "Foo.
@@ -54,17 +34,13 @@ module RailsConnector
54
34
  def delete_attribute_from(obj_class_name, attribute_name)
55
35
  attributes = get_obj_class(obj_class_name)['attributes']
56
36
  attributes = attributes.delete_if do |attribute|
57
- # handle global and local attributes
58
- name = attribute.is_a?(String) ? attribute : attribute['name']
59
-
60
- name == attribute_name.to_s
37
+ attribute['name'] == attribute_name.to_s
61
38
  end
62
39
 
63
40
  update_obj_class(obj_class_name, attributes: attributes)
64
41
  end
65
42
 
66
- # Updates an attribute for an object class. Turns local into global
67
- # attribute if found.
43
+ # Updates an attribute for an object class.
68
44
  #
69
45
  # @example Update "test" attribute for object class "Foo.
70
46
  #
@@ -82,13 +58,7 @@ module RailsConnector
82
58
  found = false
83
59
 
84
60
  attributes.each_with_index do |attribute, index|
85
- name = attribute.is_a?(String) ? attribute : attribute['name']
86
-
87
- if name == attribute_name
88
- if attribute.is_a?(String)
89
- attribute = get_attribute(attribute)
90
- end
91
-
61
+ if attribute['name'] == attribute_name
92
62
  attributes[index] = attribute.merge(params.stringify_keys)
93
63
  update_obj_class(obj_class_name, attributes: attributes)
94
64
 
@@ -115,7 +85,7 @@ module RailsConnector
115
85
  # @return nothing
116
86
  # @api public
117
87
  def create_obj(attributes = {})
118
- endpoint = "revisions/#{Workspace.current.revision_id}/objs"
88
+ endpoint = "workspaces/#{Workspace.current.id}/objs"
119
89
 
120
90
  CmsRestApi.post(endpoint, obj: attributes)
121
91
  end
@@ -132,29 +102,11 @@ module RailsConnector
132
102
  # @return nothing
133
103
  # @api public
134
104
  def create_obj_class(attributes = {})
135
- endpoint = "revisions/#{Workspace.current.revision_id}/obj_classes"
105
+ endpoint = "workspaces/#{Workspace.current.id}/obj_classes"
136
106
 
137
107
  CmsRestApi.post(endpoint, obj_class: attributes)
138
108
  end
139
109
 
140
- # Deletes a CMS attribute.
141
- #
142
- # @example Delete "test" Attribute
143
- #
144
- # delete_attribute('test')
145
- #
146
- # @param id [String] The ID of the CMS attribute.
147
- #
148
- # @return nothing
149
- # @deprecated Please use local attributes. Delete attributes using {#update_obj_class}.
150
- # @api public
151
- def delete_attribute(id)
152
- warn_deprecated __callee__, 'update_obj_class'
153
- endpoint = "revisions/#{Workspace.current.revision_id}/attributes/#{id}"
154
-
155
- CmsRestApi.delete(endpoint)
156
- end
157
-
158
110
  # Deletes a CMS object with the given id.
159
111
  #
160
112
  # @example Deletes "a1b2c3" Object
@@ -166,29 +118,11 @@ module RailsConnector
166
118
  # @return nothing
167
119
  # @api public
168
120
  def delete_obj(id)
169
- endpoint = "revisions/#{Workspace.current.revision_id}/objs/#{id}"
121
+ endpoint = "workspaces/#{Workspace.current.id}/objs/#{id}"
170
122
 
171
123
  CmsRestApi.delete(endpoint)
172
124
  end
173
125
 
174
- # Fetches all attribute attributes and their values.
175
- #
176
- # @example Get all attributes for the attribute "test"
177
- #
178
- # get_attribute('test')
179
- #
180
- # @param id [String] The ID of the attribute.
181
- #
182
- # @return [Hash] a hash with attributes and their values.
183
- # @deprecated Please use local attributes. Get attributes using {#get_obj_class}.
184
- # @api public
185
- def get_attribute(id)
186
- warn_deprecated __callee__, 'get_obj_class'
187
- endpoint = "revisions/#{Workspace.current.revision_id}/attributes/#{id}"
188
-
189
- CmsRestApi.get(endpoint)
190
- end
191
-
192
126
  # Fetches all object attributes and their values.
193
127
  #
194
128
  # @example Get all attributes for the obj with id "abc123"
@@ -200,7 +134,7 @@ module RailsConnector
200
134
  # @return [Hash] a hash with attributes and their values.
201
135
  # @api public
202
136
  def get_obj(id)
203
- endpoint = "revisions/#{Workspace.current.revision_id}/objs/#{id}"
137
+ endpoint = "workspaces/#{Workspace.current.id}/objs/#{id}"
204
138
 
205
139
  CmsRestApi.get(endpoint)
206
140
  end
@@ -216,30 +150,11 @@ module RailsConnector
216
150
  # @return [Hash] a hash with attributes and their values.
217
151
  # @api public
218
152
  def get_obj_class(id)
219
- endpoint = "revisions/#{Workspace.current.revision_id}/obj_classes/#{id}"
153
+ endpoint = "workspaces/#{Workspace.current.id}/obj_classes/#{id}"
220
154
 
221
155
  CmsRestApi.get(endpoint)
222
156
  end
223
157
 
224
- # Updates a CMS attribute.
225
- #
226
- # @example Update the title of the "test" Attribute
227
- #
228
- # update_attribute(title: 'Test Title')
229
- #
230
- # @param id [String] The ID of the attribute.
231
- # @param attributes [Hash] The updated attributes and their values.
232
- #
233
- # @return nothing
234
- # @deprecated Please use local attributes. Update attributes using {#update_obj_class}.
235
- # @api public
236
- def update_attribute(id, attributes = {})
237
- warn_deprecated __callee__, 'update_obj_class'
238
- endpoint = "revisions/#{Workspace.current.revision_id}/attributes/#{id}"
239
-
240
- CmsRestApi.put(endpoint, attribute: attributes)
241
- end
242
-
243
158
  # Updates a CMS object.
244
159
  #
245
160
  # @example Update the title of the "a1b2c3" Object
@@ -252,7 +167,7 @@ module RailsConnector
252
167
  # @return nothing
253
168
  # @api public
254
169
  def update_obj(id, attributes = {})
255
- endpoint = "revisions/#{Workspace.current.revision_id}/objs/#{id}"
170
+ endpoint = "workspaces/#{Workspace.current.id}/objs/#{id}"
256
171
 
257
172
  CmsRestApi.put(endpoint, obj: attributes)
258
173
  end
@@ -269,7 +184,7 @@ module RailsConnector
269
184
  # @return nothing
270
185
  # @api public
271
186
  def update_obj_class(id, attributes = {})
272
- endpoint = "revisions/#{Workspace.current.revision_id}/obj_classes/#{id}"
187
+ endpoint = "workspaces/#{Workspace.current.id}/obj_classes/#{id}"
273
188
 
274
189
  CmsRestApi.put(endpoint, obj_class: attributes)
275
190
  end
@@ -297,12 +212,6 @@ module RailsConnector
297
212
 
298
213
  upload_permission['blob']
299
214
  end
300
-
301
- private
302
-
303
- def warn_deprecated(method, *substitutes)
304
- warn "[DEPRECATION] '#{method}' is deprecated. Use '#{substitutes.join("' or '")}' instead."
305
- end
306
215
  end
307
216
  end
308
217
  end