Cela aurait été beaucoup plus simple à mon avis, mais je ne veux pas casser les applications existantes . Laissez la génération de l’instance SSO à l’utilisateur.
# frozen_string_literal: true
module DiscourseApi
module API
module SSO
def sync_sso(sso)
post("/admin/users/sync_sso", sso.payload)
end
end
end
end
Peut-être que demain je ferai quelque chose comme ça (mais plus propre)
# frozen_string_literal: true
module DiscourseApi
module API
module SSO
def sync_sso(params)
if params.instance_of?(DiscourseApi::SingleSignOn)
post("/admin/users/sync_sso", sso.payload)
elsif params.instance_of?(Hash)
.... identique à l'actuel
end
end
end
end
end
Qu’en pensez-vous ? Mon application aura idéalement une fonction unique qui génère DiscourseApi::SingleSignOn, et je pourrai alors la passer à sso_login ou sync_sso