Retrieve http response status code as number instead as string

This commit is contained in:
Giuseppe
2018-10-11 11:19:25 +02:00
parent f8620d5c12
commit ead86ad94e
9 changed files with 26 additions and 27 deletions

View File

@@ -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 {

View File

@@ -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);
}
}

View File

@@ -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);

View File

@@ -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 {

View File

@@ -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);
});

View File

@@ -303,6 +303,6 @@ export class EpersonRequest extends GetRequest {
}
export class RequestError extends Error {
statusText: string;
statusText: number;
}
/* tslint:enable:max-classes-per-file */

View File

@@ -8,5 +8,5 @@ export interface DSpaceRESTV2Response {
page?: any;
},
headers?: HttpHeaders,
statusCode: string
statusCode: number
}

View File

@@ -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);

View File

@@ -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 {