'use strict';
var userRepository = require('./repository');

exports.execute = function(id, callback) {

	//Apenas um serviço para ilustrar a utilização de uma camada de serviços.
	//Poderia ser implementado validações e regras de negócios para delete de usuários.
	//EX: Verificação dos parâmetros obrigatórios

	if (!id || id.toString().length != 24) {
		return callback({
			path: 'user-service.delete-user',
			type: 'validation',
			error: 'Invalid id.',
			details: 'The id field is required.'
		});
	}	

	userRepository.delete(id, function(err, data) {
		callback && callback(err, data);
	});

};