/// module Kubernetes { // facade this to the watcher service class KubernetesStateImpl implements KubernetesState { constructor(private watcher:WatcherService) { } get namespaces():Array { return _.map(this.watcher.getObjects(WatchTypes.NAMESPACES), (namespace) => { return namespace.metadata.name; }); } get selectedNamespace():string { return this.watcher.getNamespace(); } set selectedNamespace(namespace:string) { this.watcher.setNamespace(namespace); } } _module.factory('KubernetesState', ['WatcherService', (watcher:WatcherService) => { return new KubernetesStateImpl(watcher); }]); // TODO this doesn't need to be a service really _module.factory('KubernetesApiURL', () => kubernetesApiUrl()); // TODO we'll get rid of this... _module.factory('KubernetesVersion', [() => { return { query: () => null } }]); // TODO let's move these into KubernetesModel so controllers don't have to inject them separately _module.factory('KubernetesPods', ['KubernetesModel', (KubernetesModel) => { return KubernetesModel['podsResource']; }]); _module.factory('KubernetesReplicationControllers', ['KubernetesModel', (KubernetesModel) => { return KubernetesModel['replicationcontrollersResource']; }]); _module.factory('KubernetesServices', ['KubernetesModel', (KubernetesModel) => { return KubernetesModel['servicesResource']; }]); }