mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 18:14:17 +00:00
Refactored to remove forceBypassCache param from requestService and from data service classes.
This commit is contained in:
@@ -11,7 +11,6 @@ import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.serv
|
|||||||
import { MockRouter } from '../../shared/mocks/mock-router';
|
import { MockRouter } from '../../shared/mocks/mock-router';
|
||||||
import { ChangeDetectorRef, NO_ERRORS_SCHEMA } from '@angular/core';
|
import { ChangeDetectorRef, NO_ERRORS_SCHEMA } from '@angular/core';
|
||||||
import { of as observableOf } from 'rxjs/internal/observable/of';
|
import { of as observableOf } from 'rxjs/internal/observable/of';
|
||||||
import { RemoteData } from '../../core/data/remote-data';
|
|
||||||
import { ActivatedRouteStub } from '../../shared/testing/active-router-stub';
|
import { ActivatedRouteStub } from '../../shared/testing/active-router-stub';
|
||||||
import { Community } from '../../core/shared/community.model';
|
import { Community } from '../../core/shared/community.model';
|
||||||
import { Item } from '../../core/shared/item.model';
|
import { Item } from '../../core/shared/item.model';
|
||||||
|
@@ -82,7 +82,8 @@ export class BrowseByDatePageComponent extends BrowseByMetadataPageComponent {
|
|||||||
const date = firstItemRD.payload.firstMetadataValue(metadataField);
|
const date = firstItemRD.payload.firstMetadataValue(metadataField);
|
||||||
if (hasValue(date)) {
|
if (hasValue(date)) {
|
||||||
const dateObj = new Date(date);
|
const dateObj = new Date(date);
|
||||||
lowerLimit = dateObj.getFullYear();
|
// TODO: it appears that getFullYear (based on local time) is sometimes unreliable. Switching to UTC.
|
||||||
|
lowerLimit = dateObj.getUTCFullYear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const options = [];
|
const options = [];
|
||||||
|
@@ -44,7 +44,7 @@ export class AuthRequestService {
|
|||||||
map((endpointURL) => this.getEndpointByMethod(endpointURL, method)),
|
map((endpointURL) => this.getEndpointByMethod(endpointURL, method)),
|
||||||
distinctUntilChanged(),
|
distinctUntilChanged(),
|
||||||
map((endpointURL: string) => new AuthPostRequest(this.requestService.generateRequestId(), endpointURL, body, options)),
|
map((endpointURL: string) => new AuthPostRequest(this.requestService.generateRequestId(), endpointURL, body, options)),
|
||||||
tap((request: PostRequest) => this.requestService.configure(request, true)),
|
tap((request: PostRequest) => this.requestService.configure(request)),
|
||||||
mergeMap((request: PostRequest) => this.fetchRequest(request)),
|
mergeMap((request: PostRequest) => this.fetchRequest(request)),
|
||||||
distinctUntilChanged());
|
distinctUntilChanged());
|
||||||
}
|
}
|
||||||
@@ -55,7 +55,7 @@ export class AuthRequestService {
|
|||||||
map((endpointURL) => this.getEndpointByMethod(endpointURL, method)),
|
map((endpointURL) => this.getEndpointByMethod(endpointURL, method)),
|
||||||
distinctUntilChanged(),
|
distinctUntilChanged(),
|
||||||
map((endpointURL: string) => new AuthGetRequest(this.requestService.generateRequestId(), endpointURL, options)),
|
map((endpointURL: string) => new AuthGetRequest(this.requestService.generateRequestId(), endpointURL, options)),
|
||||||
tap((request: GetRequest) => this.requestService.configure(request, true)),
|
tap((request: GetRequest) => this.requestService.configure(request)),
|
||||||
mergeMap((request: GetRequest) => this.fetchRequest(request)),
|
mergeMap((request: GetRequest) => this.fetchRequest(request)),
|
||||||
distinctUntilChanged());
|
distinctUntilChanged());
|
||||||
}
|
}
|
||||||
|
@@ -114,7 +114,7 @@ describe('BrowseService', () => {
|
|||||||
scheduler.schedule(() => service.getBrowseDefinitions().subscribe());
|
scheduler.schedule(() => service.getBrowseDefinitions().subscribe());
|
||||||
scheduler.flush();
|
scheduler.flush();
|
||||||
|
|
||||||
expect(requestService.configure).toHaveBeenCalledWith(expected, undefined);
|
expect(requestService.configure).toHaveBeenCalledWith(expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should call RemoteDataBuildService to create the RemoteData Observable', () => {
|
it('should call RemoteDataBuildService to create the RemoteData Observable', () => {
|
||||||
@@ -155,7 +155,7 @@ describe('BrowseService', () => {
|
|||||||
scheduler.schedule(() => service.getBrowseEntriesFor(new BrowseEntrySearchOptions(browseDefinitions[1].id)).subscribe());
|
scheduler.schedule(() => service.getBrowseEntriesFor(new BrowseEntrySearchOptions(browseDefinitions[1].id)).subscribe());
|
||||||
scheduler.flush();
|
scheduler.flush();
|
||||||
|
|
||||||
expect(requestService.configure).toHaveBeenCalledWith(expected, undefined);
|
expect(requestService.configure).toHaveBeenCalledWith(expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should call RemoteDataBuildService to create the RemoteData Observable', () => {
|
it('should call RemoteDataBuildService to create the RemoteData Observable', () => {
|
||||||
@@ -174,7 +174,7 @@ describe('BrowseService', () => {
|
|||||||
scheduler.schedule(() => service.getBrowseItemsFor(mockAuthorName, new BrowseEntrySearchOptions(browseDefinitions[1].id)).subscribe());
|
scheduler.schedule(() => service.getBrowseItemsFor(mockAuthorName, new BrowseEntrySearchOptions(browseDefinitions[1].id)).subscribe());
|
||||||
scheduler.flush();
|
scheduler.flush();
|
||||||
|
|
||||||
expect(requestService.configure).toHaveBeenCalledWith(expected, undefined);
|
expect(requestService.configure).toHaveBeenCalledWith(expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should call RemoteDataBuildService to create the RemoteData Observable', () => {
|
it('should call RemoteDataBuildService to create the RemoteData Observable', () => {
|
||||||
@@ -303,7 +303,7 @@ describe('BrowseService', () => {
|
|||||||
scheduler.schedule(() => service.getFirstItemFor(browseDefinitions[1].id).subscribe());
|
scheduler.schedule(() => service.getFirstItemFor(browseDefinitions[1].id).subscribe());
|
||||||
scheduler.flush();
|
scheduler.flush();
|
||||||
|
|
||||||
expect(requestService.configure).toHaveBeenCalledWith(expected, undefined);
|
expect(requestService.configure).toHaveBeenCalledWith(expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should call RemoteDataBuildService to create the RemoteData Observable', () => {
|
it('should call RemoteDataBuildService to create the RemoteData Observable', () => {
|
||||||
|
@@ -24,7 +24,6 @@ import { SearchParam } from '../cache/models/search-param.model';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
export class CollectionDataService extends ComColDataService<Collection> {
|
export class CollectionDataService extends ComColDataService<Collection> {
|
||||||
protected linkPath = 'collections';
|
protected linkPath = 'collections';
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
@@ -28,7 +28,6 @@ class NormalizedTestObject extends NormalizedObject<Item> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class TestService extends ComColDataService<any> {
|
class TestService extends ComColDataService<any> {
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
@@ -24,7 +24,6 @@ export class CommunityDataService extends ComColDataService<Community> {
|
|||||||
protected linkPath = 'communities';
|
protected linkPath = 'communities';
|
||||||
protected topLinkPath = 'communities/search/top';
|
protected topLinkPath = 'communities/search/top';
|
||||||
protected cds = this;
|
protected cds = this;
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
@@ -24,7 +24,6 @@ class NormalizedTestObject extends NormalizedObject<Item> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class TestService extends DataService<any> {
|
class TestService extends DataService<any> {
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
@@ -45,7 +45,6 @@ export abstract class DataService<T extends CacheableObject> {
|
|||||||
protected abstract store: Store<CoreState>;
|
protected abstract store: Store<CoreState>;
|
||||||
protected abstract linkPath: string;
|
protected abstract linkPath: string;
|
||||||
protected abstract halService: HALEndpointService;
|
protected abstract halService: HALEndpointService;
|
||||||
protected abstract forceBypassCache = false;
|
|
||||||
protected abstract objectCache: ObjectCacheService;
|
protected abstract objectCache: ObjectCacheService;
|
||||||
protected abstract notificationsService: NotificationsService;
|
protected abstract notificationsService: NotificationsService;
|
||||||
protected abstract http: HttpClient;
|
protected abstract http: HttpClient;
|
||||||
@@ -131,7 +130,7 @@ export abstract class DataService<T extends CacheableObject> {
|
|||||||
first((href: string) => hasValue(href)))
|
first((href: string) => hasValue(href)))
|
||||||
.subscribe((href: string) => {
|
.subscribe((href: string) => {
|
||||||
const request = new FindAllRequest(this.requestService.generateRequestId(), href, options);
|
const request = new FindAllRequest(this.requestService.generateRequestId(), href, options);
|
||||||
this.requestService.configure(request, this.forceBypassCache);
|
this.requestService.configure(request);
|
||||||
});
|
});
|
||||||
|
|
||||||
return this.rdbService.buildList<T>(hrefObs) as Observable<RemoteData<PaginatedList<T>>>;
|
return this.rdbService.buildList<T>(hrefObs) as Observable<RemoteData<PaginatedList<T>>>;
|
||||||
@@ -154,14 +153,14 @@ export abstract class DataService<T extends CacheableObject> {
|
|||||||
find((href: string) => hasValue(href)))
|
find((href: string) => hasValue(href)))
|
||||||
.subscribe((href: string) => {
|
.subscribe((href: string) => {
|
||||||
const request = new FindByIDRequest(this.requestService.generateRequestId(), href, id);
|
const request = new FindByIDRequest(this.requestService.generateRequestId(), href, id);
|
||||||
this.requestService.configure(request, this.forceBypassCache);
|
this.requestService.configure(request);
|
||||||
});
|
});
|
||||||
|
|
||||||
return this.rdbService.buildSingle<T>(hrefObs);
|
return this.rdbService.buildSingle<T>(hrefObs);
|
||||||
}
|
}
|
||||||
|
|
||||||
findByHref(href: string, options?: HttpOptions): Observable<RemoteData<T>> {
|
findByHref(href: string, options?: HttpOptions): Observable<RemoteData<T>> {
|
||||||
this.requestService.configure(new GetRequest(this.requestService.generateRequestId(), href, null, options), this.forceBypassCache);
|
this.requestService.configure(new GetRequest(this.requestService.generateRequestId(), href, null, options));
|
||||||
return this.rdbService.buildSingle<T>(href);
|
return this.rdbService.buildSingle<T>(href);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -192,7 +191,7 @@ export abstract class DataService<T extends CacheableObject> {
|
|||||||
first((href: string) => hasValue(href)))
|
first((href: string) => hasValue(href)))
|
||||||
.subscribe((href: string) => {
|
.subscribe((href: string) => {
|
||||||
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);
|
||||||
});
|
});
|
||||||
|
|
||||||
return this.rdbService.buildList<T>(hrefObs) as Observable<RemoteData<PaginatedList<T>>>;
|
return this.rdbService.buildList<T>(hrefObs) as Observable<RemoteData<PaginatedList<T>>>;
|
||||||
|
@@ -72,7 +72,7 @@ describe('DSpaceObjectDataService', () => {
|
|||||||
scheduler.schedule(() => service.findById(testObject.uuid));
|
scheduler.schedule(() => service.findById(testObject.uuid));
|
||||||
scheduler.flush();
|
scheduler.flush();
|
||||||
|
|
||||||
expect(requestService.configure).toHaveBeenCalledWith(new FindByIDRequest(requestUUID, requestURL, testObject.uuid), false);
|
expect(requestService.configure).toHaveBeenCalledWith(new FindByIDRequest(requestUUID, requestURL, testObject.uuid));
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return a RemoteData<DSpaceObject> for the object with the given ID', () => {
|
it('should return a RemoteData<DSpaceObject> for the object with the given ID', () => {
|
||||||
|
@@ -18,7 +18,6 @@ import { DSOChangeAnalyzer } from './dso-change-analyzer.service';
|
|||||||
/* tslint:disable:max-classes-per-file */
|
/* tslint:disable:max-classes-per-file */
|
||||||
class DataServiceImpl extends DataService<DSpaceObject> {
|
class DataServiceImpl extends DataService<DSpaceObject> {
|
||||||
protected linkPath = 'dso';
|
protected linkPath = 'dso';
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
@@ -27,7 +27,6 @@ import { Collection } from '../shared/collection.model';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
export class ItemDataService extends DataService<Item> {
|
export class ItemDataService extends DataService<Item> {
|
||||||
protected linkPath = 'items';
|
protected linkPath = 'items';
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
@@ -19,7 +19,6 @@ import { MetadataSchema } from '../metadata/metadata-schema.model';
|
|||||||
/* tslint:disable:max-classes-per-file */
|
/* tslint:disable:max-classes-per-file */
|
||||||
class DataServiceImpl extends DataService<MetadataSchema> {
|
class DataServiceImpl extends DataService<MetadataSchema> {
|
||||||
protected linkPath = 'metadataschemas';
|
protected linkPath = 'metadataschemas';
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
@@ -147,12 +147,12 @@ export class RequestService {
|
|||||||
* @param {RestRequest} request The request to send out
|
* @param {RestRequest} request The request to send out
|
||||||
* @param {boolean} forceBypassCache When true, a new request is always dispatched
|
* @param {boolean} forceBypassCache When true, a new request is always dispatched
|
||||||
*/
|
*/
|
||||||
configure<T extends CacheableObject>(request: RestRequest, forceBypassCache: boolean = false): void {
|
configure<T extends CacheableObject>(request: RestRequest): void {
|
||||||
const isGetRequest = request.method === RestRequestMethod.GET;
|
const isGetRequest = request.method === RestRequestMethod.GET;
|
||||||
if (forceBypassCache) {
|
// if (forceBypassCache) {
|
||||||
this.clearRequestsOnTheirWayToTheStore(request);
|
// this.clearRequestsOnTheirWayToTheStore(request);
|
||||||
}
|
// }
|
||||||
if (!isGetRequest || (forceBypassCache && !this.isPending(request)) || !this.isCachedOrPending(request)) {
|
if (!isGetRequest || !this.isCachedOrPending(request)) {
|
||||||
this.dispatchRequest(request);
|
this.dispatchRequest(request);
|
||||||
if (isGetRequest) {
|
if (isGetRequest) {
|
||||||
this.trackRequestsOnTheirWayToTheStore(request);
|
this.trackRequestsOnTheirWayToTheStore(request);
|
||||||
|
@@ -61,7 +61,7 @@ describe('ResourcePolicyService', () => {
|
|||||||
scheduler.schedule(() => service.findByHref(requestURL));
|
scheduler.schedule(() => service.findByHref(requestURL));
|
||||||
scheduler.flush();
|
scheduler.flush();
|
||||||
|
|
||||||
expect(requestService.configure).toHaveBeenCalledWith(new GetRequest(requestUUID, requestURL, null), false);
|
expect(requestService.configure).toHaveBeenCalledWith(new GetRequest(requestUUID, requestURL, null));
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return a RemoteData<ResourcePolicy> for the object with the given URL', () => {
|
it('should return a RemoteData<ResourcePolicy> for the object with the given URL', () => {
|
||||||
|
@@ -22,7 +22,6 @@ import { HttpOptions } from '../dspace-rest-v2/dspace-rest-v2.service';
|
|||||||
/* tslint:disable:max-classes-per-file */
|
/* tslint:disable:max-classes-per-file */
|
||||||
class DataServiceImpl extends DataService<ResourcePolicy> {
|
class DataServiceImpl extends DataService<ResourcePolicy> {
|
||||||
protected linkPath = 'resourcepolicies';
|
protected linkPath = 'resourcepolicies';
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
@@ -27,7 +27,6 @@ import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service';
|
|||||||
export class GroupEpersonService extends EpersonService<Group> {
|
export class GroupEpersonService extends EpersonService<Group> {
|
||||||
protected linkPath = 'groups';
|
protected linkPath = 'groups';
|
||||||
protected browseEndpoint = '';
|
protected browseEndpoint = '';
|
||||||
protected forceBypassCache = false;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected comparator: DSOChangeAnalyzer<Group>,
|
protected comparator: DSOChangeAnalyzer<Group>,
|
||||||
|
@@ -148,7 +148,7 @@ describe('Core Module - RxJS Operators', () => {
|
|||||||
scheduler.schedule(() => source.pipe(configureRequest(requestService)).subscribe());
|
scheduler.schedule(() => source.pipe(configureRequest(requestService)).subscribe());
|
||||||
scheduler.flush();
|
scheduler.flush();
|
||||||
|
|
||||||
expect(requestService.configure).toHaveBeenCalledWith(testRequest, undefined);
|
expect(requestService.configure).toHaveBeenCalledWith(testRequest);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@@ -52,9 +52,9 @@ export const getResourceLinksFromResponse = () =>
|
|||||||
map((response: DSOSuccessResponse) => response.resourceSelfLinks),
|
map((response: DSOSuccessResponse) => response.resourceSelfLinks),
|
||||||
);
|
);
|
||||||
|
|
||||||
export const configureRequest = (requestService: RequestService, forceBypassCache?: boolean) =>
|
export const configureRequest = (requestService: RequestService) =>
|
||||||
(source: Observable<RestRequest>): Observable<RestRequest> =>
|
(source: Observable<RestRequest>): Observable<RestRequest> =>
|
||||||
source.pipe(tap((request: RestRequest) => requestService.configure(request, forceBypassCache)));
|
source.pipe(tap((request: RestRequest) => requestService.configure(request)));
|
||||||
|
|
||||||
export const getRemoteDataPayload = () =>
|
export const getRemoteDataPayload = () =>
|
||||||
<T>(source: Observable<RemoteData<T>>): Observable<T> =>
|
<T>(source: Observable<RemoteData<T>>): Observable<T> =>
|
||||||
|
@@ -62,7 +62,7 @@ describe('SubmissionRestService test suite', () => {
|
|||||||
scheduler.schedule(() => service.getDataById(resourceEndpoint, resourceScope).subscribe());
|
scheduler.schedule(() => service.getDataById(resourceEndpoint, resourceScope).subscribe());
|
||||||
scheduler.flush();
|
scheduler.flush();
|
||||||
|
|
||||||
expect(requestService.configure).toHaveBeenCalledWith(expected, true);
|
expect(requestService.configure).toHaveBeenCalledWith(expected);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@@ -109,7 +109,7 @@ export class SubmissionRestService {
|
|||||||
filter((href: string) => isNotEmpty(href)),
|
filter((href: string) => isNotEmpty(href)),
|
||||||
distinctUntilChanged(),
|
distinctUntilChanged(),
|
||||||
map((endpointURL: string) => new SubmissionRequest(requestId, endpointURL)),
|
map((endpointURL: string) => new SubmissionRequest(requestId, endpointURL)),
|
||||||
tap((request: RestRequest) => this.requestService.configure(request, true)),
|
tap((request: RestRequest) => this.requestService.configure(request)),
|
||||||
flatMap(() => this.fetchRequest(requestId)),
|
flatMap(() => this.fetchRequest(requestId)),
|
||||||
distinctUntilChanged());
|
distinctUntilChanged());
|
||||||
}
|
}
|
||||||
|
@@ -20,7 +20,6 @@ import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
export class WorkflowItemDataService extends DataService<WorkflowItem> {
|
export class WorkflowItemDataService extends DataService<WorkflowItem> {
|
||||||
protected linkPath = 'workflowitems';
|
protected linkPath = 'workflowitems';
|
||||||
protected forceBypassCache = true;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected comparator: DSOChangeAnalyzer<WorkflowItem>,
|
protected comparator: DSOChangeAnalyzer<WorkflowItem>,
|
||||||
|
@@ -20,7 +20,6 @@ import { WorkspaceItem } from './models/workspaceitem.model';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
export class WorkspaceitemDataService extends DataService<WorkspaceItem> {
|
export class WorkspaceitemDataService extends DataService<WorkspaceItem> {
|
||||||
protected linkPath = 'workspaceitems';
|
protected linkPath = 'workspaceitems';
|
||||||
protected forceBypassCache = true;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected comparator: DSOChangeAnalyzer<WorkspaceItem>,
|
protected comparator: DSOChangeAnalyzer<WorkspaceItem>,
|
||||||
|
@@ -27,11 +27,6 @@ export class ClaimedTaskDataService extends TasksService<ClaimedTask> {
|
|||||||
*/
|
*/
|
||||||
protected linkPath = 'claimedtasks';
|
protected linkPath = 'claimedtasks';
|
||||||
|
|
||||||
/**
|
|
||||||
* When true, a new request is always dispatched
|
|
||||||
*/
|
|
||||||
protected forceBypassCache = true;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize instance variables
|
* Initialize instance variables
|
||||||
*
|
*
|
||||||
|
@@ -27,11 +27,6 @@ export class PoolTaskDataService extends TasksService<PoolTask> {
|
|||||||
*/
|
*/
|
||||||
protected linkPath = 'pooltasks';
|
protected linkPath = 'pooltasks';
|
||||||
|
|
||||||
/**
|
|
||||||
* When true, a new request is always dispatched
|
|
||||||
*/
|
|
||||||
protected forceBypassCache = true;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize instance variables
|
* Initialize instance variables
|
||||||
*
|
*
|
||||||
|
@@ -29,7 +29,6 @@ class TestTask extends TaskObject {
|
|||||||
|
|
||||||
class TestService extends TasksService<TestTask> {
|
class TestService extends TasksService<TestTask> {
|
||||||
protected linkPath = LINK_NAME;
|
protected linkPath = LINK_NAME;
|
||||||
protected forceBypassCache = true;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
|
Reference in New Issue
Block a user