Commit dfb1bbf
app/models/scim/search.rb
@@ -42,9 +42,17 @@ module Scim
end
end
- def self.for(filter, clazz)
+ def initialize(clazz)
+ @clazz = clazz
+ end
+
+ def for(filter)
node = Scim::Search::Node.parse(filter)
- node.accept(Scim::Visitor.new(clazz, clazz.scim_mapper))
+ node.accept(Scim::Visitor.new(@clazz, @clazz.scim_mapper))
+ end
+
+ def self.for(filter, clazz)
+ new(clazz).for(filter)
end
end
end
app/models/user.rb
@@ -13,7 +13,7 @@ class User < ApplicationRecord
validates :timezone, inclusion: VALID_TIMEZONES
validates :locale, inclusion: VALID_LOCALES
- scope :scim_search, ->(filter) { Scim::Search.for(filter, User) }
+ scope :scim_search, ->(filter) { Scim::Search.new(User).for(filter) }
def name_id_for(name_id_format)
Saml::Kit::Namespaces::PERSISTENT == name_id_format ? id : email
Gemfile
@@ -25,8 +25,8 @@ gem 'saml-kit', '~> 1.0'
gem 'scim-kit', github: 'mokhan/scim-kit'
gem 'spank', '~> 1.0'
gem 'turbolinks', '~> 5'
-gem 'webpacker', '~> 4.0'
gem 'varkon', '~> 0.1'
+gem 'webpacker', '~> 4.0'
group :doc do
gem 'jekyll', '~> 3.8'
gem "minima", "~> 2.0" # This is the default theme for new Jekyll sites.