Das wäre meiner Meinung nach viel einfacher gewesen, aber ich möchte keine bestehenden Apps brechen . Überlassen Sie die Generierung der SSO-Instanz dem Benutzer.
# 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
Vielleicht mache ich morgen etwas Ähnliches (aber etwas sauberer):
# 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)
.... identisch mit der aktuellen Version
end
end
end
end
end
Was haltet ihr davon? Mein App soll idealerweise eine einzige Funktion haben, die DiscourseApi::SingleSignOn generiert, und ich könnte sie dann an sso_login oder sync_sso übergeben.