mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 18:14:17 +00:00
Retrieve http response status code as number instead as string
This commit is contained in:
@@ -25,7 +25,7 @@ export class AuthResponseParsingService extends BaseResponseParsingService imple
|
||||
}
|
||||
|
||||
parse(request: RestRequest, data: DSpaceRESTV2Response): RestResponse {
|
||||
if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links) && (data.statusCode === '200' || data.statusCode === 'OK')) {
|
||||
if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links) && (data.statusCode === 200)) {
|
||||
const response = this.process<AuthStatus, AuthType>(data.payload, request.href);
|
||||
return new AuthStatusResponse(response[Object.keys(response)[0]][0], data.statusCode);
|
||||
} else {
|
||||
|
@@ -93,7 +93,7 @@ export class RemoteDataBuildService {
|
||||
isSuccessful = resEntry.response.isSuccessful;
|
||||
const errorMessage = isSuccessful === false ? (resEntry.response as ErrorResponse).errorMessage : undefined;
|
||||
if (hasValue(errorMessage)) {
|
||||
error = new RemoteDataError(resEntry.response.statusCode, errorMessage);
|
||||
error = new RemoteDataError(resEntry.response.statusCode.toString(), errorMessage);
|
||||
}
|
||||
}
|
||||
|
||||
|
36
src/app/core/cache/response-cache.models.ts
vendored
36
src/app/core/cache/response-cache.models.ts
vendored
@@ -18,7 +18,7 @@ export class RestResponse {
|
||||
|
||||
constructor(
|
||||
public isSuccessful: boolean,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
) {
|
||||
}
|
||||
}
|
||||
@@ -26,7 +26,7 @@ export class RestResponse {
|
||||
export class DSOSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public resourceSelfLinks: string[],
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -36,7 +36,7 @@ export class DSOSuccessResponse extends RestResponse {
|
||||
export class RegistryMetadataschemasSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public metadataschemasResponse: RegistryMetadataschemasResponse,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -46,7 +46,7 @@ export class RegistryMetadataschemasSuccessResponse extends RestResponse {
|
||||
export class RegistryMetadatafieldsSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public metadatafieldsResponse: RegistryMetadatafieldsResponse,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -56,7 +56,7 @@ export class RegistryMetadatafieldsSuccessResponse extends RestResponse {
|
||||
export class RegistryBitstreamformatsSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public bitstreamformatsResponse: RegistryBitstreamformatsResponse,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -66,7 +66,7 @@ export class RegistryBitstreamformatsSuccessResponse extends RestResponse {
|
||||
export class MetadataschemaSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public metadataschema: MetadataSchema,
|
||||
public statusCode: string
|
||||
public statusCode: number
|
||||
) {
|
||||
super(true, statusCode);
|
||||
}
|
||||
@@ -75,7 +75,7 @@ export class MetadataschemaSuccessResponse extends RestResponse {
|
||||
export class SearchSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public results: SearchQueryResponse,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -85,7 +85,7 @@ export class SearchSuccessResponse extends RestResponse {
|
||||
export class FacetConfigSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public results: SearchFilterConfig[],
|
||||
public statusCode: string
|
||||
public statusCode: number
|
||||
) {
|
||||
super(true, statusCode);
|
||||
}
|
||||
@@ -98,7 +98,7 @@ export class FacetValueMap {
|
||||
export class FacetValueSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public results: FacetValue[],
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo) {
|
||||
super(true, statusCode);
|
||||
}
|
||||
@@ -107,7 +107,7 @@ export class FacetValueSuccessResponse extends RestResponse {
|
||||
export class FacetValueMapSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public results: FacetValueMap,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
) {
|
||||
super(true, statusCode);
|
||||
}
|
||||
@@ -120,7 +120,7 @@ export class EndpointMap {
|
||||
export class EndpointMapSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public endpointMap: EndpointMap,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
) {
|
||||
super(true, statusCode);
|
||||
}
|
||||
@@ -129,7 +129,7 @@ export class EndpointMapSuccessResponse extends RestResponse {
|
||||
export class GenericSuccessResponse<T> extends RestResponse {
|
||||
constructor(
|
||||
public payload: T,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -149,7 +149,7 @@ export class ErrorResponse extends RestResponse {
|
||||
export class ConfigSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public configDefinition: ConfigObject[],
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -161,7 +161,7 @@ export class AuthStatusResponse extends RestResponse {
|
||||
|
||||
constructor(
|
||||
public response: AuthStatus,
|
||||
public statusCode: string
|
||||
public statusCode: number
|
||||
) {
|
||||
super(true, statusCode);
|
||||
}
|
||||
@@ -170,7 +170,7 @@ export class AuthStatusResponse extends RestResponse {
|
||||
export class IntegrationSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public dataDefinition: IntegrationModel[],
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -180,7 +180,7 @@ export class IntegrationSuccessResponse extends RestResponse {
|
||||
export class PostPatchSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public dataDefinition: any[],
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -190,7 +190,7 @@ export class PostPatchSuccessResponse extends RestResponse {
|
||||
export class SubmissionSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public dataDefinition: Array<NormalizedObject | ConfigObject | string>,
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
@@ -200,7 +200,7 @@ export class SubmissionSuccessResponse extends RestResponse {
|
||||
export class EpersonSuccessResponse extends RestResponse {
|
||||
constructor(
|
||||
public epersonDefinition: NormalizedObject[],
|
||||
public statusCode: string,
|
||||
public statusCode: number,
|
||||
public pageInfo?: PageInfo
|
||||
) {
|
||||
super(true, statusCode);
|
||||
|
@@ -27,7 +27,7 @@ export class ConfigResponseParsingService extends BaseResponseParsingService imp
|
||||
}
|
||||
|
||||
parse(request: RestRequest, data: DSpaceRESTV2Response): RestResponse {
|
||||
if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links) && (data.statusCode === '201' || data.statusCode === '200' || data.statusCode === 'OK')) {
|
||||
if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links) && (data.statusCode === 201 || data.statusCode === 200)) {
|
||||
const configDefinition = this.process<ConfigObject,ConfigType>(data.payload, request.href);
|
||||
return new ConfigSuccessResponse(configDefinition[Object.keys(configDefinition)[0]], data.statusCode, this.processPageInfo(data.payload));
|
||||
} else {
|
||||
|
@@ -138,7 +138,6 @@ export abstract class DataService<TNormalized extends NormalizedObject, TDomain>
|
||||
.filter((href: string) => hasValue(href))
|
||||
.take(1)
|
||||
.subscribe((href: string) => {
|
||||
console.log(href);
|
||||
const request = new FindAllRequest(this.requestService.generateRequestId(), href, options);
|
||||
this.requestService.configure(request, true);
|
||||
});
|
||||
|
@@ -303,6 +303,6 @@ export class EpersonRequest extends GetRequest {
|
||||
}
|
||||
|
||||
export class RequestError extends Error {
|
||||
statusText: string;
|
||||
statusText: number;
|
||||
}
|
||||
/* tslint:enable:max-classes-per-file */
|
||||
|
@@ -8,5 +8,5 @@ export interface DSpaceRESTV2Response {
|
||||
page?: any;
|
||||
},
|
||||
headers?: HttpHeaders,
|
||||
statusCode: string
|
||||
statusCode: number
|
||||
}
|
||||
|
@@ -67,7 +67,7 @@ export class DSpaceRESTv2Service {
|
||||
requestOptions.responseType = options.responseType;
|
||||
}
|
||||
return this.http.request(method, url, requestOptions)
|
||||
.map((res) => ({ payload: res.body, headers: res.headers, statusCode: res.statusText }))
|
||||
.map((res) => ({ payload: res.body, headers: res.headers, statusCode: res.status }))
|
||||
.catch((err) => {
|
||||
console.log('Error: ', err);
|
||||
return Observable.throw(err);
|
||||
|
@@ -33,10 +33,10 @@ export class SubmissionResponseParsingService extends BaseResponseParsingService
|
||||
parse(request: RestRequest, data: DSpaceRESTV2Response): RestResponse {
|
||||
if (isNotEmpty(data.payload)
|
||||
&& isNotEmpty(data.payload._links)
|
||||
&& (data.statusCode === '201' || data.statusCode === '200' || data.statusCode === 'OK')) {
|
||||
&& (data.statusCode === 201 || data.statusCode === 200)) {
|
||||
const dataDefinition = this.processResponse<NormalizedObject | ConfigObject, SubmissionResourceType>(data.payload, request.href);
|
||||
return new SubmissionSuccessResponse(dataDefinition[Object.keys(dataDefinition)[0]], data.statusCode, this.processPageInfo(data.payload));
|
||||
} else if (isEmpty(data.payload) && data.statusCode === '204') {
|
||||
} else if (isEmpty(data.payload) && data.statusCode === 204) {
|
||||
// Response from a DELETE request
|
||||
return new SubmissionSuccessResponse(null, data.statusCode);
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user