mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
Revert "93803: Update DataService constructor signatures"
This reverts commit a6fb4a6303
.
This commit is contained in:
@@ -22,8 +22,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
})
|
})
|
||||||
@dataService(BROWSE_DEFINITION)
|
@dataService(BROWSE_DEFINITION)
|
||||||
export class BrowseDefinitionDataService extends IdentifiableDataService<BrowseDefinition> implements FindAllData<BrowseDefinition> {
|
export class BrowseDefinitionDataService extends IdentifiableDataService<BrowseDefinition> implements FindAllData<BrowseDefinition> {
|
||||||
protected linkPath = 'browses';
|
|
||||||
|
|
||||||
private findAllData: FindAllDataImpl<BrowseDefinition>;
|
private findAllData: FindAllDataImpl<BrowseDefinition>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -32,9 +30,9 @@ export class BrowseDefinitionDataService extends IdentifiableDataService<BrowseD
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('browses', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -24,7 +24,7 @@ class TestService extends ConfigDataService {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(BROWSE, requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -18,15 +18,13 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(SUBMISSION_ACCESSES_TYPE)
|
@dataService(SUBMISSION_ACCESSES_TYPE)
|
||||||
export class SubmissionAccessesConfigDataService extends ConfigDataService {
|
export class SubmissionAccessesConfigDataService extends ConfigDataService {
|
||||||
protected linkPath = 'submissionaccessoptions';
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('submissionaccessoptions', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -18,15 +18,13 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(SUBMISSION_FORMS_TYPE)
|
@dataService(SUBMISSION_FORMS_TYPE)
|
||||||
export class SubmissionFormsConfigDataService extends ConfigDataService {
|
export class SubmissionFormsConfigDataService extends ConfigDataService {
|
||||||
protected linkPath = 'submissionforms';
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('submissionforms', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -18,15 +18,13 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(SUBMISSION_UPLOADS_TYPE)
|
@dataService(SUBMISSION_UPLOADS_TYPE)
|
||||||
export class SubmissionUploadsConfigDataService extends ConfigDataService {
|
export class SubmissionUploadsConfigDataService extends ConfigDataService {
|
||||||
protected linkPath = 'submissionuploads';
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('submissionuploads', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
findByHref(href: string, useCachedVersionIfAvailable = true, reRequestOnStale = true, ...linksToFollow): Observable<RemoteData<SubmissionUploadsModel>> {
|
findByHref(href: string, useCachedVersionIfAvailable = true, reRequestOnStale = true, ...linksToFollow): Observable<RemoteData<SubmissionUploadsModel>> {
|
||||||
|
@@ -17,7 +17,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(ACCESS_STATUS)
|
@dataService(ACCESS_STATUS)
|
||||||
export class AccessStatusDataService extends BaseDataService<AccessStatusObject> {
|
export class AccessStatusDataService extends BaseDataService<AccessStatusObject> {
|
||||||
protected linkPath = 'accessStatus';
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
@@ -25,7 +24,7 @@ export class AccessStatusDataService extends BaseDataService<AccessStatusObject>
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('accessStatus', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -32,7 +32,7 @@ class TestService extends BaseDataService<any> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(undefined, requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
import { AsyncSubject, from as observableFrom, Observable, of as observableOf } from 'rxjs';
|
import { AsyncSubject, from as observableFrom, Observable, of as observableOf } from 'rxjs';
|
||||||
import { map, mergeMap, skipWhile, switchMap, take, tap, toArray } from 'rxjs/operators';
|
import { map, mergeMap, skipWhile, switchMap, take, tap, toArray } from 'rxjs/operators';
|
||||||
import { hasValue, isEmpty, isNotEmpty, isNotEmptyOperator } from '../../../shared/empty.util';
|
import { hasValue, isNotEmpty, isNotEmptyOperator } from '../../../shared/empty.util';
|
||||||
import { FollowLinkConfig } from '../../../shared/utils/follow-link-config.model';
|
import { FollowLinkConfig } from '../../../shared/utils/follow-link-config.model';
|
||||||
import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service';
|
import { RemoteDataBuildService } from '../../cache/builders/remote-data-build.service';
|
||||||
import { RequestParam } from '../../cache/models/request-param.model';
|
import { RequestParam } from '../../cache/models/request-param.model';
|
||||||
@@ -31,23 +31,13 @@ import { HALDataService } from './hal-data-service.interface';
|
|||||||
*
|
*
|
||||||
* All DataService (or DataService feature) classes must
|
* All DataService (or DataService feature) classes must
|
||||||
* - extend this class (or {@link IdentifiableDataService})
|
* - extend this class (or {@link IdentifiableDataService})
|
||||||
* - specify a {@link linkPath}
|
* - implement any DataService features it requires in order to forward calls to it
|
||||||
* - implement any DataService features it requires in order to forward calls to it.
|
|
||||||
* {@link linkPath} and {@link responseMsToLive} must be passed through.
|
|
||||||
*
|
*
|
||||||
* ```
|
* ```
|
||||||
* export class SomeDataService extends BaseDataService<Something> implements CreateData<Something>, SearchData<Something> {
|
* export class SomeDataService extends BaseDataService<Something> implements CreateData<Something>, SearchData<Something> {
|
||||||
* protected linkPath = 'something';
|
|
||||||
* protected responseMsToLive = 3 * 60 * 1000; // not required
|
|
||||||
*
|
|
||||||
* private createData: CreateData<Something>;
|
* private createData: CreateData<Something>;
|
||||||
* private searchData: SearchDataData<Something>;
|
* private searchData: SearchDataData<Something>;
|
||||||
*
|
*
|
||||||
* constructor(...) {
|
|
||||||
* this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, ...);
|
|
||||||
* this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, ...);
|
|
||||||
* }
|
|
||||||
*
|
|
||||||
* create(...) {
|
* create(...) {
|
||||||
* return this.createData.create(...);
|
* return this.createData.create(...);
|
||||||
* }
|
* }
|
||||||
@@ -59,40 +49,19 @@ import { HALDataService } from './hal-data-service.interface';
|
|||||||
* ```
|
* ```
|
||||||
*/
|
*/
|
||||||
export class BaseDataService<T extends CacheableObject> implements HALDataService<T> {
|
export class BaseDataService<T extends CacheableObject> implements HALDataService<T> {
|
||||||
/**
|
|
||||||
* The REST endpoint this data service communicates with
|
|
||||||
*/
|
|
||||||
protected linkPath: string;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Allows subclasses to reset the response cache time.
|
|
||||||
*/
|
|
||||||
protected responseMsToLive?: number;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param requestService
|
|
||||||
* @param rdbService
|
|
||||||
* @param objectCache
|
|
||||||
* @param halService
|
|
||||||
* @param linkPath Optionally sets the {@link linkPath}; to be used by composable features.
|
|
||||||
* @param responseMsToLive Optionally sets the {@link responseMsToLive}; to be used by composable features.
|
|
||||||
*/
|
|
||||||
constructor(
|
constructor(
|
||||||
|
protected linkPath: string,
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
linkPath?: string,
|
protected responseMsToLive?: number,
|
||||||
responseMsToLive?: number,
|
|
||||||
) {
|
) {
|
||||||
if (isEmpty(this.linkPath) && isNotEmpty(linkPath)) {
|
|
||||||
this.linkPath = linkPath;
|
|
||||||
}
|
|
||||||
if (isEmpty(this.responseMsToLive) && isNotEmpty(responseMsToLive)) {
|
|
||||||
this.responseMsToLive = responseMsToLive;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Allows subclasses to reset the response cache time.
|
||||||
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the endpoint for browsing
|
* Get the endpoint for browsing
|
||||||
|
@@ -31,7 +31,7 @@ class TestService extends CreateDataImpl<any> {
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(undefined, undefined, requestService, rdbService, objectCache, halService, notificationsService);
|
super(undefined, requestService, rdbService, objectCache, halService, notificationsService, undefined);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
||||||
|
@@ -45,14 +45,14 @@ export interface CreateData<T extends CacheableObject> {
|
|||||||
export class CreateDataImpl<T extends CacheableObject> extends BaseDataService<T> implements CreateData<T> {
|
export class CreateDataImpl<T extends CacheableObject> extends BaseDataService<T> implements CreateData<T> {
|
||||||
constructor(
|
constructor(
|
||||||
protected linkPath: string,
|
protected linkPath: string,
|
||||||
protected responseMsToLive: number,
|
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
|
protected responseMsToLive: number,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, linkPath, responseMsToLive);
|
super(linkPath, requestService, rdbService, objectCache, halService, responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -36,7 +36,7 @@ class TestService extends DeleteDataImpl<any> {
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(undefined, undefined, constructIdEndpointDefault, requestService, rdbService, objectCache, halService, notificationsService);
|
super(undefined, requestService, rdbService, objectCache, halService, notificationsService, undefined, constructIdEndpointDefault);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
||||||
|
@@ -46,15 +46,15 @@ export interface DeleteData<T extends CacheableObject> {
|
|||||||
export class DeleteDataImpl<T extends CacheableObject> extends IdentifiableDataService<T> implements DeleteData<T> {
|
export class DeleteDataImpl<T extends CacheableObject> extends IdentifiableDataService<T> implements DeleteData<T> {
|
||||||
constructor(
|
constructor(
|
||||||
protected linkPath: string,
|
protected linkPath: string,
|
||||||
protected responseMsToLive: number,
|
|
||||||
protected constructIdEndpoint: ConstructIdEndpoint,
|
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
|
protected responseMsToLive: number,
|
||||||
|
protected constructIdEndpoint: ConstructIdEndpoint,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(linkPath, requestService, rdbService, objectCache, halService, responseMsToLive, constructIdEndpoint);
|
||||||
if (hasNoValue(constructIdEndpoint)) {
|
if (hasNoValue(constructIdEndpoint)) {
|
||||||
throw new Error(`DeleteDataImpl initialized without a constructIdEndpoint method (linkPath: ${linkPath})`);
|
throw new Error(`DeleteDataImpl initialized without a constructIdEndpoint method (linkPath: ${linkPath})`);
|
||||||
}
|
}
|
||||||
|
@@ -71,7 +71,7 @@ class TestService extends FindAllDataImpl<any> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(undefined, undefined, requestService, rdbService, objectCache, halService);
|
super(undefined, requestService, rdbService, objectCache, halService, undefined);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
||||||
|
@@ -61,13 +61,13 @@ export interface FindAllData<T extends CacheableObject> {
|
|||||||
export class FindAllDataImpl<T extends CacheableObject> extends BaseDataService<T> implements FindAllData<T> {
|
export class FindAllDataImpl<T extends CacheableObject> extends BaseDataService<T> implements FindAllData<T> {
|
||||||
constructor(
|
constructor(
|
||||||
protected linkPath: string,
|
protected linkPath: string,
|
||||||
protected responseMsToLive: number,
|
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
|
protected responseMsToLive: number,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, linkPath, responseMsToLive);
|
super(linkPath, requestService, rdbService, objectCache, halService, responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -29,7 +29,7 @@ class TestService extends IdentifiableDataService<any> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(undefined, requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
||||||
|
@@ -28,22 +28,21 @@ export const constructIdEndpointDefault = (endpoint, resourceID) => `${endpoint}
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* A type of data service that deals with objects that have an ID.
|
* A type of data service that deals with objects that have an ID.
|
||||||
|
*
|
||||||
|
* The effective endpoint to use for the ID can be adjusted by providing a different {@link ConstructIdEndpoint} method.
|
||||||
|
* This method is passed as an argument so that it can be set on data service features without having to override them.
|
||||||
*/
|
*/
|
||||||
export class IdentifiableDataService<T extends CacheableObject> extends BaseDataService<T> {
|
export class IdentifiableDataService<T extends CacheableObject> extends BaseDataService<T> {
|
||||||
/**
|
|
||||||
* A method to construct the effective endpoint to use for the ID.
|
|
||||||
* Also passed as an optional constructor argument so that it can be set on data service features without having to override them.
|
|
||||||
* @protected
|
|
||||||
*/
|
|
||||||
protected constructIdEndpoint: ConstructIdEndpoint = constructIdEndpointDefault;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
|
protected linkPath: string,
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
|
protected responseMsToLive?: number,
|
||||||
|
protected constructIdEndpoint: ConstructIdEndpoint = constructIdEndpointDefault,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(linkPath, requestService, rdbService, objectCache, halService, responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -38,7 +38,7 @@ class TestService extends PatchDataImpl<any> {
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected comparator: ChangeAnalyzer<Item>,
|
protected comparator: ChangeAnalyzer<Item>,
|
||||||
) {
|
) {
|
||||||
super(undefined, undefined, constructIdEndpointDefault, requestService, rdbService, objectCache, halService, comparator);
|
super(undefined, requestService, rdbService, objectCache, halService, comparator, undefined, constructIdEndpointDefault);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
||||||
|
@@ -65,15 +65,15 @@ export interface PatchData<T extends CacheableObject> {
|
|||||||
export class PatchDataImpl<T extends CacheableObject> extends IdentifiableDataService<T> implements PatchData<T> {
|
export class PatchDataImpl<T extends CacheableObject> extends IdentifiableDataService<T> implements PatchData<T> {
|
||||||
constructor(
|
constructor(
|
||||||
protected linkPath: string,
|
protected linkPath: string,
|
||||||
protected responseMsToLive: number,
|
|
||||||
protected constructIdEndpoint: ConstructIdEndpoint,
|
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected comparator: ChangeAnalyzer<T>,
|
protected comparator: ChangeAnalyzer<T>,
|
||||||
|
protected responseMsToLive: number,
|
||||||
|
protected constructIdEndpoint: ConstructIdEndpoint,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(linkPath, requestService, rdbService, objectCache, halService, responseMsToLive, constructIdEndpoint);
|
||||||
if (hasNoValue(constructIdEndpoint)) {
|
if (hasNoValue(constructIdEndpoint)) {
|
||||||
throw new Error(`PatchDataImpl initialized without a constructIdEndpoint method (linkPath: ${linkPath})`);
|
throw new Error(`PatchDataImpl initialized without a constructIdEndpoint method (linkPath: ${linkPath})`);
|
||||||
}
|
}
|
||||||
|
@@ -30,7 +30,7 @@ class TestService extends PutDataImpl<any> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(undefined, undefined, requestService, rdbService, objectCache, halService);
|
super(undefined, requestService, rdbService, objectCache, halService, undefined);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
||||||
|
@@ -39,13 +39,13 @@ export interface PutData<T extends CacheableObject> {
|
|||||||
export class PutDataImpl<T extends CacheableObject> extends BaseDataService<T> implements PutData<T> {
|
export class PutDataImpl<T extends CacheableObject> extends BaseDataService<T> implements PutData<T> {
|
||||||
constructor(
|
constructor(
|
||||||
protected linkPath: string,
|
protected linkPath: string,
|
||||||
protected responseMsToLive: number,
|
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
|
protected responseMsToLive: number,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, linkPath, responseMsToLive);
|
super(linkPath, requestService, rdbService, objectCache, halService, responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -68,7 +68,7 @@ class TestService extends SearchDataImpl<any> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(undefined, undefined, requestService, rdbService, objectCache, halService);
|
super(undefined, requestService, rdbService, objectCache, halService, undefined);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
public getBrowseEndpoint(options: FindListOptions = {}, linkPath: string = this.linkPath): Observable<string> {
|
||||||
|
@@ -80,14 +80,14 @@ export class SearchDataImpl<T extends CacheableObject> extends BaseDataService<T
|
|||||||
*/
|
*/
|
||||||
constructor(
|
constructor(
|
||||||
protected linkPath: string,
|
protected linkPath: string,
|
||||||
protected responseMsToLive: number,
|
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
|
protected responseMsToLive: number,
|
||||||
private constructSearchEndpoint: ConstructSearchEndpoint = constructSearchEndpointDefault,
|
private constructSearchEndpoint: ConstructSearchEndpoint = constructSearchEndpointDefault,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, linkPath, responseMsToLive);
|
super(linkPath, requestService, rdbService, objectCache, halService, responseMsToLive);
|
||||||
if (hasNoValue(constructSearchEndpoint)) {
|
if (hasNoValue(constructSearchEndpoint)) {
|
||||||
throw new Error(`SearchDataImpl initialized without a constructSearchEndpoint method (linkPath: ${linkPath})`);
|
throw new Error(`SearchDataImpl initialized without a constructSearchEndpoint method (linkPath: ${linkPath})`);
|
||||||
}
|
}
|
||||||
|
@@ -42,8 +42,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
})
|
})
|
||||||
@dataService(BITSTREAM)
|
@dataService(BITSTREAM)
|
||||||
export class BitstreamDataService extends IdentifiableDataService<Bitstream> implements SearchData<Bitstream>, PatchData<Bitstream>, DeleteData<Bitstream> {
|
export class BitstreamDataService extends IdentifiableDataService<Bitstream> implements SearchData<Bitstream>, PatchData<Bitstream>, DeleteData<Bitstream> {
|
||||||
protected linkPath = 'bitstreams';
|
|
||||||
|
|
||||||
private searchData: SearchDataImpl<Bitstream>;
|
private searchData: SearchDataImpl<Bitstream>;
|
||||||
private patchData: PatchDataImpl<Bitstream>;
|
private patchData: PatchDataImpl<Bitstream>;
|
||||||
private deleteData: DeleteDataImpl<Bitstream>;
|
private deleteData: DeleteDataImpl<Bitstream>;
|
||||||
@@ -58,11 +56,11 @@ export class BitstreamDataService extends IdentifiableDataService<Bitstream> imp
|
|||||||
protected comparator: DSOChangeAnalyzer<Bitstream>,
|
protected comparator: DSOChangeAnalyzer<Bitstream>,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('bitstreams', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.patchData = new PatchDataImpl<Bitstream>(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl<Bitstream>(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -41,6 +41,7 @@ const selectedBitstreamFormatSelector = createSelector(
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(BITSTREAM_FORMAT)
|
@dataService(BITSTREAM_FORMAT)
|
||||||
export class BitstreamFormatDataService extends IdentifiableDataService<BitstreamFormat> implements FindAllData<BitstreamFormat>, DeleteData<BitstreamFormat> {
|
export class BitstreamFormatDataService extends IdentifiableDataService<BitstreamFormat> implements FindAllData<BitstreamFormat>, DeleteData<BitstreamFormat> {
|
||||||
|
|
||||||
protected linkPath = 'bitstreamformats';
|
protected linkPath = 'bitstreamformats';
|
||||||
|
|
||||||
private findAllData: FindAllDataImpl<BitstreamFormat>;
|
private findAllData: FindAllDataImpl<BitstreamFormat>;
|
||||||
@@ -54,10 +55,10 @@ export class BitstreamFormatDataService extends IdentifiableDataService<Bitstrea
|
|||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
protected store: Store<CoreState>,
|
protected store: Store<CoreState>,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('bitstreamformats', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -32,8 +32,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
)
|
)
|
||||||
@dataService(BUNDLE)
|
@dataService(BUNDLE)
|
||||||
export class BundleDataService extends IdentifiableDataService<Bundle> implements PatchData<Bundle> {
|
export class BundleDataService extends IdentifiableDataService<Bundle> implements PatchData<Bundle> {
|
||||||
protected linkPath = 'bundles';
|
|
||||||
|
|
||||||
private bitstreamsEndpoint = 'bitstreams';
|
private bitstreamsEndpoint = 'bitstreams';
|
||||||
|
|
||||||
private patchData: PatchDataImpl<Bundle>;
|
private patchData: PatchDataImpl<Bundle>;
|
||||||
@@ -45,9 +43,9 @@ export class BundleDataService extends IdentifiableDataService<Bundle> implement
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected comparator: DSOChangeAnalyzer<Bundle>,
|
protected comparator: DSOChangeAnalyzer<Bundle>,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('bundles', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.patchData = new PatchDataImpl<Bundle>(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl<Bundle>(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -38,8 +38,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(COLLECTION)
|
@dataService(COLLECTION)
|
||||||
export class CollectionDataService extends ComColDataService<Collection> {
|
export class CollectionDataService extends ComColDataService<Collection> {
|
||||||
protected linkPath = 'collections';
|
|
||||||
|
|
||||||
protected errorTitle = 'collection.source.update.notifications.error.title';
|
protected errorTitle = 'collection.source.update.notifications.error.title';
|
||||||
protected contentSourceError = 'collection.source.update.notifications.error.content';
|
protected contentSourceError = 'collection.source.update.notifications.error.content';
|
||||||
|
|
||||||
@@ -54,7 +52,7 @@ export class CollectionDataService extends ComColDataService<Collection> {
|
|||||||
protected communityDataService: CommunityDataService,
|
protected communityDataService: CommunityDataService,
|
||||||
protected translate: TranslateService,
|
protected translate: TranslateService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, comparator, notificationsService, bitstreamDataService);
|
super('collections', requestService, rdbService, objectCache, halService, comparator, notificationsService, bitstreamDataService);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -33,7 +33,6 @@ const communitiesEndpoint = 'https://rest.api/core/communities';
|
|||||||
const communityEndpoint = `${communitiesEndpoint}/${scopeID}`;
|
const communityEndpoint = `${communitiesEndpoint}/${scopeID}`;
|
||||||
|
|
||||||
class TestService extends ComColDataService<any> {
|
class TestService extends ComColDataService<any> {
|
||||||
protected linkPath = 'something';
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
@@ -46,8 +45,9 @@ class TestService extends ComColDataService<any> {
|
|||||||
protected http: HttpClient,
|
protected http: HttpClient,
|
||||||
protected bitstreamDataService: BitstreamDataService,
|
protected bitstreamDataService: BitstreamDataService,
|
||||||
protected comparator: DSOChangeAnalyzer<Community>,
|
protected comparator: DSOChangeAnalyzer<Community>,
|
||||||
|
protected linkPath: string
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, comparator, notificationsService, bitstreamDataService);
|
super('something', requestService, rdbService, objectCache, halService, comparator, notificationsService, bitstreamDataService);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected getFindByParentHref(parentUUID: string): Observable<string> {
|
protected getFindByParentHref(parentUUID: string): Observable<string> {
|
||||||
@@ -131,7 +131,8 @@ describe('ComColDataService', () => {
|
|||||||
notificationsService,
|
notificationsService,
|
||||||
http,
|
http,
|
||||||
bitstreamDataService,
|
bitstreamDataService,
|
||||||
comparator
|
comparator,
|
||||||
|
LINK_NAME
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -37,6 +37,7 @@ export abstract class ComColDataService<T extends Community | Collection> extend
|
|||||||
private deleteData: DeleteData<T>;
|
private deleteData: DeleteData<T>;
|
||||||
|
|
||||||
protected constructor(
|
protected constructor(
|
||||||
|
protected linkPath: string,
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
@@ -45,13 +46,13 @@ export abstract class ComColDataService<T extends Community | Collection> extend
|
|||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
protected bitstreamDataService: BitstreamDataService,
|
protected bitstreamDataService: BitstreamDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(linkPath, requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, );
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.searchData = new SearchDataImpl<T>(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, );
|
this.searchData = new SearchDataImpl<T>(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.patchData = new PatchDataImpl<T>(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl<T>(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -22,8 +22,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(COMMUNITY)
|
@dataService(COMMUNITY)
|
||||||
export class CommunityDataService extends ComColDataService<Community> {
|
export class CommunityDataService extends ComColDataService<Community> {
|
||||||
protected linkPath = 'communities';
|
|
||||||
|
|
||||||
protected topLinkPath = 'search/top';
|
protected topLinkPath = 'search/top';
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -35,7 +33,7 @@ export class CommunityDataService extends ComColDataService<Community> {
|
|||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
protected bitstreamDataService: BitstreamDataService,
|
protected bitstreamDataService: BitstreamDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, comparator, notificationsService, bitstreamDataService);
|
super('communities', requestService, rdbService, objectCache, halService, comparator, notificationsService, bitstreamDataService);
|
||||||
}
|
}
|
||||||
|
|
||||||
getEndpoint() {
|
getEndpoint() {
|
||||||
|
@@ -17,7 +17,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
* Data Service responsible for retrieving Configuration properties
|
* Data Service responsible for retrieving Configuration properties
|
||||||
*/
|
*/
|
||||||
export class ConfigurationDataService extends IdentifiableDataService<ConfigurationProperty> {
|
export class ConfigurationDataService extends IdentifiableDataService<ConfigurationProperty> {
|
||||||
protected linkPath = 'properties';
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
@@ -25,7 +24,7 @@ export class ConfigurationDataService extends IdentifiableDataService<Configurat
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('properties', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -31,18 +31,20 @@ const UUID_ENDPOINT = 'dso';
|
|||||||
* {@link setLinkPath} must be called before each request.
|
* {@link setLinkPath} must be called before each request.
|
||||||
*/
|
*/
|
||||||
class DsoByIdOrUUIDDataService extends IdentifiableDataService<DSpaceObject> {
|
class DsoByIdOrUUIDDataService extends IdentifiableDataService<DSpaceObject> {
|
||||||
// interpolate id/uuid as query parameter
|
|
||||||
constructIdEndpoint = (endpoint: string, resourceID: string): string =>
|
|
||||||
endpoint.replace(/{\?id}/, `?id=${resourceID}`)
|
|
||||||
.replace(/{\?uuid}/, `?uuid=${resourceID}`);
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(
|
||||||
|
undefined, requestService, rdbService, objectCache, halService, undefined,
|
||||||
|
// interpolate id/uuid as query parameter
|
||||||
|
(endpoint: string, resourceID: string): string => {
|
||||||
|
return endpoint.replace(/{\?id}/, `?id=${resourceID}`)
|
||||||
|
.replace(/{\?uuid}/, `?uuid=${resourceID}`);
|
||||||
|
},
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -11,13 +11,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(DSPACE_OBJECT)
|
@dataService(DSPACE_OBJECT)
|
||||||
export class DSpaceObjectDataService extends IdentifiableDataService<DSpaceObject> {
|
export class DSpaceObjectDataService extends IdentifiableDataService<DSpaceObject> {
|
||||||
protected linkPath = 'dso';
|
|
||||||
|
|
||||||
// interpolate uuid as query parameter
|
|
||||||
protected constructIdEndpoint = (endpoint: string, resourceID: string): string => {
|
|
||||||
return endpoint.replace(/{\?uuid}/, `?uuid=${resourceID}`);
|
|
||||||
};
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
@@ -25,7 +18,11 @@ export class DSpaceObjectDataService extends IdentifiableDataService<DSpaceObjec
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(
|
super(
|
||||||
requestService, rdbService, objectCache, halService,
|
'dso', requestService, rdbService, objectCache, halService, undefined,
|
||||||
|
// interpolate uuid as query parameter
|
||||||
|
(endpoint: string, resourceID: string): string => {
|
||||||
|
return endpoint.replace(/{\?uuid}/, `?uuid=${resourceID}`);
|
||||||
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -22,8 +22,6 @@ import { FindAllData, FindAllDataImpl } from './base/find-all-data';
|
|||||||
*/
|
*/
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class EntityTypeDataService extends BaseDataService<ItemType> implements FindAllData<ItemType>, SearchData<ItemType> {
|
export class EntityTypeDataService extends BaseDataService<ItemType> implements FindAllData<ItemType>, SearchData<ItemType> {
|
||||||
protected linkPath = 'entitytypes';
|
|
||||||
|
|
||||||
private findAllData: FindAllData<ItemType>;
|
private findAllData: FindAllData<ItemType>;
|
||||||
private searchData: SearchDataImpl<ItemType>;
|
private searchData: SearchDataImpl<ItemType>;
|
||||||
|
|
||||||
@@ -34,10 +32,10 @@ export class EntityTypeDataService extends BaseDataService<ItemType> implements
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected relationshipTypeService: RelationshipTypeDataService,
|
protected relationshipTypeService: RelationshipTypeDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('entitytypes', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
getBrowseEndpoint(options, linkPath?: string): Observable<string> {
|
getBrowseEndpoint(options, linkPath?: string): Observable<string> {
|
||||||
|
@@ -21,8 +21,6 @@ import { SearchData, SearchDataImpl } from './base/search-data';
|
|||||||
*/
|
*/
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class ExternalSourceDataService extends IdentifiableDataService<ExternalSource> implements SearchData<ExternalSource> {
|
export class ExternalSourceDataService extends IdentifiableDataService<ExternalSource> implements SearchData<ExternalSource> {
|
||||||
protected linkPath = 'externalsources';
|
|
||||||
|
|
||||||
private searchData: SearchData<ExternalSource>;
|
private searchData: SearchData<ExternalSource>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -31,9 +29,9 @@ export class ExternalSourceDataService extends IdentifiableDataService<ExternalS
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('externalsources', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -29,7 +29,6 @@ import { dataService } from '../base/data-service.decorator';
|
|||||||
@dataService(AUTHORIZATION)
|
@dataService(AUTHORIZATION)
|
||||||
export class AuthorizationDataService extends BaseDataService<Authorization> implements SearchData<Authorization> {
|
export class AuthorizationDataService extends BaseDataService<Authorization> implements SearchData<Authorization> {
|
||||||
protected linkPath = 'authorizations';
|
protected linkPath = 'authorizations';
|
||||||
|
|
||||||
protected searchByObjectPath = 'object';
|
protected searchByObjectPath = 'object';
|
||||||
|
|
||||||
private searchData: SearchDataImpl<Authorization>;
|
private searchData: SearchDataImpl<Authorization>;
|
||||||
@@ -41,9 +40,9 @@ export class AuthorizationDataService extends BaseDataService<Authorization> imp
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected siteService: SiteDataService,
|
protected siteService: SiteDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('authorizations', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -22,6 +22,6 @@ export class FeatureDataService extends BaseDataService<Feature> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('features', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -52,7 +52,7 @@ export class HrefOnlyDataService implements HALDataService<any> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
this.dataService = new BaseDataService(requestService, rdbService, objectCache, halService);
|
this.dataService = new BaseDataService(undefined, requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -39,7 +39,7 @@ import { StatusCodeOnlyResponseParsingService } from './status-code-only-respons
|
|||||||
import { sendRequest } from '../shared/request.operators';
|
import { sendRequest } from '../shared/request.operators';
|
||||||
import { RestRequest } from './rest-request.model';
|
import { RestRequest } from './rest-request.model';
|
||||||
import { FindListOptions } from './find-list-options.model';
|
import { FindListOptions } from './find-list-options.model';
|
||||||
import { IdentifiableDataService } from './base/identifiable-data.service';
|
import { ConstructIdEndpoint, IdentifiableDataService } from './base/identifiable-data.service';
|
||||||
import { PatchData, PatchDataImpl } from './base/patch-data';
|
import { PatchData, PatchDataImpl } from './base/patch-data';
|
||||||
import { DeleteData, DeleteDataImpl } from './base/delete-data';
|
import { DeleteData, DeleteDataImpl } from './base/delete-data';
|
||||||
import { RestRequestMethod } from './rest-request-method';
|
import { RestRequestMethod } from './rest-request-method';
|
||||||
@@ -58,6 +58,7 @@ export abstract class BaseItemDataService extends IdentifiableDataService<Item>
|
|||||||
private deleteData: DeleteData<Item>;
|
private deleteData: DeleteData<Item>;
|
||||||
|
|
||||||
protected constructor(
|
protected constructor(
|
||||||
|
protected linkPath,
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
@@ -66,12 +67,13 @@ export abstract class BaseItemDataService extends IdentifiableDataService<Item>
|
|||||||
protected comparator: DSOChangeAnalyzer<Item>,
|
protected comparator: DSOChangeAnalyzer<Item>,
|
||||||
protected browseService: BrowseService,
|
protected browseService: BrowseService,
|
||||||
protected bundleService: BundleDataService,
|
protected bundleService: BundleDataService,
|
||||||
|
protected constructIdEndpoint: ConstructIdEndpoint = (endpoint, resourceID) => `${endpoint}/${resourceID}`,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(linkPath, requestService, rdbService, objectCache, halService, undefined, constructIdEndpoint);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
this.patchData = new PatchDataImpl<Item>(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl<Item>(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -386,8 +388,6 @@ export abstract class BaseItemDataService extends IdentifiableDataService<Item>
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(ITEM)
|
@dataService(ITEM)
|
||||||
export class ItemDataService extends BaseItemDataService {
|
export class ItemDataService extends BaseItemDataService {
|
||||||
protected linkPath = 'items';
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
@@ -398,6 +398,6 @@ export class ItemDataService extends BaseItemDataService {
|
|||||||
protected browseService: BrowseService,
|
protected browseService: BrowseService,
|
||||||
protected bundleService: BundleDataService,
|
protected bundleService: BundleDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, notificationsService, comparator, browseService, bundleService);
|
super('items', requestService, rdbService, objectCache, halService, notificationsService, comparator, browseService, bundleService);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -23,15 +23,13 @@ import { IdentifiableDataService } from './base/identifiable-data.service';
|
|||||||
providedIn: 'root',
|
providedIn: 'root',
|
||||||
})
|
})
|
||||||
export class ItemRequestDataService extends IdentifiableDataService<ItemRequest> {
|
export class ItemRequestDataService extends IdentifiableDataService<ItemRequest> {
|
||||||
protected linkPath = 'itemrequests';
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('itemrequests', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
getItemRequestEndpoint(): Observable<string> {
|
getItemRequestEndpoint(): Observable<string> {
|
||||||
|
@@ -22,8 +22,6 @@ import { CreateDataImpl } from './base/create-data';
|
|||||||
* Data service for interacting with Item templates via their Collection
|
* Data service for interacting with Item templates via their Collection
|
||||||
*/
|
*/
|
||||||
class CollectionItemTemplateDataService extends IdentifiableDataService<Item> {
|
class CollectionItemTemplateDataService extends IdentifiableDataService<Item> {
|
||||||
protected linkPath = 'itemtemplates';
|
|
||||||
|
|
||||||
private createData: CreateDataImpl<Item>;
|
private createData: CreateDataImpl<Item>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -34,10 +32,10 @@ class CollectionItemTemplateDataService extends IdentifiableDataService<Item> {
|
|||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
protected collectionService: CollectionDataService,
|
protected collectionService: CollectionDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('itemtemplates', requestService, rdbService, objectCache, halService, undefined);
|
||||||
|
|
||||||
// We only intend to use createOnEndpoint, so this inner data service feature doesn't need an endpoint at all
|
// We only intend to use createOnEndpoint, so this inner data service feature doesn't need an endpoint at all
|
||||||
this.createData = new CreateDataImpl<Item>(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl<Item>(undefined, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -67,8 +65,6 @@ class CollectionItemTemplateDataService extends IdentifiableDataService<Item> {
|
|||||||
*/
|
*/
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class ItemTemplateDataService extends BaseItemDataService {
|
export class ItemTemplateDataService extends BaseItemDataService {
|
||||||
protected linkPath = 'itemtemplates';
|
|
||||||
|
|
||||||
private byCollection: CollectionItemTemplateDataService;
|
private byCollection: CollectionItemTemplateDataService;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -82,7 +78,7 @@ export class ItemTemplateDataService extends BaseItemDataService {
|
|||||||
protected bundleService: BundleDataService,
|
protected bundleService: BundleDataService,
|
||||||
protected collectionService: CollectionDataService,
|
protected collectionService: CollectionDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService, notificationsService, comparator, browseService, bundleService);
|
super('itemtemplates', requestService, rdbService, objectCache, halService, notificationsService, comparator, browseService, bundleService);
|
||||||
|
|
||||||
this.byCollection = new CollectionItemTemplateDataService(requestService, rdbService, objectCache, halService, notificationsService, collectionService);
|
this.byCollection = new CollectionItemTemplateDataService(requestService, rdbService, objectCache, halService, notificationsService, collectionService);
|
||||||
}
|
}
|
||||||
|
@@ -29,8 +29,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(METADATA_FIELD)
|
@dataService(METADATA_FIELD)
|
||||||
export class MetadataFieldDataService extends IdentifiableDataService<MetadataField> implements CreateData<MetadataField>, PutData<MetadataField>, DeleteData<MetadataField>, SearchData<MetadataField> {
|
export class MetadataFieldDataService extends IdentifiableDataService<MetadataField> implements CreateData<MetadataField>, PutData<MetadataField>, DeleteData<MetadataField>, SearchData<MetadataField> {
|
||||||
protected linkPath = 'metadatafields';
|
|
||||||
|
|
||||||
private createData: CreateData<MetadataField>;
|
private createData: CreateData<MetadataField>;
|
||||||
private searchData: SearchData<MetadataField>;
|
private searchData: SearchData<MetadataField>;
|
||||||
private putData: PutData<MetadataField>;
|
private putData: PutData<MetadataField>;
|
||||||
@@ -46,12 +44,12 @@ export class MetadataFieldDataService extends IdentifiableDataService<MetadataFi
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('metadatafields', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService, );
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.putData = new PutDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.putData = new PutDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -27,8 +27,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(METADATA_SCHEMA)
|
@dataService(METADATA_SCHEMA)
|
||||||
export class MetadataSchemaDataService extends IdentifiableDataService<MetadataSchema> implements FindAllData<MetadataSchema>, DeleteData<MetadataSchema> {
|
export class MetadataSchemaDataService extends IdentifiableDataService<MetadataSchema> implements FindAllData<MetadataSchema>, DeleteData<MetadataSchema> {
|
||||||
protected linkPath = 'metadataschemas';
|
|
||||||
|
|
||||||
private createData: CreateData<MetadataSchema>;
|
private createData: CreateData<MetadataSchema>;
|
||||||
private findAllData: FindAllData<MetadataSchema>;
|
private findAllData: FindAllData<MetadataSchema>;
|
||||||
private putData: PutData<MetadataSchema>;
|
private putData: PutData<MetadataSchema>;
|
||||||
@@ -41,12 +39,12 @@ export class MetadataSchemaDataService extends IdentifiableDataService<MetadataS
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('metadataschemas', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
this.putData = new PutDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.putData = new PutDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -20,8 +20,6 @@ import { dataService } from '../base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(PROCESS)
|
@dataService(PROCESS)
|
||||||
export class ProcessDataService extends IdentifiableDataService<Process> implements FindAllData<Process> {
|
export class ProcessDataService extends IdentifiableDataService<Process> implements FindAllData<Process> {
|
||||||
protected linkPath = 'processes';
|
|
||||||
|
|
||||||
private findAllData: FindAllData<Process>;
|
private findAllData: FindAllData<Process>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -31,9 +29,9 @@ export class ProcessDataService extends IdentifiableDataService<Process> impleme
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected bitstreamDataService: BitstreamDataService,
|
protected bitstreamDataService: BitstreamDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('processes', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -28,8 +28,6 @@ export const METADATA_EXPORT_SCRIPT_NAME = 'metadata-export';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(SCRIPT)
|
@dataService(SCRIPT)
|
||||||
export class ScriptDataService extends IdentifiableDataService<Script> implements FindAllData<Script> {
|
export class ScriptDataService extends IdentifiableDataService<Script> implements FindAllData<Script> {
|
||||||
protected linkPath = 'scripts';
|
|
||||||
|
|
||||||
private findAllData: FindAllDataImpl<Script>;
|
private findAllData: FindAllDataImpl<Script>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -38,9 +36,9 @@ export class ScriptDataService extends IdentifiableDataService<Script> implement
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('scripts', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
public invoke(scriptName: string, parameters: ProcessParameter[], files: File[]): Observable<RemoteData<Process>> {
|
public invoke(scriptName: string, parameters: ProcessParameter[], files: File[]): Observable<RemoteData<Process>> {
|
||||||
|
@@ -75,9 +75,6 @@ const compareItemsByUUID = (itemCheck: Item) =>
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(RELATIONSHIP)
|
@dataService(RELATIONSHIP)
|
||||||
export class RelationshipDataService extends IdentifiableDataService<Relationship> implements SearchData<Relationship> {
|
export class RelationshipDataService extends IdentifiableDataService<Relationship> implements SearchData<Relationship> {
|
||||||
protected linkPath = 'relationships';
|
|
||||||
protected responseMsToLive = 15 * 60 * 1000;
|
|
||||||
|
|
||||||
private searchData: SearchData<Relationship>;
|
private searchData: SearchData<Relationship>;
|
||||||
private putData: PutData<Relationship>;
|
private putData: PutData<Relationship>;
|
||||||
|
|
||||||
@@ -90,10 +87,10 @@ export class RelationshipDataService extends IdentifiableDataService<Relationshi
|
|||||||
protected appStore: Store<AppState>,
|
protected appStore: Store<AppState>,
|
||||||
@Inject(PAGINATED_RELATIONS_TO_ITEMS_OPERATOR) private paginatedRelationsToItems: (thisId: string) => (source: Observable<RemoteData<PaginatedList<Relationship>>>) => Observable<RemoteData<PaginatedList<Item>>>,
|
@Inject(PAGINATED_RELATIONS_TO_ITEMS_OPERATOR) private paginatedRelationsToItems: (thisId: string) => (source: Observable<RemoteData<PaginatedList<Relationship>>>) => Observable<RemoteData<PaginatedList<Item>>>,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('relationships', requestService, rdbService, objectCache, halService, 15 * 60 * 1000);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.putData = new PutDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.putData = new PutDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -33,8 +33,6 @@ const checkSide = (typeRd: RemoteData<ItemType>, label: string): boolean =>
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(RELATIONSHIP_TYPE)
|
@dataService(RELATIONSHIP_TYPE)
|
||||||
export class RelationshipTypeDataService extends BaseDataService<RelationshipType> {
|
export class RelationshipTypeDataService extends BaseDataService<RelationshipType> {
|
||||||
protected linkPath = 'relationshiptypes';
|
|
||||||
|
|
||||||
private searchData: SearchDataImpl<RelationshipType>;
|
private searchData: SearchDataImpl<RelationshipType>;
|
||||||
private findAllData: FindAllDataImpl<RelationshipType>;
|
private findAllData: FindAllDataImpl<RelationshipType>;
|
||||||
|
|
||||||
@@ -44,10 +42,10 @@ export class RelationshipTypeDataService extends BaseDataService<RelationshipTyp
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('relationshiptypes', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -20,9 +20,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(ROOT)
|
@dataService(ROOT)
|
||||||
export class RootDataService extends BaseDataService<Root> {
|
export class RootDataService extends BaseDataService<Root> {
|
||||||
protected linkPath = '';
|
|
||||||
protected responseMsToLive = 6 * 60 * 60 * 1000;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
@@ -30,7 +27,7 @@ export class RootDataService extends BaseDataService<Root> {
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected restService: DspaceRestService,
|
protected restService: DspaceRestService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('', requestService, rdbService, objectCache, halService, 6 * 60 * 60 * 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -22,8 +22,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(SITE)
|
@dataService(SITE)
|
||||||
export class SiteDataService extends BaseDataService<Site> implements FindAllData<Site> {
|
export class SiteDataService extends BaseDataService<Site> implements FindAllData<Site> {
|
||||||
protected linkPath = 'sites';
|
|
||||||
|
|
||||||
private findAllData: FindAllData<Site>;
|
private findAllData: FindAllData<Site>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -32,9 +30,9 @@ export class SiteDataService extends BaseDataService<Site> implements FindAllDat
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('sites', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -24,7 +24,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(VERSION)
|
@dataService(VERSION)
|
||||||
export class VersionDataService extends IdentifiableDataService<Version> implements PatchData<Version> {
|
export class VersionDataService extends IdentifiableDataService<Version> implements PatchData<Version> {
|
||||||
protected linkPath = 'versions';
|
|
||||||
private patchData: PatchData<Version>;
|
private patchData: PatchData<Version>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -34,9 +33,9 @@ export class VersionDataService extends IdentifiableDataService<Version> impleme
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected comparator: DefaultChangeAnalyzer<Version>,
|
protected comparator: DefaultChangeAnalyzer<Version>,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('versions', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.patchData = new PatchDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -32,7 +32,6 @@ import { dataService } from './base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(VERSION_HISTORY)
|
@dataService(VERSION_HISTORY)
|
||||||
export class VersionHistoryDataService extends IdentifiableDataService<VersionHistory> {
|
export class VersionHistoryDataService extends IdentifiableDataService<VersionHistory> {
|
||||||
protected linkPath = 'versionhistories';
|
|
||||||
protected versionsEndpoint = 'versions';
|
protected versionsEndpoint = 'versions';
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -42,7 +41,7 @@ export class VersionHistoryDataService extends IdentifiableDataService<VersionHi
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected versionDataService: VersionDataService,
|
protected versionDataService: VersionDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('versionhistories', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -22,6 +22,6 @@ export class WorkflowActionDataService extends BaseDataService<WorkflowAction> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('workflowactions', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -41,8 +41,6 @@ const editEPersonSelector = createSelector(ePeopleRegistryStateSelector, (ePeopl
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(EPERSON)
|
@dataService(EPERSON)
|
||||||
export class EPersonDataService extends IdentifiableDataService<EPerson> implements CreateData<EPerson>, SearchData<EPerson>, PatchData<EPerson>, DeleteData<EPerson> {
|
export class EPersonDataService extends IdentifiableDataService<EPerson> implements CreateData<EPerson>, SearchData<EPerson>, PatchData<EPerson>, DeleteData<EPerson> {
|
||||||
protected linkPath = 'epersons';
|
|
||||||
|
|
||||||
protected searchByEmailPath = 'byEmail';
|
protected searchByEmailPath = 'byEmail';
|
||||||
protected searchByMetadataPath = 'byMetadata';
|
protected searchByMetadataPath = 'byMetadata';
|
||||||
|
|
||||||
@@ -60,12 +58,12 @@ export class EPersonDataService extends IdentifiableDataService<EPerson> impleme
|
|||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
protected store: Store<any>,
|
protected store: Store<any>,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('epersons', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.patchData = new PatchDataImpl<EPerson>(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl<EPerson>(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -50,8 +50,6 @@ const editGroupSelector = createSelector(groupRegistryStateSelector, (groupRegis
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(GROUP)
|
@dataService(GROUP)
|
||||||
export class GroupDataService extends IdentifiableDataService<Group> {
|
export class GroupDataService extends IdentifiableDataService<Group> {
|
||||||
protected linkPath = 'metadatafields';
|
|
||||||
|
|
||||||
protected browseEndpoint = '';
|
protected browseEndpoint = '';
|
||||||
public ePersonsEndpoint = 'epersons';
|
public ePersonsEndpoint = 'epersons';
|
||||||
public subgroupsEndpoint = 'subgroups';
|
public subgroupsEndpoint = 'subgroups';
|
||||||
@@ -71,12 +69,12 @@ export class GroupDataService extends IdentifiableDataService<Group> {
|
|||||||
protected nameService: DSONameService,
|
protected nameService: DSONameService,
|
||||||
protected store: Store<any>,
|
protected store: Store<any>,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('groups', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.patchData = new PatchDataImpl<Group>(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl<Group>(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -21,8 +21,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(FEEDBACK)
|
@dataService(FEEDBACK)
|
||||||
export class FeedbackDataService extends IdentifiableDataService<Feedback> implements CreateData<Feedback> {
|
export class FeedbackDataService extends IdentifiableDataService<Feedback> implements CreateData<Feedback> {
|
||||||
protected linkPath = 'feedbacks';
|
|
||||||
|
|
||||||
private createData: CreateDataImpl<Feedback>;
|
private createData: CreateDataImpl<Feedback>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -33,9 +31,9 @@ export class FeedbackDataService extends IdentifiableDataService<Feedback> imple
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('feedbacks', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -23,8 +23,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(ORCID_HISTORY)
|
@dataService(ORCID_HISTORY)
|
||||||
export class OrcidHistoryDataService extends IdentifiableDataService<OrcidHistory> {
|
export class OrcidHistoryDataService extends IdentifiableDataService<OrcidHistory> {
|
||||||
protected linkPath = 'orcidhistories';
|
|
||||||
protected responseMsToLive = 10 * 1000;
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
@@ -32,7 +30,7 @@ export class OrcidHistoryDataService extends IdentifiableDataService<OrcidHistor
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('orcidhistories', requestService, rdbService, objectCache, halService, 10 * 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
sendToORCID(orcidQueue: OrcidQueue): Observable<RemoteData<OrcidHistory>> {
|
sendToORCID(orcidQueue: OrcidQueue): Observable<RemoteData<OrcidHistory>> {
|
||||||
|
@@ -23,9 +23,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(ORCID_QUEUE)
|
@dataService(ORCID_QUEUE)
|
||||||
export class OrcidQueueDataService extends IdentifiableDataService<OrcidQueue> {
|
export class OrcidQueueDataService extends IdentifiableDataService<OrcidQueue> {
|
||||||
protected linkPath = 'orcidqueues';
|
|
||||||
protected responseMsToLive = 10 * 1000;
|
|
||||||
|
|
||||||
private searchData: SearchData<OrcidQueue>;
|
private searchData: SearchData<OrcidQueue>;
|
||||||
private deleteData: DeleteData<OrcidQueue>;
|
private deleteData: DeleteData<OrcidQueue>;
|
||||||
|
|
||||||
@@ -36,10 +33,10 @@ export class OrcidQueueDataService extends IdentifiableDataService<OrcidQueue> {
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('orcidqueues', requestService, rdbService, objectCache, halService, 10 * 1000);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -40,9 +40,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(RESEARCHER_PROFILE)
|
@dataService(RESEARCHER_PROFILE)
|
||||||
export class ResearcherProfileDataService extends IdentifiableDataService<ResearcherProfile> implements CreateData<ResearcherProfile>, SearchData<ResearcherProfile>, PatchData<ResearcherProfile>, DeleteData<ResearcherProfile> {
|
export class ResearcherProfileDataService extends IdentifiableDataService<ResearcherProfile> implements CreateData<ResearcherProfile>, SearchData<ResearcherProfile>, PatchData<ResearcherProfile>, DeleteData<ResearcherProfile> {
|
||||||
protected linkPath = 'profiles';
|
|
||||||
protected responseMsToLive = 10 * 1000;
|
|
||||||
|
|
||||||
private createData: CreateDataImpl<ResearcherProfile>;
|
private createData: CreateDataImpl<ResearcherProfile>;
|
||||||
private searchData: SearchDataImpl<ResearcherProfile>;
|
private searchData: SearchDataImpl<ResearcherProfile>;
|
||||||
private patchData: PatchDataImpl<ResearcherProfile>;
|
private patchData: PatchDataImpl<ResearcherProfile>;
|
||||||
@@ -58,12 +55,12 @@ export class ResearcherProfileDataService extends IdentifiableDataService<Resear
|
|||||||
protected comparator: DefaultChangeAnalyzer<ResearcherProfile>,
|
protected comparator: DefaultChangeAnalyzer<ResearcherProfile>,
|
||||||
protected itemService: ItemDataService,
|
protected itemService: ItemDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('profiles', requestService, rdbService, objectCache, halService, 10 * 1000);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
this.patchData = new PatchDataImpl<ResearcherProfile>(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl<ResearcherProfile>(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -40,8 +40,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(RESOURCE_POLICY)
|
@dataService(RESOURCE_POLICY)
|
||||||
export class ResourcePolicyDataService extends IdentifiableDataService<ResourcePolicy> {
|
export class ResourcePolicyDataService extends IdentifiableDataService<ResourcePolicy> {
|
||||||
protected linkPath = 'resourcepolicies';
|
|
||||||
|
|
||||||
protected searchByEPersonMethod = 'eperson';
|
protected searchByEPersonMethod = 'eperson';
|
||||||
protected searchByGroupMethod = 'group';
|
protected searchByGroupMethod = 'group';
|
||||||
protected searchByResourceMethod = 'resource';
|
protected searchByResourceMethod = 'resource';
|
||||||
@@ -61,12 +59,12 @@ export class ResourcePolicyDataService extends IdentifiableDataService<ResourceP
|
|||||||
protected ePersonService: EPersonDataService,
|
protected ePersonService: EPersonDataService,
|
||||||
protected groupService: GroupDataService,
|
protected groupService: GroupDataService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('resourcepolicies', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.createData = new CreateDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, notificationsService);
|
this.createData = new CreateDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive);
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.patchData = new PatchDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, comparator);
|
this.patchData = new PatchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, comparator, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -42,10 +42,8 @@ import { BaseDataService } from '../../data/base/base-data.service';
|
|||||||
* Therefore, equest/response handling methods won't work even though they're defined
|
* Therefore, equest/response handling methods won't work even though they're defined
|
||||||
*/
|
*/
|
||||||
class SearchDataService extends BaseDataService<any> {
|
class SearchDataService extends BaseDataService<any> {
|
||||||
protected linkPath = 'discover';
|
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
super(undefined, undefined, undefined, undefined);
|
super('discover', undefined, undefined, undefined, undefined);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -22,8 +22,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(USAGE_REPORT)
|
@dataService(USAGE_REPORT)
|
||||||
export class UsageReportDataService extends IdentifiableDataService<UsageReport> implements SearchData<UsageReport> {
|
export class UsageReportDataService extends IdentifiableDataService<UsageReport> implements SearchData<UsageReport> {
|
||||||
protected linkPath = 'usagereports';
|
|
||||||
|
|
||||||
private searchData: SearchDataImpl<UsageReport>;
|
private searchData: SearchDataImpl<UsageReport>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -32,9 +30,9 @@ export class UsageReportDataService extends IdentifiableDataService<UsageReport>
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('usagereports', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
getStatistic(scope: string, type: string): Observable<UsageReport> {
|
getStatistic(scope: string, type: string): Observable<UsageReport> {
|
||||||
|
@@ -17,6 +17,7 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(SUBMISSION_CC_LICENSE)
|
@dataService(SUBMISSION_CC_LICENSE)
|
||||||
export class SubmissionCcLicenseDataService extends BaseDataService<SubmissionCcLicence> implements FindAllData<SubmissionCcLicence> {
|
export class SubmissionCcLicenseDataService extends BaseDataService<SubmissionCcLicence> implements FindAllData<SubmissionCcLicence> {
|
||||||
|
|
||||||
protected linkPath = 'submissioncclicenses';
|
protected linkPath = 'submissioncclicenses';
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -25,7 +26,7 @@ export class SubmissionCcLicenseDataService extends BaseDataService<SubmissionCc
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('submissioncclicenses', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -20,8 +20,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(SUBMISSION_CC_LICENSE_URL)
|
@dataService(SUBMISSION_CC_LICENSE_URL)
|
||||||
export class SubmissionCcLicenseUrlDataService extends BaseDataService<SubmissionCcLicenceUrl> implements SearchData<SubmissionCcLicenceUrl> {
|
export class SubmissionCcLicenseUrlDataService extends BaseDataService<SubmissionCcLicenceUrl> implements SearchData<SubmissionCcLicenceUrl> {
|
||||||
protected linkPath = 'submissioncclicenseUrls-search';
|
|
||||||
|
|
||||||
private searchData: SearchData<SubmissionCcLicenceUrl>;
|
private searchData: SearchData<SubmissionCcLicenceUrl>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -30,9 +28,9 @@ export class SubmissionCcLicenseUrlDataService extends BaseDataService<Submissio
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('submissioncclicenseUrls-search', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, (href, searchMethod) => `${href}/${searchMethod}`);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive, (href, searchMethod) => `${href}/${searchMethod}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -28,8 +28,6 @@ import { dataService } from '../../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(VOCABULARY_ENTRY_DETAIL)
|
@dataService(VOCABULARY_ENTRY_DETAIL)
|
||||||
export class VocabularyEntryDetailsDataService extends IdentifiableDataService<VocabularyEntryDetail> implements FindAllData<VocabularyEntryDetail>, SearchData<VocabularyEntryDetail> {
|
export class VocabularyEntryDetailsDataService extends IdentifiableDataService<VocabularyEntryDetail> implements FindAllData<VocabularyEntryDetail>, SearchData<VocabularyEntryDetail> {
|
||||||
protected linkPath = 'vocabularyEntryDetails';
|
|
||||||
|
|
||||||
private findAllData: FindAllData<VocabularyEntryDetail>;
|
private findAllData: FindAllData<VocabularyEntryDetail>;
|
||||||
private searchData: SearchData<VocabularyEntryDetail>;
|
private searchData: SearchData<VocabularyEntryDetail>;
|
||||||
|
|
||||||
@@ -39,10 +37,10 @@ export class VocabularyEntryDetailsDataService extends IdentifiableDataService<V
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('vocabularyEntryDetails', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -27,8 +27,6 @@ import { dataService } from '../../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(VOCABULARY)
|
@dataService(VOCABULARY)
|
||||||
export class VocabularyDataService extends IdentifiableDataService<Vocabulary> implements FindAllData<Vocabulary> {
|
export class VocabularyDataService extends IdentifiableDataService<Vocabulary> implements FindAllData<Vocabulary> {
|
||||||
protected linkPath = 'vocabularies';
|
|
||||||
|
|
||||||
private findAllData: FindAllData<Vocabulary>;
|
private findAllData: FindAllData<Vocabulary>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -37,9 +35,9 @@ export class VocabularyDataService extends IdentifiableDataService<Vocabulary> i
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('vocabularies', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.findAllData = new FindAllDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.findAllData = new FindAllDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -29,9 +29,8 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@dataService(WorkflowItem.type)
|
@dataService(WorkflowItem.type)
|
||||||
export class WorkflowItemDataService extends IdentifiableDataService<WorkflowItem> implements SearchData<WorkflowItem>, DeleteData<WorkflowItem> {
|
export class WorkflowItemDataService extends IdentifiableDataService<WorkflowItem> implements SearchData<WorkflowItem>, DeleteData<WorkflowItem> {
|
||||||
protected linkPath = 'workflowitems';
|
protected linkPath = 'workflowitems';
|
||||||
protected responseMsToLive = 10 * 1000;
|
|
||||||
|
|
||||||
protected searchByItemLinkPath = 'item';
|
protected searchByItemLinkPath = 'item';
|
||||||
|
protected responseMsToLive = 10 * 1000;
|
||||||
|
|
||||||
private searchData: SearchDataImpl<WorkflowItem>;
|
private searchData: SearchDataImpl<WorkflowItem>;
|
||||||
private deleteData: DeleteDataImpl<WorkflowItem>;
|
private deleteData: DeleteDataImpl<WorkflowItem>;
|
||||||
@@ -43,10 +42,10 @@ export class WorkflowItemDataService extends IdentifiableDataService<WorkflowIte
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('workspaceitems', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -23,8 +23,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(WorkspaceItem.type)
|
@dataService(WorkspaceItem.type)
|
||||||
export class WorkspaceitemDataService extends IdentifiableDataService<WorkspaceItem> implements SearchData<WorkspaceItem>, DeleteData<WorkspaceItem> {
|
export class WorkspaceitemDataService extends IdentifiableDataService<WorkspaceItem> implements SearchData<WorkspaceItem>, DeleteData<WorkspaceItem> {
|
||||||
protected linkPath = 'workspaceitems';
|
|
||||||
|
|
||||||
protected searchByItemLinkPath = 'item';
|
protected searchByItemLinkPath = 'item';
|
||||||
|
|
||||||
private searchData: SearchDataImpl<WorkspaceItem>;
|
private searchData: SearchDataImpl<WorkspaceItem>;
|
||||||
@@ -37,10 +35,10 @@ export class WorkspaceitemDataService extends IdentifiableDataService<WorkspaceI
|
|||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
protected notificationsService: NotificationsService,
|
protected notificationsService: NotificationsService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('workspaceitems', requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService);
|
this.searchData = new SearchDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
this.deleteData = new DeleteDataImpl(this.linkPath, this.responseMsToLive, this.constructIdEndpoint, requestService, rdbService, objectCache, halService, notificationsService);
|
this.deleteData = new DeleteDataImpl(this.linkPath, requestService, rdbService, objectCache, halService, notificationsService, this.responseMsToLive, this.constructIdEndpoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -22,8 +22,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(CLAIMED_TASK)
|
@dataService(CLAIMED_TASK)
|
||||||
export class ClaimedTaskDataService extends TasksService<ClaimedTask> {
|
export class ClaimedTaskDataService extends TasksService<ClaimedTask> {
|
||||||
protected linkPath = 'claimedtasks';
|
|
||||||
protected responseMsToLive = 1000;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize instance variables
|
* Initialize instance variables
|
||||||
@@ -39,7 +37,7 @@ export class ClaimedTaskDataService extends TasksService<ClaimedTask> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('claimedtasks', requestService, rdbService, objectCache, halService, 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -20,9 +20,6 @@ import { dataService } from '../data/base/data-service.decorator';
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
@dataService(POOL_TASK)
|
@dataService(POOL_TASK)
|
||||||
export class PoolTaskDataService extends TasksService<PoolTask> {
|
export class PoolTaskDataService extends TasksService<PoolTask> {
|
||||||
protected linkPath = 'pooltasks';
|
|
||||||
protected responseMsToLive = 1000;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize instance variables
|
* Initialize instance variables
|
||||||
*
|
*
|
||||||
@@ -37,7 +34,7 @@ export class PoolTaskDataService extends TasksService<PoolTask> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('pooltasks', requestService, rdbService, objectCache, halService, 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -35,7 +35,7 @@ class TestService extends TasksService<TestTask> {
|
|||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super('testtasks', requestService, rdbService, objectCache, halService);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -26,14 +26,16 @@ export abstract class TasksService<T extends CacheableObject> extends Identifiab
|
|||||||
private searchData: SearchData<T>;
|
private searchData: SearchData<T>;
|
||||||
|
|
||||||
protected constructor(
|
protected constructor(
|
||||||
|
protected linkPath: string,
|
||||||
protected requestService: RequestService,
|
protected requestService: RequestService,
|
||||||
protected rdbService: RemoteDataBuildService,
|
protected rdbService: RemoteDataBuildService,
|
||||||
protected objectCache: ObjectCacheService,
|
protected objectCache: ObjectCacheService,
|
||||||
protected halService: HALEndpointService,
|
protected halService: HALEndpointService,
|
||||||
|
protected responseMsToLive?: number,
|
||||||
) {
|
) {
|
||||||
super(requestService, rdbService, objectCache, halService);
|
super(linkPath, requestService, rdbService, objectCache, halService);
|
||||||
|
|
||||||
this.searchData = new SearchDataImpl<T>(this.linkPath, this.responseMsToLive, requestService, rdbService, objectCache, halService, );
|
this.searchData = new SearchDataImpl<T>(this.linkPath, requestService, rdbService, objectCache, halService, this.responseMsToLive);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user