[PS-1841] Fix org-* commands for CLI (#4013)
* Add getFromState method * Added a method for CLI to get an org from state * Converted all CLI calls to `.get()` * Used `.getFromState` instead of `.get` * Deprecate getFromState method
This commit is contained in:
parent
30f72825d7
commit
c1b25f4389
|
@ -436,7 +436,7 @@ export class GetCommand extends DownloadCommand {
|
||||||
private async getOrganization(id: string) {
|
private async getOrganization(id: string) {
|
||||||
let org: Organization = null;
|
let org: Organization = null;
|
||||||
if (Utils.isGuid(id)) {
|
if (Utils.isGuid(id)) {
|
||||||
org = await this.organizationService.get(id);
|
org = await this.organizationService.getFromState(id);
|
||||||
} else if (id.trim() !== "") {
|
} else if (id.trim() !== "") {
|
||||||
let orgs = await this.organizationService.getAll();
|
let orgs = await this.organizationService.getAll();
|
||||||
orgs = CliUtils.searchOrganizations(orgs, id);
|
orgs = CliUtils.searchOrganizations(orgs, id);
|
||||||
|
|
|
@ -23,7 +23,7 @@ export class ImportCommand {
|
||||||
): Promise<Response> {
|
): Promise<Response> {
|
||||||
const organizationId = options.organizationid;
|
const organizationId = options.organizationid;
|
||||||
if (organizationId != null) {
|
if (organizationId != null) {
|
||||||
const organization = await this.organizationService.get(organizationId);
|
const organization = await this.organizationService.getFromState(organizationId);
|
||||||
|
|
||||||
if (organization == null) {
|
if (organization == null) {
|
||||||
return Response.badRequest(
|
return Response.badRequest(
|
||||||
|
|
|
@ -163,7 +163,7 @@ export class ListCommand {
|
||||||
if (!Utils.isGuid(options.organizationId)) {
|
if (!Utils.isGuid(options.organizationId)) {
|
||||||
return Response.badRequest("`" + options.organizationId + "` is not a GUID.");
|
return Response.badRequest("`" + options.organizationId + "` is not a GUID.");
|
||||||
}
|
}
|
||||||
const organization = await this.organizationService.get(options.organizationId);
|
const organization = await this.organizationService.getFromState(options.organizationId);
|
||||||
if (organization == null) {
|
if (organization == null) {
|
||||||
return Response.error("Organization not found.");
|
return Response.error("Organization not found.");
|
||||||
}
|
}
|
||||||
|
@ -196,7 +196,7 @@ export class ListCommand {
|
||||||
if (!Utils.isGuid(options.organizationId)) {
|
if (!Utils.isGuid(options.organizationId)) {
|
||||||
return Response.badRequest("`" + options.organizationId + "` is not a GUID.");
|
return Response.badRequest("`" + options.organizationId + "` is not a GUID.");
|
||||||
}
|
}
|
||||||
const organization = await this.organizationService.get(options.organizationId);
|
const organization = await this.organizationService.getFromState(options.organizationId);
|
||||||
if (organization == null) {
|
if (organization == null) {
|
||||||
return Response.error("Organization not found.");
|
return Response.error("Organization not found.");
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,6 +75,11 @@ export abstract class OrganizationService {
|
||||||
get: (id: string) => Organization;
|
get: (id: string) => Organization;
|
||||||
getByIdentifier: (identifier: string) => Organization;
|
getByIdentifier: (identifier: string) => Organization;
|
||||||
getAll: (userId?: string) => Promise<Organization[]>;
|
getAll: (userId?: string) => Promise<Organization[]>;
|
||||||
|
/**
|
||||||
|
* @deprecated For the CLI only
|
||||||
|
* @param id id of the organization
|
||||||
|
*/
|
||||||
|
getFromState: (id: string) => Promise<Organization>;
|
||||||
canManageSponsorships: () => Promise<boolean>;
|
canManageSponsorships: () => Promise<boolean>;
|
||||||
hasOrganizations: () => boolean;
|
hasOrganizations: () => boolean;
|
||||||
}
|
}
|
||||||
|
|
|
@ -101,6 +101,20 @@ export class OrganizationService implements OrganizationServiceAbstraction {
|
||||||
return organizations.find((organization) => organization.id === id);
|
return organizations.find((organization) => organization.id === id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated For the CLI only
|
||||||
|
* @param id id of the organization
|
||||||
|
*/
|
||||||
|
async getFromState(id: string): Promise<Organization> {
|
||||||
|
const organizationsMap = await this.stateService.getOrganizations();
|
||||||
|
const organization = organizationsMap[id];
|
||||||
|
if (organization == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return new Organization(organization);
|
||||||
|
}
|
||||||
|
|
||||||
getByIdentifier(identifier: string): Organization {
|
getByIdentifier(identifier: string): Organization {
|
||||||
const organizations = this._organizations.getValue();
|
const organizations = this._organizations.getValue();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue