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