github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/ui/app/models/plugin.js (about) 1 import { computed } from '@ember/object'; 2 import Model from '@ember-data/model'; 3 import { attr } from '@ember-data/model'; 4 import { fragmentArray } from 'ember-data-model-fragments/attributes'; 5 6 export default class Plugin extends Model { 7 @attr('string') plainId; 8 9 @attr() topologies; 10 @attr('string') provider; 11 @attr('string') version; 12 13 @fragmentArray('storage-controller', { defaultValue: () => [] }) controllers; 14 @fragmentArray('storage-node', { defaultValue: () => [] }) nodes; 15 16 @attr('boolean') controllerRequired; 17 @attr('number') controllersHealthy; 18 @attr('number') controllersExpected; 19 20 @computed('controllersHealthy', 'controllersExpected') 21 get controllersHealthyProportion() { 22 return this.controllersHealthy / this.controllersExpected; 23 } 24 25 @attr('number') nodesHealthy; 26 @attr('number') nodesExpected; 27 28 @computed('nodesHealthy', 'nodesExpected') 29 get nodesHealthyProportion() { 30 return this.nodesHealthy / this.nodesExpected; 31 } 32 }