mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-13 21:13:07 +00:00

# Conflicts: # src/app/core/cache/response-cache.models.ts # src/app/core/core.module.ts # src/app/core/data/request.models.ts
82 lines
2.1 KiB
TypeScript
82 lines
2.1 KiB
TypeScript
import { SortOptions } from '../cache/models/sort-options.model';
|
|
import { GenericConstructor } from '../shared/generic-constructor';
|
|
import { GlobalConfig } from '../../../config/global-config.interface';
|
|
import { RESTURLCombiner } from '../url-combiner/rest-url-combiner';
|
|
import { DSOResponseParsingService } from './dso-response-parsing.service';
|
|
import { ResponseParsingService } from './parsing.service';
|
|
import { RootResponseParsingService } from './root-response-parsing.service';
|
|
import { BrowseResponseParsingService } from './browse-response-parsing.service';
|
|
import { ConfigResponseParsingService } from './config-response-parsing.service';
|
|
|
|
/* tslint:disable:max-classes-per-file */
|
|
export class RestRequest {
|
|
constructor(
|
|
public href: string,
|
|
) { }
|
|
|
|
getResponseParser(): GenericConstructor<ResponseParsingService> {
|
|
return DSOResponseParsingService;
|
|
}
|
|
}
|
|
|
|
export class FindByIDRequest extends RestRequest {
|
|
constructor(
|
|
href: string,
|
|
public resourceID: string
|
|
) {
|
|
super(href);
|
|
}
|
|
}
|
|
|
|
export class FindAllOptions {
|
|
scopeID?: string;
|
|
elementsPerPage?: number;
|
|
currentPage?: number;
|
|
sort?: SortOptions;
|
|
}
|
|
|
|
export class FindAllRequest extends RestRequest {
|
|
constructor(
|
|
href: string,
|
|
public options?: FindAllOptions,
|
|
) {
|
|
super(href);
|
|
}
|
|
}
|
|
|
|
export class RootEndpointRequest extends RestRequest {
|
|
constructor(EnvConfig: GlobalConfig) {
|
|
const href = new RESTURLCombiner(EnvConfig, '/').toString();
|
|
super(href);
|
|
}
|
|
|
|
getResponseParser(): GenericConstructor<ResponseParsingService> {
|
|
return RootResponseParsingService;
|
|
}
|
|
}
|
|
|
|
export class BrowseEndpointRequest extends RestRequest {
|
|
constructor(href: string) {
|
|
super(href);
|
|
}
|
|
|
|
getResponseParser(): GenericConstructor<ResponseParsingService> {
|
|
return BrowseResponseParsingService;
|
|
}
|
|
}
|
|
|
|
export class ConfigRequest extends RestRequest {
|
|
constructor(href: string) {
|
|
super(href);
|
|
}
|
|
|
|
getResponseParser(): GenericConstructor<ResponseParsingService> {
|
|
return ConfigResponseParsingService;
|
|
}
|
|
}
|
|
|
|
export class RequestError extends Error {
|
|
statusText: string;
|
|
}
|
|
/* tslint:enable:max-classes-per-file */
|