Add ws subscription to job results

This commit is contained in:
gconsidine
2018-02-09 16:01:29 -05:00
committed by Jake McDermott
parent 2eef166325
commit ad1764c7f2
2 changed files with 48 additions and 8 deletions

View File

@@ -5,6 +5,7 @@ let vm;
let ansi;
let resource;
let related;
let socket;
let container;
let $timeout;
let $sce;
@@ -40,6 +41,7 @@ const TIME_EVENTS = [
function JobsIndexController (
_resource_,
_socket_,
_$sce_,
_$timeout_,
_$scope_,
@@ -52,6 +54,7 @@ function JobsIndexController (
$scope = _$scope_;
$q = _$q_;
resource = _resource_;
socket = _socket_;
ansi = new Ansi();
related = getRelated();
@@ -611,6 +614,7 @@ function scrollPageDown () {
JobsIndexController.$inject = [
'resource',
'socket',
'$sce',
'$timeout',
'$scope',

View File

@@ -54,13 +54,38 @@ function resolveResource (Job, ProjectUpdate, AdHocCommand, SystemJob, WorkflowJ
});
}
function JobsRun ($stateExtender, strings) {
$stateExtender.addState({
function resolveSocket (SocketService, $stateParams) {
const { id } = $stateParams;
const { type } = $stateParams;
// TODO: accommodate other result types (management, scm_update, etc)
const state = {
data: {
socket: {
groups: {
jobs: ['status_changed', 'summary'],
job_events: []
}
}
}
};
SocketService.addStateResolve(state, id);
return SocketService;
}
function resolveBreadcrumb (strings) {
return {
label: strings.get('state.TITLE')
};
}
function JobsRun ($stateRegistry) {
const state = {
name: 'jobz',
url: '/jobz/:type/:id',
route: '/jobz/:type/:id',
ncyBreadcrumb: {
label: strings.get('state.TITLE')
},
data: {
activityStream: true,
activityStreamTarget: 'jobs'
@@ -81,12 +106,23 @@ function JobsRun ($stateExtender, strings) {
'WorkflowJobModel',
'$stateParams',
resolveResource
],
ncyBreadcrumb: [
'JobsStrings',
resolveBreadcrumb
],
socket: [
'SocketService',
'$stateParams',
resolveSocket
]
}
});
},
};
$stateRegistry.register(state);
}
JobsRun.$inject = ['$stateExtender', 'JobsStrings'];
JobsRun.$inject = ['$stateRegistry'];
angular
.module(MODULE_NAME, [