github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/ui/app/models/recommendation.js (about) 1 import Model from '@ember-data/model'; 2 import { attr, belongsTo } from '@ember-data/model'; 3 import { get } from '@ember/object'; 4 5 export default class Recommendation extends Model { 6 @belongsTo('job') job; 7 @belongsTo('recommendation-summary', { inverse: 'recommendations' }) recommendationSummary; 8 9 @attr('date') submitTime; 10 11 get taskGroup() { 12 return get(this, 'recommendationSummary.taskGroup'); 13 } 14 15 @attr('string') taskName; 16 17 get task() { 18 return get(this, 'taskGroup.tasks').findBy('name', this.taskName); 19 } 20 21 @attr('string') resource; 22 @attr('number') value; 23 24 get currentValue() { 25 const resourceProperty = this.resource === 'CPU' ? 'reservedCPU' : 'reservedMemory'; 26 return get(this, `task.${resourceProperty}`); 27 } 28 29 @attr() stats; 30 }