refactor: Rename BasicTargetExtractor to OriginalUrlExtractor.

This commit is contained in:
Ruben Verborgh 2021-01-13 22:01:29 +01:00 committed by Joachim Van Herwegen
parent 7adc9edb76
commit 3a4ec48720
5 changed files with 9 additions and 11 deletions

View File

@ -27,7 +27,7 @@
},
{
"@id": "urn:solid-server:default:TargetExtractor",
"@type": "BasicTargetExtractor"
"@type": "OriginalUrlExtractor"
}
]
}

View File

@ -43,9 +43,9 @@ export * from './ldp/http/response/ResponseDescription';
export * from './ldp/http/AcceptPreferenceParser';
export * from './ldp/http/BasicRequestParser';
export * from './ldp/http/BasicResponseWriter';
export * from './ldp/http/BasicTargetExtractor';
export * from './ldp/http/BodyParser';
export * from './ldp/http/ErrorResponseWriter';
export * from './ldp/http/OriginalUrlExtractor';
export * from './ldp/http/Patch';
export * from './ldp/http/PreferenceParser';
export * from './ldp/http/RawBodyParser';

View File

@ -6,11 +6,9 @@ import type { ResourceIdentifier } from '../representation/ResourceIdentifier';
import { TargetExtractor } from './TargetExtractor';
/**
* Extracts an identifier from an incoming {@link HttpRequest}.
* Uses URL library for basic parsing.
* TODO: input requires more extensive cleaning/parsing based on headers (see #22).
* Reconstructs the original URL of an incoming {@link HttpRequest}.
*/
export class BasicTargetExtractor extends TargetExtractor {
export class OriginalUrlExtractor extends TargetExtractor {
public async handle({ request: { url, connection, headers }}: { request: HttpRequest }): Promise<ResourceIdentifier> {
if (!url) {
throw new Error('Missing URL');

View File

@ -3,15 +3,15 @@ import arrayifyStream from 'arrayify-stream';
import streamifyArray from 'streamify-array';
import { AcceptPreferenceParser } from '../../src/ldp/http/AcceptPreferenceParser';
import { BasicRequestParser } from '../../src/ldp/http/BasicRequestParser';
import { BasicTargetExtractor } from '../../src/ldp/http/BasicTargetExtractor';
import { BasicMetadataExtractor } from '../../src/ldp/http/metadata/BasicMetadataExtractor';
import { ContentTypeParser } from '../../src/ldp/http/metadata/ContentTypeParser';
import { OriginalUrlExtractor } from '../../src/ldp/http/OriginalUrlExtractor';
import { RawBodyParser } from '../../src/ldp/http/RawBodyParser';
import { RepresentationMetadata } from '../../src/ldp/representation/RepresentationMetadata';
import type { HttpRequest } from '../../src/server/HttpRequest';
describe('A BasicRequestParser with simple input parsers', (): void => {
const targetExtractor = new BasicTargetExtractor();
const targetExtractor = new OriginalUrlExtractor();
const preferenceParser = new AcceptPreferenceParser();
const metadataExtractor = new BasicMetadataExtractor([ new ContentTypeParser() ]);
const bodyParser = new RawBodyParser();

View File

@ -1,7 +1,7 @@
import { BasicTargetExtractor } from '../../../../src/ldp/http/BasicTargetExtractor';
import { OriginalUrlExtractor } from '../../../../src/ldp/http/OriginalUrlExtractor';
describe('A BasicTargetExtractor', (): void => {
const extractor = new BasicTargetExtractor();
describe('A OriginalUrlExtractor', (): void => {
const extractor = new OriginalUrlExtractor();
it('can handle any input.', async(): Promise<void> => {
await expect(extractor.canHandle({} as any)).resolves.toBeUndefined();