/** * Copyright (C) 2013 Premium Minds. * * This file is part of billy portugal (PT Pack). * * billy portugal (PT Pack) is free software: you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License as published by the Free * Software Foundation, either version 3 of the License, or (at your option) any * later version. * * billy portugal (PT Pack) is distributed in the hope that it will be useful, but WITHOUT ANY * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more * details. * * You should have received a copy of the GNU Lesser General Public License * along with billy portugal (PT Pack). If not, see <http://www.gnu.org/licenses/>. */ package com.premiumminds.billy.portugal; import com.google.inject.AbstractModule; import com.google.inject.Inject; import com.premiumminds.billy.core.CoreDependencyModule; import com.premiumminds.billy.core.CoreJPADependencyModule; import com.premiumminds.billy.gin.GINDependencyModule; import com.premiumminds.billy.portugal.persistence.dao.DAOPTAddress; import com.premiumminds.billy.portugal.persistence.dao.DAOPTApplication; import com.premiumminds.billy.portugal.persistence.dao.DAOPTBusiness; import com.premiumminds.billy.portugal.persistence.dao.DAOPTContact; import com.premiumminds.billy.portugal.persistence.dao.DAOPTCreditNote; import com.premiumminds.billy.portugal.persistence.dao.DAOPTCreditNoteEntry; import com.premiumminds.billy.portugal.persistence.dao.DAOPTCustomer; import com.premiumminds.billy.portugal.persistence.dao.DAOPTGenericInvoice; import com.premiumminds.billy.portugal.persistence.dao.DAOPTGenericInvoiceEntry; import com.premiumminds.billy.portugal.persistence.dao.DAOPTInvoice; import com.premiumminds.billy.portugal.persistence.dao.DAOPTInvoiceEntry; import com.premiumminds.billy.portugal.persistence.dao.DAOPTPayment; import com.premiumminds.billy.portugal.persistence.dao.DAOPTProduct; import com.premiumminds.billy.portugal.persistence.dao.DAOPTReceiptInvoice; import com.premiumminds.billy.portugal.persistence.dao.DAOPTRegionContext; import com.premiumminds.billy.portugal.persistence.dao.DAOPTShippingPoint; import com.premiumminds.billy.portugal.persistence.dao.DAOPTSimpleInvoice; import com.premiumminds.billy.portugal.persistence.dao.DAOPTSupplier; import com.premiumminds.billy.portugal.persistence.dao.DAOPTTax; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTAddressImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTApplicationImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTBusinessImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTContactImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTCreditNoteEntryImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTCreditNoteImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTCustomerImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTGenericInvoiceEntryImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTGenericInvoiceImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTInvoiceEntryImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTInvoiceImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTPaymentImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTProductImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTReceiptInvoiceImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTRegionContextImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTShippingPointImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTSimpleInvoiceImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTSupplierImpl; import com.premiumminds.billy.portugal.persistence.dao.jpa.DAOPTTaxImpl; public class PortugalDependencyModule extends AbstractModule { @Override protected void configure() { this.install(new CoreDependencyModule()); this.install(new CoreJPADependencyModule()); this.install(new GINDependencyModule()); this.bind(DAOPTContact.class).to(DAOPTContactImpl.class); this.bind(DAOPTBusiness.class).to(DAOPTBusinessImpl.class); this.bind(DAOPTRegionContext.class).to(DAOPTRegionContextImpl.class); this.bind(DAOPTAddress.class).to(DAOPTAddressImpl.class); this.bind(DAOPTApplication.class).to(DAOPTApplicationImpl.class); this.bind(DAOPTTax.class).to(DAOPTTaxImpl.class); this.bind(DAOPTProduct.class).to(DAOPTProductImpl.class); this.bind(DAOPTSupplier.class).to(DAOPTSupplierImpl.class); this.bind(DAOPTShippingPoint.class).to(DAOPTShippingPointImpl.class); this.bind(DAOPTCustomer.class).to(DAOPTCustomerImpl.class); this.bind(DAOPTInvoice.class).to(DAOPTInvoiceImpl.class); this.bind(DAOPTInvoiceEntry.class).to(DAOPTInvoiceEntryImpl.class); this.bind(DAOPTCreditNote.class).to(DAOPTCreditNoteImpl.class); this.bind(DAOPTCreditNoteEntry.class) .to(DAOPTCreditNoteEntryImpl.class); this.bind(DAOPTGenericInvoice.class).to(DAOPTGenericInvoiceImpl.class); this.bind(DAOPTGenericInvoiceEntry.class).to( DAOPTGenericInvoiceEntryImpl.class); this.bind(DAOPTSimpleInvoice.class).to(DAOPTSimpleInvoiceImpl.class); this.bind(DAOPTPayment.class).to(DAOPTPaymentImpl.class); this.bind(DAOPTReceiptInvoice.class).to(DAOPTReceiptInvoiceImpl.class); this.bind(BillyPortugal.class); } public static class Initializer { @Inject public Initializer() { // Nothing to initialize } } }