refactor(agent): refactor rest factories to es6 (#4090)

* refactor(agent): replace v1 browse with es6 module

* refactor(agent): refactor agentv1 to es6

* refactor(agent): replace agent factory with es6

* refactor(agent): refactor browse response to es6

* refactor(agent): refactor browse to es6

* refactor(agent): import angular

* refactor(agent): refactor host to es6

* refactor(agent): refactor ping to es6
pull/4098/head
Chaim Lev-Ari 2020-07-23 10:45:01 +03:00 committed by GitHub
parent 435f15ec6a
commit 7eb8d5449a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 143 additions and 159 deletions

View File

@ -1,19 +1,16 @@
angular.module('portainer.agent').factory('Agent', [ import angular from 'angular';
'$resource',
'API_ENDPOINT_ENDPOINTS', angular.module('portainer.agent').factory('Agent', AgentFactory);
'EndpointProvider',
'StateManager', function AgentFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, StateManager) {
function AgentFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, StateManager) { return $resource(
'use strict'; `${API_ENDPOINT_ENDPOINTS}/:endpointId/docker/v:version/agents`,
return $resource( {
API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/v:version/agents', endpointId: EndpointProvider.endpointID,
{ version: StateManager.getAgentApiVersion,
endpointId: EndpointProvider.endpointID, },
version: StateManager.getAgentApiVersion, {
}, query: { method: 'GET', isArray: true },
{ }
query: { method: 'GET', isArray: true }, );
} }
);
},
]);

View File

@ -1,39 +1,36 @@
import angular from 'angular';
import { browseGetResponse } from './response/browse'; import { browseGetResponse } from './response/browse';
angular.module('portainer.agent').factory('Browse', [ angular.module('portainer.agent').factory('Browse', BrowseFactory);
'$resource',
'API_ENDPOINT_ENDPOINTS', function BrowseFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, StateManager) {
'EndpointProvider', return $resource(
'StateManager', `${API_ENDPOINT_ENDPOINTS}/:endpointId/docker/v:version/browse/:action`,
function BrowseFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, StateManager) { {
'use strict'; endpointId: EndpointProvider.endpointID,
return $resource( version: StateManager.getAgentApiVersion,
API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/v:version/browse/:action', },
{ {
endpointId: EndpointProvider.endpointID, ls: {
version: StateManager.getAgentApiVersion, method: 'GET',
isArray: true,
params: { action: 'ls' },
}, },
{ get: {
ls: { method: 'GET',
method: 'GET', params: { action: 'get' },
isArray: true, transformResponse: browseGetResponse,
params: { action: 'ls' }, responseType: 'arraybuffer',
}, },
get: { delete: {
method: 'GET', method: 'DELETE',
params: { action: 'get' }, params: { action: 'delete' },
transformResponse: browseGetResponse, },
responseType: 'arraybuffer', rename: {
}, method: 'PUT',
delete: { params: { action: 'rename' },
method: 'DELETE', },
params: { action: 'delete' }, }
}, );
rename: { }
method: 'PUT',
params: { action: 'rename' },
},
}
);
},
]);

View File

@ -1,19 +1,16 @@
angular.module('portainer.agent').factory('Host', [ import angular from 'angular';
'$resource',
'API_ENDPOINT_ENDPOINTS', angular.module('portainer.agent').factory('Host', HostFactory);
'EndpointProvider',
'StateManager', function HostFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, StateManager) {
function AgentFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, StateManager) { return $resource(
'use strict'; `${API_ENDPOINT_ENDPOINTS}/:endpointId/docker/v:version/host/:action`,
return $resource( {
API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/v:version/host/:action', endpointId: EndpointProvider.endpointID,
{ version: StateManager.getAgentApiVersion,
endpointId: EndpointProvider.endpointID, },
version: StateManager.getAgentApiVersion, {
}, info: { method: 'GET', params: { action: 'info' } },
{ }
info: { method: 'GET', params: { action: 'info' } }, );
} }
);
},
]);

View File

@ -1,35 +1,32 @@
angular.module('portainer.agent').factory('AgentPing', [ import angular from 'angular';
'$resource',
'API_ENDPOINT_ENDPOINTS', angular.module('portainer.agent').factory('AgentPing', AgentPingFactory);
'EndpointProvider',
'$q', function AgentPingFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, $q) {
function AgentPingFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, $q) { return $resource(
'use strict'; `${API_ENDPOINT_ENDPOINTS}/:endpointId/docker/ping`,
return $resource( {
API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/ping', endpointId: EndpointProvider.endpointID,
{ },
endpointId: EndpointProvider.endpointID, {
}, ping: {
{ method: 'GET',
ping: { interceptor: {
method: 'GET', response: function versionInterceptor(response) {
interceptor: { const instance = response.resource;
response: function versionInterceptor(response) { const version = response.headers('Portainer-Agent-Api-Version') || 1;
var instance = response.resource; instance.version = Number(version);
var version = response.headers('Portainer-Agent-Api-Version') || 1; return instance;
instance.version = Number(version); },
return instance; responseError: function versionResponseError(error) {
}, // 404 - agent is up - set version to 1
responseError: function versionResponseError(error) { if (error.status === 404) {
// 404 - agent is up - set version to 1 return { version: 1 };
if (error.status === 404) { }
return { version: 1 }; return $q.reject(error);
}
return $q.reject(error);
},
}, },
}, },
} },
); }
}, );
]); }

View File

@ -3,7 +3,7 @@
// This functions simply creates a response object and assign // This functions simply creates a response object and assign
// the data to a field. // the data to a field.
export function browseGetResponse(data) { export function browseGetResponse(data) {
var response = {}; const response = {};
response.file = data; response.file = data;
return response; return response;
} }

View File

@ -1,17 +1,15 @@
angular.module('portainer.agent').factory('AgentVersion1', [ import angular from 'angular';
'$resource',
'API_ENDPOINT_ENDPOINTS', angular.module('portainer.agent').factory('AgentVersion1', AgentFactory);
'EndpointProvider',
function AgentFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider) { function AgentFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider) {
'use strict'; return $resource(
return $resource( `${API_ENDPOINT_ENDPOINTS}/:endpointId/docker/agents`,
API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/agents', {
{ endpointId: EndpointProvider.endpointID,
endpointId: EndpointProvider.endpointID, },
}, {
{ query: { method: 'GET', isArray: true },
query: { method: 'GET', isArray: true }, }
} );
); }
},
]);

View File

@ -1,37 +1,35 @@
import angular from 'angular';
import { browseGetResponse } from '../response/browse'; import { browseGetResponse } from '../response/browse';
angular.module('portainer.agent').factory('BrowseVersion1', [ angular.module('portainer.agent').factory('BrowseVersion1', BrowseFactory);
'$resource',
'API_ENDPOINT_ENDPOINTS', function BrowseFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider) {
'EndpointProvider', return $resource(
function BrowseFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider) { `${API_ENDPOINT_ENDPOINTS}/:endpointId/docker/browse/:volumeID/:action`,
'use strict'; {
return $resource( endpointId: EndpointProvider.endpointID,
API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/browse/:volumeID/:action', },
{ {
endpointId: EndpointProvider.endpointID, ls: {
method: 'GET',
isArray: true,
params: { action: 'ls' },
}, },
{ get: {
ls: { method: 'GET',
method: 'GET', params: { action: 'get' },
isArray: true, transformResponse: browseGetResponse,
params: { action: 'ls' }, responseType: 'arraybuffer',
}, },
get: { delete: {
method: 'GET', method: 'DELETE',
params: { action: 'get' }, params: { action: 'delete' },
transformResponse: browseGetResponse, },
responseType: 'arraybuffer', rename: {
}, method: 'PUT',
delete: { params: { action: 'rename' },
method: 'DELETE', },
params: { action: 'delete' }, }
}, );
rename: { }
method: 'PUT',
params: { action: 'rename' },
},
}
);
},
]);