get_op_or_user_services (OpenID)

    # File lib/openid/consumer/discovery.rb, line 345
      def self.get_op_or_user_services(openid_services)
        # Extract OP Identifier services.  If none found, return the rest,
        # sorted with most preferred first according to
        # OpenIDServiceEndpoint.openid_type_uris.
        #
        # openid_services is a list of OpenIDServiceEndpoint objects.
        #
        # Returns a list of OpenIDServiceEndpoint objects.

        op_services = arrange_by_type(openid_services, [OPENID_IDP_2_0_TYPE])

        openid_services = arrange_by_type(openid_services,
                                          OpenIDServiceEndpoint::OPENID_TYPE_URIS)

        if !op_services.empty?
          return op_services
        else
          return openid_services
        end
      end