package it.integry.integrywmsnative.gest.ordini_uscita_elenco;

import javax.inject.Singleton;

import dagger.Module;
import dagger.Provides;
import it.integry.integrywmsnative.core.rest.consumers.BarcodeRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.ColliMagazzinoRESTConsumer;
import it.integry.integrywmsnative.core.rest.consumers.OrdiniRESTConsumer;
import it.integry.integrywmsnative.gest.ordini_uscita_elenco.rest.OrdiniUscitaElencoRESTConsumer;

@Module(subcomponents = OrdiniUscitaElencoComponent.class)
public class OrdiniUscitaElencoModule {

    @Singleton
    @Provides
    OrdiniUscitaElencoRESTConsumer providesOrdiniUscitaElencoRESTConsumer() {
        return new OrdiniUscitaElencoRESTConsumer();
    }

    @Provides
    OrdiniUscitaElencoViewModel providesProdOrdineLavorazioneElencoViewModel(OrdiniRESTConsumer ordiniRESTConsumer, ColliMagazzinoRESTConsumer colliMagazzinoRESTConsumer, BarcodeRESTConsumer barcodeRESTConsumer, OrdiniUscitaElencoRESTConsumer ordiniUscitaElencoRESTConsumer) {
        return new OrdiniUscitaElencoViewModel(ordiniRESTConsumer, colliMagazzinoRESTConsumer, barcodeRESTConsumer, ordiniUscitaElencoRESTConsumer);
    }

}
