parse resource type from self.http_request()

		Note: uses isinstance() as plugins may extend these base LDP resource type.

		Args:
			response (requests.models.Response): response object

		Returns:
			[NonRDFSource, BasicContainer, DirectContainer, IndirectContainer]

def parse_resource_type(self, response):

		'''
		parse resource type from self.http_request()

		Note: uses isinstance() as plugins may extend these base LDP resource type.

		Args:
			response (requests.models.Response): response object

		Returns:
			[NonRDFSource, BasicContainer, DirectContainer, IndirectContainer]
		'''

		# parse 'Link' header
		links = [
			link.split(";")[0].lstrip('<').rstrip('>')
			for link in response.headers['Link'].split(', ')
			if link.startswith('<http://www.w3.org/ns/ldp#')]

		# parse resource type string with self.repo.namespace_manager.compute_qname()
		ldp_resource_types = [
			self.repo.namespace_manager.compute_qname(resource_type)[2]
			for resource_type in links]

		logger.debug('Parsed LDP resource types from LINK header: %s' % ldp_resource_types)

		# with LDP types in hand, select appropriate resource type
		# NonRDF Source
		if 'NonRDFSource' in ldp_resource_types:
			return NonRDFSource
		# Basic Container
		elif 'BasicContainer' in ldp_resource_types:
			return BasicContainer
		# Direct Container
		elif 'DirectContainer' in ldp_resource_types:
			return DirectContainer
		# Indirect Container
		elif 'IndirectContainer' in ldp_resource_types:
			return IndirectContainer
		else:
			logger.debug('could not determine resource type from Link header, returning False')
			return False