blob: 049131eb01968cf77ae713d406d41a168f25f5d5 [file] [log] [blame]
import { Instance } from '../../instance/shared/instance.model';
export class Cluster {
readonly name: string;
readonly controller: string;
readonly enabled: boolean;
readonly instances: Instance[];
readonly inMaintenance: boolean;
// TODO vxu: Resources are useless here. Remove it please.
readonly resources: string[];
// TODO vxu: convert it to use StateModel[]
readonly stateModels: string[];
config: Object;
constructor(obj: any) {
this.name = obj.id;
this.controller = obj.controller;
this.enabled = !obj.paused;
this.resources = obj.resources;
this.inMaintenance = obj.maintenance;
const ins: Instance[] = [];
for (const instance of obj.instances) {
ins.push(
new Instance(
instance,
this.name,
false, // here's a dummy value. should not be used
obj.liveInstances.indexOf(instance) >= 0
)
);
}
this.instances = ins;
}
}