# File lib/openid/server.rb, line 1218 def decode(query) if query.nil? or query.length == 0 return nil end message = Message.from_post_args(query) mode = message.get_arg(OPENID_NS, 'mode') if !mode msg = sprintf("No mode value in message %s", message) raise ProtocolError.new(message, msg) end handler = @@handlers.fetch(mode, self.method('default_decoder')) return handler.call(message, @server.op_endpoint) end