mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
Added forceBypassCache property to request model.
This commit is contained in:
@@ -23,6 +23,7 @@ import { TaskResponseParsingService } from '../tasks/task-response-parsing.servi
|
||||
|
||||
export abstract class RestRequest {
|
||||
public responseMsToLive = 10 * 1000;
|
||||
public forceBypassCache = false;
|
||||
constructor(
|
||||
public uuid: string,
|
||||
public href: string,
|
||||
@@ -281,6 +282,7 @@ export class UpdateMetadataFieldRequest extends PutRequest {
|
||||
* Class representing a submission HTTP GET request object
|
||||
*/
|
||||
export class SubmissionRequest extends GetRequest {
|
||||
forceBypassCache = true;
|
||||
constructor(uuid: string, href: string) {
|
||||
super(uuid, href);
|
||||
}
|
||||
|
@@ -148,7 +148,7 @@ export class RequestService {
|
||||
*/
|
||||
configure<T extends CacheableObject>(request: RestRequest): void {
|
||||
const isGetRequest = request.method === RestRequestMethod.GET;
|
||||
if (!isGetRequest || !this.isCachedOrPending(request)) {
|
||||
if (!isGetRequest || request.forceBypassCache || !this.isCachedOrPending(request)) {
|
||||
this.dispatchRequest(request);
|
||||
if (isGetRequest) {
|
||||
this.trackRequestsOnTheirWayToTheStore(request);
|
||||
|
@@ -60,7 +60,8 @@ describe('SubmissionRestService test suite', () => {
|
||||
it('should configure a new SubmissionRequest', () => {
|
||||
const expected = new SubmissionRequest(requestService.generateRequestId(), resourceHref);
|
||||
// set cache time to zero
|
||||
expected.responseMsToLive = 10 * 1000;
|
||||
expected.responseMsToLive = 0;
|
||||
expected.forceBypassCache = true;
|
||||
scheduler.schedule(() => service.getDataById(resourceEndpoint, resourceScope).subscribe());
|
||||
scheduler.flush();
|
||||
|
||||
|
Reference in New Issue
Block a user