All Downloads are FREE. Search and download functionalities are using the official Maven repository.

mx.emite.sdk.proxy.request.TimbrarRequest Maven / Gradle / Ivy

Go to download

Este kit de consumo provee a los integradores de Apis de Java para construir software que consuma los diferentes servicios web publicados por Emite Facturacion

There is a newer version: 0.1.4
Show newest version
package mx.emite.sdk.proxy.request;

import java.io.InputStream;

import javax.validation.constraints.NotNull;

import lombok.Getter;
import lombok.ToString;
import mx.emite.sdk.errores.ApiException;
import mx.emite.sdk.utils.Utilerias;

@ToString
@Getter
public class TimbrarRequest{

	/**
	 * Usuario del Emisor 
	 * -- SETTER --
	 * @param usuario Usuario del Emisor obtenido de Scot©
	 * 
	 */
	@NotNull private String usuario;
	@NotNull private String contrasena;
	
	private String sucursal;
	@NotNull private String xml;
	

	public static TimbrarRequestBuilder builder() {
		return new TimbrarRequestBuilder();
	}

	public static class TimbrarRequestBuilder {
		private String usuario;
		private String contrasena;
		private String sucursal;
		private String xml;

		public TimbrarRequestBuilder codifica(final String xmlSinCodificar) throws ApiException{
			this.xml = Utilerias.codificaUtf8(xmlSinCodificar);
			return this;
		}
		
		public TimbrarRequestBuilder archivo(final String rutaArchivoSinCodificar) throws ApiException {
			  
			return codifica(Utilerias.leeArchivo(rutaArchivoSinCodificar));
		}
		
		public TimbrarRequestBuilder is(InputStream is) throws ApiException{
			return codifica(Utilerias.leeArchivo(is));
		}
		
		public TimbrarRequestBuilder usuario(String usuario) {
			this.usuario = usuario;
			return this;
		}

		public TimbrarRequestBuilder contrasena(String contrasena) {
			this.contrasena = contrasena;
			return this;
		}

		public TimbrarRequestBuilder sucursal(String sucursal) {
			this.sucursal = sucursal;
			return this;
		}

		public TimbrarRequestBuilder xml(String xml) {
			this.xml = xml;
			return this;
		}

		public TimbrarRequest build() throws ApiException {
			return new TimbrarRequest(this);
		}

		
	}

	private TimbrarRequest(TimbrarRequestBuilder builder) throws ApiException {
		this.usuario = builder.usuario;
		this.contrasena = builder.contrasena;
		this.sucursal = builder.sucursal;
		this.xml = builder.xml;
		Utilerias.valida(this);
	}
	
	
	
	
	

	 
	
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy