Module: RailsConnector

Defined in:
app/models/rails_connector/channel.rb,
lib/meta.rb,
lib/meta/version.rb,
app/models/rails_connector/content.rb,
app/models/rails_connector/attribute.rb,
app/models/rails_connector/obj_class.rb,
app/models/rails_connector/abstract_obj.rb,
app/models/rails_connector/blob_mapping.rb,
app/models/rails_connector/abstract_model.rb,
app/models/rails_connector/meta/eager_loader.rb,
app/models/rails_connector/object_with_meta_data.rb

Defined Under Namespace

Modules: Meta Classes: Attribute, BlobMapping, Channel, Content, ObjClass, ObjectWithMetaData

Constant Summary collapse

AbstractObj =

This trick is a workaround to provide compatiblity with both ObjExtensions-enabled versions (older versions) and ObjExtensions-deprecated versions (newest versions) of RailsConnector

It first tries to use user-defined Obj class in the newest RailsConnector, which is also an alias for RailsConnector::Obj in the older RailsConnector. If that fails it falls back to ::RailsConnector::BasicObj (new) or ::RailsConnector::Obj (old). The last case shouldn’t really ever happen.

begin
  ::Obj
rescue NameError
  begin
    ::RailsConnector::BasicObj
  rescue NameError
    ::RailsConnector::Obj
  end
end
AbstractModel =
begin
  ::RailsConnector::InfoparkBase
rescue NameError
  ::RailsConnector::CmsBaseModel
end