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  }