service-usine-v1
Version:
swagger client for service-usine-v1
749 lines (651 loc) • 27.5 kB
text/typescript
/**
* usine
* No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
*
* API version: 1
*
*
*/
/* tslint:disable:no-unused-variable member-ordering */
import {AxiosInstance, AxiosResponse} from 'axios'
import * as models from '../model/models';
import { COLLECTION_FORMATS } from '../variables';
import { Configuration } from '../configuration';
import { Usinecontrollerv1ApiInterface } from './Usinecontrollerv1ApiInterface';
import axios from 'axios';
import {client} from "webstomp-client";
export class Usinecontrollerv1Api implements Usinecontrollerv1ApiInterface {
protected basePath = 'https://localhost';
public defaultHeaders: {};
public configuration: Configuration = new Configuration();
constructor(protected http: AxiosInstance, configuration?: Configuration) {
this.basePath = http.defaults.baseURL
if (configuration) {
this.configuration = configuration;
}
}
private extendObj<T1, T2 extends T1>(objA: T2, objB: T2): T1|T2 {
for(let key in objB){
if(objB.hasOwnProperty(key)){
objA[key] = objB[key];
}
}
return objA;
}
private toQueryString(obj) {
var parts = [];
for (var i in obj) {
if (obj.hasOwnProperty(i)) {
parts.push(encodeURIComponent(i) + "=" + encodeURIComponent(obj[i]));
}
}
return parts.join("&");
}
/**
*
* @summary createAteliers
* @param usineId usineId
* @param ateliersLabels ateliersLabels
*/
public createAteliers(usineId: number, ateliersLabels: Array<string>, extraHttpRequestParams?: any): Promise<Array<models.AggregateReference>> {
return new Promise<Array<models.AggregateReference>>((resolve, reject) => {
this.createAteliersWithHttpInfo(usineId, ateliersLabels, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
*
* @summary create
* @param details details
*/
public create(details: models.UsineDetails, extraHttpRequestParams?: any): Promise<models.Usine> {
return new Promise<models.Usine>((resolve, reject) => {
this.createWithHttpInfo(details, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
*
* @summary delete
* @param usineId usineId
*/
public delete(usineId: number, extraHttpRequestParams?: any): Promise<{}> {
return new Promise<{}>((resolve, reject) => {
this.deleteWithHttpInfo(usineId, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
*
* @summary findAggregate
* @param usineId usineId
*/
public findAggregate(usineId: number, extraHttpRequestParams?: any): Promise<models.UsineAggregateDto> {
return new Promise<models.UsineAggregateDto>((resolve, reject) => {
this.findAggregateWithHttpInfo(usineId, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
*
* @summary findAll
* @param extId extId
* @param extSystem extSystem
*/
public findAll(extId?: string, extSystem?: string, extraHttpRequestParams?: any): Promise<Array<models.Usine>> {
return new Promise<Array<models.Usine>>((resolve, reject) => {
this.findAllWithHttpInfo(extId, extSystem, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
*
* @summary findOne
* @param usineId usineId
*/
public findOne(usineId: number, extraHttpRequestParams?: any): Promise<models.Usine> {
return new Promise<models.Usine>((resolve, reject) => {
this.findOneWithHttpInfo(usineId, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
*
* @summary getAteliers
* @param usineId usineId
*/
public getAteliers(usineId: number, extraHttpRequestParams?: any): Promise<Array<models.AggregateReference>> {
return new Promise<Array<models.AggregateReference>>((resolve, reject) => {
this.getAteliersWithHttpInfo(usineId, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
*
* @summary getState
* @param usineId usineId
*/
public getState(usineId: number, extraHttpRequestParams?: any): Promise<string> {
return new Promise<string>((resolve, reject) => {
this.getStateWithHttpInfo(usineId, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
*
* @summary replace
* @param usineId usineId
* @param details details
*/
public replace(usineId: number, details: models.UsineDetails, extraHttpRequestParams?: any): Promise<models.Usine> {
return new Promise<models.Usine>((resolve, reject) => {
this.replaceWithHttpInfo(usineId, details, extraHttpRequestParams)
.then(response => resolve(response.data))
.catch(reason => reject(reason));
});
}
/**
* createAteliers
*
* @param usineId usineId
* @param ateliersLabels ateliersLabels
*/
public createAteliersWithHttpInfo(usineId: number, ateliersLabels: Array<string>, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines/${usineId}/ateliers'
.replace('${' + 'usineId' + '}', String(usineId));
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
// verify required parameter 'usineId' is not null or undefined
if (usineId === null || usineId === undefined) {
throw new Error('Required parameter usineId was null or undefined when calling createAteliers.');
}
// verify required parameter 'ateliersLabels' is not null or undefined
if (ateliersLabels === null || ateliersLabels === undefined) {
throw new Error('Required parameter ateliersLabels was null or undefined when calling createAteliers.');
}
// to determine the Content-Type header
let consumes: string[] = [
'application/json'
];
// to determine the Accept header
let produces: string[] = [
'application/json'
];
headers['Content-Type'] = 'application/json';
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'post',
headers: headers,
baseURL: this.basePath,
data: ateliersLabels == null ? '' : JSON.stringify(ateliersLabels),
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
/**
* create
*
* @param details details
*/
public createWithHttpInfo(details: models.UsineDetails, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines';
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
// verify required parameter 'details' is not null or undefined
if (details === null || details === undefined) {
throw new Error('Required parameter details was null or undefined when calling create.');
}
// to determine the Content-Type header
let consumes: string[] = [
'application/json'
];
// to determine the Accept header
let produces: string[] = [
'application/json'
];
headers['Content-Type'] = 'application/json';
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'post',
headers: headers,
baseURL: this.basePath,
data: details == null ? '' : JSON.stringify(details),
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
/**
* delete
*
* @param usineId usineId
*/
public deleteWithHttpInfo(usineId: number, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines/${usineId}'
.replace('${' + 'usineId' + '}', String(usineId));
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
// verify required parameter 'usineId' is not null or undefined
if (usineId === null || usineId === undefined) {
throw new Error('Required parameter usineId was null or undefined when calling delete.');
}
// to determine the Content-Type header
let consumes: string[] = [
];
// to determine the Accept header
let produces: string[] = [
'*/*'
];
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'delete',
headers: headers,
baseURL: this.basePath,
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
/**
* findAggregate
*
* @param usineId usineId
*/
public findAggregateWithHttpInfo(usineId: number, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines/${usineId}/aggregate'
.replace('${' + 'usineId' + '}', String(usineId));
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
// verify required parameter 'usineId' is not null or undefined
if (usineId === null || usineId === undefined) {
throw new Error('Required parameter usineId was null or undefined when calling findAggregate.');
}
// to determine the Content-Type header
let consumes: string[] = [
];
// to determine the Accept header
let produces: string[] = [
'application/json'
];
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'get',
headers: headers,
baseURL: this.basePath,
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
/**
* findAll
*
* @param extId extId
* @param extSystem extSystem
*/
public findAllWithHttpInfo(extId?: string, extSystem?: string, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines';
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
if (extId !== undefined) {
queryParameters['extId'] = extId;
}
if (extSystem !== undefined) {
queryParameters['extSystem'] = extSystem;
}
// to determine the Content-Type header
let consumes: string[] = [
];
// to determine the Accept header
let produces: string[] = [
'application/json'
];
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'get',
headers: headers,
baseURL: this.basePath,
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
/**
* findOne
*
* @param usineId usineId
*/
public findOneWithHttpInfo(usineId: number, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines/${usineId}'
.replace('${' + 'usineId' + '}', String(usineId));
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
// verify required parameter 'usineId' is not null or undefined
if (usineId === null || usineId === undefined) {
throw new Error('Required parameter usineId was null or undefined when calling findOne.');
}
// to determine the Content-Type header
let consumes: string[] = [
];
// to determine the Accept header
let produces: string[] = [
'application/json'
];
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'get',
headers: headers,
baseURL: this.basePath,
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
/**
* getAteliers
*
* @param usineId usineId
*/
public getAteliersWithHttpInfo(usineId: number, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines/${usineId}/ateliers'
.replace('${' + 'usineId' + '}', String(usineId));
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
// verify required parameter 'usineId' is not null or undefined
if (usineId === null || usineId === undefined) {
throw new Error('Required parameter usineId was null or undefined when calling getAteliers.');
}
// to determine the Content-Type header
let consumes: string[] = [
];
// to determine the Accept header
let produces: string[] = [
'*/*'
];
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'get',
headers: headers,
baseURL: this.basePath,
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
/**
* getState
*
* @param usineId usineId
*/
public getStateWithHttpInfo(usineId: number, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines/${usineId}/etat'
.replace('${' + 'usineId' + '}', String(usineId));
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
// verify required parameter 'usineId' is not null or undefined
if (usineId === null || usineId === undefined) {
throw new Error('Required parameter usineId was null or undefined when calling getState.');
}
// to determine the Content-Type header
let consumes: string[] = [
];
// to determine the Accept header
let produces: string[] = [
'*/*'
];
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'get',
headers: headers,
baseURL: this.basePath,
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
/**
* replace
*
* @param usineId usineId
* @param details details
*/
public replaceWithHttpInfo(usineId: number, details: models.UsineDetails, extraHttpRequestParams?: any): Promise<AxiosResponse> {
const path = '/api/v1/usines/${usineId}'
.replace('${' + 'usineId' + '}', String(usineId));
let queryParameters = {};
let headers = this.extendObj({}, this.defaultHeaders);;
// verify required parameter 'usineId' is not null or undefined
if (usineId === null || usineId === undefined) {
throw new Error('Required parameter usineId was null or undefined when calling replace.');
}
// verify required parameter 'details' is not null or undefined
if (details === null || details === undefined) {
throw new Error('Required parameter details was null or undefined when calling replace.');
}
// to determine the Content-Type header
let consumes: string[] = [
'application/json'
];
// to determine the Accept header
let produces: string[] = [
'application/json'
];
headers['Content-Type'] = 'application/json';
queryParameters = this.toQueryString(queryParameters);
queryParameters = queryParameters?'?'+queryParameters:'';
let requestOptions = {
url: path + queryParameters,
method: 'put',
headers: headers,
baseURL: this.basePath,
data: details == null ? '' : JSON.stringify(details),
withCredentials:this.configuration.withCredentials
};
if (extraHttpRequestParams) {
requestOptions = this.extendObj(requestOptions, extraHttpRequestParams);
}
return this.http.request(requestOptions);
}
}
export class Usinecontrollerv1ApiVue extends Usinecontrollerv1Api {
private installed = false
constructor() {
super(axios.create())
}
public registerTopicActif(callback: {(message: models.UsineActifEvent): void}): {topic: string, listener: {(message: models.UsineActifEvent): void;}} {
return {topic: '/topic/industrie/referentiel/structure/usine/*v1/state/actif/*', listener: callback}
}
public registerTopicActifFor(id: number, callback: {(message: models.UsineActifEvent): void}): {topic: string, listener: {(message: models.UsineActifEvent): void;}} {
return {topic: '/topic/industrie/referentiel/structure/usine/*v1/state/actif/' + id, listener: callback}
}
public unregisterTopicActif(): string {
return '/topic/industrie/referentiel/structure/usine/*v1/state/actif/*'
}
public unregisterTopicActifFor(id: number): string {
return '/topic/industrie/referentiel/structure/usine/*v1/state/actif/' + id
}
public registerTopicSupprimee(callback: {(message: models.UsineSupprimeeEvent): void}): {topic: string, listener: {(message: models.UsineSupprimeeEvent): void;}} {
return {topic: '/topic/industrie/referentiel/structure/usine/*v1/state/supprimee/*', listener: callback}
}
public registerTopicSupprimeeFor(id: number, callback: {(message: models.UsineSupprimeeEvent): void}): {topic: string, listener: {(message: models.UsineSupprimeeEvent): void;}} {
return {topic: '/topic/industrie/referentiel/structure/usine/*v1/state/supprimee/' + id, listener: callback}
}
public unregisterTopicSupprimee(): string {
return '/topic/industrie/referentiel/structure/usine/*v1/state/supprimee/*'
}
public unregisterTopicSupprimeeFor(id: number): string {
return '/topic/industrie/referentiel/structure/usine/*v1/state/supprimee/' + id
}
public registerTopicLabelMisAJour(callback: {(message: models.UsineLabelMisAJourEvent): void}): {topic: string, listener: {(message: models.UsineLabelMisAJourEvent): void;}} {
return {topic: '/topic/industrie/referentiel/structure/usine/*v1/update/labelMisAJour/*', listener: callback}
}
public registerTopicLabelMisAJourFor(id: number, callback: {(message: models.UsineLabelMisAJourEvent): void}): {topic: string, listener: {(message: models.UsineLabelMisAJourEvent): void;}} {
return {topic: '/topic/industrie/referentiel/structure/usine/*v1/update/labelMisAJour/' + id, listener: callback}
}
public unregisterTopicLabelMisAJour(): string {
return '/topic/industrie/referentiel/structure/usine/*v1/update/labelMisAJour/*'
}
public unregisterTopicLabelMisAJourFor(id: number): string {
return '/topic/industrie/referentiel/structure/usine/*v1/update/labelMisAJour/' + id
}
public buildUsineDetails(): models.UsineDetails {
return {} as models.UsineDetails;
}
private install(Vue, url) {
if(Vue.topics === undefined) {
Vue.topics = [];
Vue.stompConnected = false;
}
this.basePath = url
function addListeners() {
for(let topic in this.$topics.myTopics) {
addListener(this, topic);
}
}
function addListener(that, topic) {
if(Vue.topics[topic] === undefined) {
Vue.topics[topic] = [];
tryConnect(function(sessionId) {
subscribeTopic(topic);
});
}
let listener = that.$topics.myTopics[topic];
Vue.topics[topic][that._uid] = listener;
}
function removeListeners() {
for(let topic in this.$topics.myTopics) {
removeListener(this, topic);
}
}
function removeListener(that, topic) {
let listener = that.$topics.myTopics[topic];
delete Vue.topics[topic][that._uid]
if(Vue.topics[topic].join('') === '') {
delete Vue.topics[topic];
unsubscribeTopic(topic);
if(Vue.topics.join('') === '') {
tryDisconnect();
}
}
}
function subscribeTopic(topic) {
console.log('subscribe topic ' + topic);
Vue.stompClient.subscribe(topic, function(body, headers) {
console.log('This is the body of a message on the subscribed queue:', body);
Vue.topics[topic].forEach(listener => {
let res = '';
eval('res='+body.body)
listener(res);
});
});
}
function unsubscribeTopic(topic) {
console.log('unsubscribe topic ' + topic);
Vue.stompClient.unsubscribe(topic);
}
function tryConnect(callback) {
if(Vue.stompConnected) {
callback(Vue.stompSessionId);
return;
}
try {
Vue.stompClient = client(url.replace('http://', 'ws://') + '/eventsWs');
} catch(e) {
console.log("Impossible de se connecter");
console.log(e);
setTimeout(function() {
tryConnect(function() {
for(let topic in Vue.topics) {
subscribeTopic(topic);
}
});
}, 2000);
}
Vue.stompClient.connect('guest', 'guest', function(sessionId) {
Vue.stompSessionId = sessionId;
Vue.stompConnected = true;
callback(sessionId);
console.log('connecté au STOMP ');
}, function(error) {
Vue.stompConnected = false;
console.log('Error de connection : ' + error);
setTimeout(function() {
tryConnect(function() {
for(let topic in Vue.topics) {
subscribeTopic(topic);
}
});
}, 2000);
});
}
function tryDisconnect() {
if(!Vue.stompConnected) {
return;
}
Vue.stompClient.disconnect();
Vue.stompConnected = false;
}
Vue.mixin({
beforeCreate: function() {
this.$topics = {
myTopics: {},
subscribe: function({topic, listener}) {
this.myTopics[topic] = listener;
}
};
},
mounted: addListeners,
beforeDestroy: removeListeners,
methods : {
subscribeTopic: function({topic, listener}) {
this.$topics.myTopics[topic] = listener;
addListener(this, topic);
},
unsubscribeTopic: function(topic) {
removeListener(this, topic);
}
}
});
}
}