Methods

Class Public methods

new(app)

📝 Source code
# File actionpack/lib/action_dispatch/http/permissions_policy.rb, line 31
      def initialize(app)
        @app = app
      end
🔎 See on GitHub

Instance Public methods

call(env)

📝 Source code
# File actionpack/lib/action_dispatch/http/permissions_policy.rb, line 35
      def call(env)
        _, headers, _ = response = @app.call(env)

        return response unless html_response?(headers)
        return response if policy_present?(headers)

        request = ActionDispatch::Request.new(env)

        if policy = request.permissions_policy
          headers[ActionDispatch::Constants::FEATURE_POLICY] = policy.build(request.controller_instance)
        end

        if policy_empty?(policy)
          headers.delete(ActionDispatch::Constants::FEATURE_POLICY)
        end

        response
      end
🔎 See on GitHub