89136cbf6a
Manual interventions: • decorators on the same line for service and controller injections and most computed property macros • preserving import order when possible, both per-line and intra-line • moving new imports to the bottom • removal of classic decorator for trivial cases • conversion of init to constructor when appropriate
31 lines
797 B
JavaScript
31 lines
797 B
JavaScript
import { inject as service } from '@ember/service';
|
|
import { computed } from '@ember/object';
|
|
import Model from 'ember-data/model';
|
|
import attr from 'ember-data/attr';
|
|
import classic from 'ember-classic-decorator';
|
|
|
|
@classic
|
|
export default class Agent extends Model {
|
|
@service system;
|
|
|
|
@attr('string') name;
|
|
@attr('string') address;
|
|
@attr('string') serfPort;
|
|
@attr('string') rpcPort;
|
|
@attr({ defaultValue: () => ({}) }) tags;
|
|
@attr('string') status;
|
|
@attr('string') datacenter;
|
|
@attr('string') region;
|
|
|
|
@computed('address', 'port')
|
|
get rpcAddr() {
|
|
const { address, rpcPort } = this;
|
|
return address && rpcPort && `${address}:${rpcPort}`;
|
|
}
|
|
|
|
@computed('system.leader.rpcAddr')
|
|
get isLeader() {
|
|
return this.get('system.leader.rpcAddr') === this.rpcAddr;
|
|
}
|
|
}
|