<commit_before>/**
 * Classe Base para identificação das classes de serviço
 * @class Mba.ux.incubator.service.Service
 */

Ext.define('Mba.ux.incubator.service.Service', {

    config: {
        serviceId: null
    },

    updateServiceId: function() {
        return Mba.ux.incubator.service.Manager.register(this);
    },

    constructor: function(config) {
        this.initConfig(config);
    },
<commit_msg>inclusão de método para tratamento de erros de ajax<commit_after>/**
 * Classe Base para identificação das classes de serviço
 * @class Mba.ux.incubator.service.Service
 */

Ext.define('Mba.ux.incubator.service.Service', {

    config: {
        serviceId: null
    },

    updateServiceId: function() {
        return Mba.ux.incubator.service.Manager.register(this);
    },

    constructor: function(config) {
        this.initConfig(config);
    },

    tratarErro: function(response, deferred) {
        var mensagem, textResponse;
        if (response.responseText === '') {
            deferred.reject('O serviço está indisponível no momento.');
            return;
        }

        textResponse = Ext.decode(response.responseText);
        if (response.status == 405) {
            deferred.reject(textResponse.detail);
        } else if (response.status == 400 || response.status == 401) {
            mensagem = textResponse.detail;
            if (mensagem == 'Dados incorretos') {
                mensagem = 'MSG_ERRO_LOGIN';
            }
            deferred.reject(mensagem);
        } else if (response.status == 200) {
            deferred.reject('MSG_ERRO_AUTENTICAR');
        } else {
            deferred.reject('MSG_ERRO_TIMEOUT');
        }
    },

{'fraction_non_alphanumeric': 0.12158956109134045, 'fraction_numerical': 0.0071174377224199285, 'mean_word_length': 2.33399209486166, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4967024', 'n_tokens_mistral': 523, 'n_tokens_neox': 501, 'n_words': 95}