lib/indieweb/endpoints/parsers/webmention_parser.rb in indieweb-endpoints-0.7.0 vs lib/indieweb/endpoints/parsers/webmention_parser.rb in indieweb-endpoints-1.0.0
- old
+ new
@@ -8,25 +8,16 @@
Parsers.register(self)
private
- def results_from_body
- WebmentionLinkElementParser.new(response, self.class.identifier).results
+ def results_for_node(node)
+ Services::ResponseBodyParserService.new.parse(response, self.class.identifier, node)
end
- class WebmentionLinkElementParser < BaseLinkElementParser
- private
-
- def link_element
- # Return first `a` or `link` element with valid `rel` attribute
- # https://www.w3.org/TR/webmention/#sender-discovers-receiver-webmention-endpoint
- @link_element ||= link_elements.find { |element| %w[a link].include?(element.name) }
- end
-
- def link_elements_css_selector
- @link_elements_css_selector ||= %([rel~="#{identifier}"][href]:not([href*="#"]))
- end
+ # https://www.w3.org/TR/webmention/#sender-discovers-receiver-webmention-endpoint
+ def results_from_body
+ @results_from_body ||= results_for_node('link') + results_for_node('a')
end
end
end
end
end