Sha256: 75961d66474c95b959e2c8452f576ba11ed8c2e14f7e67b48dba72bb6e2def19

Contents?: true

Size: 965 Bytes

Versions: 3

Compression:

Stored size: 965 Bytes

Contents

require 'xing-backend'
require 'active_support/deprecation'

module Xing
  DEPRECATED_CLASSES = {
    :HypermediaJSONMapper      => Xing::Mappers::Base,
    :BaseSerializer            => Xing::Serializers::Base,
    :ResourcesSerializer       => Xing::Serializers::RootResources,
    :JsonTreeLister            => Xing::Services::JsonTreeLister,
    :ActiveModelErrorConverter => Xing::Services::ErrorConverter,
    :RemoteSnapshotFetcher     => Xing::Services::SnapshotFetcher,
    :ListDifferenceBuilder     => Xing::Builders::OrderedListDifferenceBuilder
  }
end

#Xing::DEPRECATED_CLASSES.each do |old, new|

  ## with great power comes great responsibility
  #Object.const_set(old, ActiveSupport::Deprecation::DeprecatedConstantProxy.new(old, new))
#end

def Object.const_missing(name)
  if (klass = ::Xing::DEPRECATED_CLASSES[name.to_sym])
    warn "[DEPRECATION] #{name} is deprecated. Please use #{klass.to_s} instead."
    klass
  else
    super
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
xing-backend-0.0.16 lib/deprecated_classes.rb
xing-backend-0.0.15 lib/deprecated_classes.rb
xing-backend-0.0.14 lib/deprecated_classes.rb