// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/abstractions/Bus.java
// public interface Bus {
//   void post(Object object);
//   void postInmediate(Object object);
//   void register(Object object);
//   void unregister(Object object);
// }
// 
// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/interactors/Interactor.java
// public interface Interactor {
//   public void execute() throws Throwable;
// }
// 
// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/interactors/main/events/GetContactsEvent.java
// public class GetContactsEvent extends BaseEvent {
//   private List<Contact> contactList;
// 
//   public List<Contact> getContactList() {
//     return contactList;
//   }
// 
//   public void setContactList(List<Contact> contactList) {
//     this.contactList = contactList;
//   }
// }
// 
// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/model/Contact.java
// public class Contact {
// 
//   private int idContact;
//   private String firstName;
//   private String lastName;
//   private int phone;
//   private String email;
// 
//   public int getIdContact() {
//     return idContact;
//   }
// 
//   public void setIdContact(int idContact) {
//     this.idContact = idContact;
//   }
// 
//   public String getFirstName() {
//     return firstName;
//   }
// 
//   public void setFirstName(String firstName) {
//     this.firstName = firstName;
//   }
// 
//   public String getLastName() {
//     return lastName;
//   }
// 
//   public void setLastName(String lastName) {
//     this.lastName = lastName;
//   }
// 
//   public int getPhone() {
//     return phone;
//   }
// 
//   public void setPhone(int phone) {
//     this.phone = phone;
//   }
// 
//   public String getEmail() {
//     return email;
//   }
// 
//   public void setEmail(String email) {
//     this.email = email;
//   }
// }
// 
// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/repository/ContactsRepository.java
// public interface ContactsRepository {
//   List<Contact> getContacts();
//   void insertContact(Contact contact);
// }


import java.util.List;
import sergio.vasco.androidforexample.domain.abstractions.Bus;
import sergio.vasco.androidforexample.domain.interactors.Interactor;
import sergio.vasco.androidforexample.domain.interactors.main.events.GetContactsEvent;
import sergio.vasco.androidforexample.domain.model.Contact;
import sergio.vasco.androidforexample.domain.repository.ContactsRepository;
package sergio.vasco.androidforexample.domain.interactors.main;


/**
 * Name: Sergio Vasco
 * Date: 15/1/16.
 */
public class GetContactsFromDataBaseInteractor implements Interactor {

  private Bus bus;
  private GetContactsEvent event;
  private ContactsRepository contactsRepository;

// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/abstractions/Bus.java
// public interface Bus {
//   void post(Object object);
//   void postInmediate(Object object);
//   void register(Object object);
//   void unregister(Object object);
// }
// 
// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/interactors/Interactor.java
// public interface Interactor {
//   public void execute() throws Throwable;
// }
// 
// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/interactors/main/events/GetContactsEvent.java
// public class GetContactsEvent extends BaseEvent {
//   private List<Contact> contactList;
// 
//   public List<Contact> getContactList() {
//     return contactList;
//   }
// 
//   public void setContactList(List<Contact> contactList) {
//     this.contactList = contactList;
//   }
// }
// 
// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/model/Contact.java
// public class Contact {
// 
//   private int idContact;
//   private String firstName;
//   private String lastName;
//   private int phone;
//   private String email;
// 
//   public int getIdContact() {
//     return idContact;
//   }
// 
//   public void setIdContact(int idContact) {
//     this.idContact = idContact;
//   }
// 
//   public String getFirstName() {
//     return firstName;
//   }
// 
//   public void setFirstName(String firstName) {
//     this.firstName = firstName;
//   }
// 
//   public String getLastName() {
//     return lastName;
//   }
// 
//   public void setLastName(String lastName) {
//     this.lastName = lastName;
//   }
// 
//   public int getPhone() {
//     return phone;
//   }
// 
//   public void setPhone(int phone) {
//     this.phone = phone;
//   }
// 
//   public String getEmail() {
//     return email;
//   }
// 
//   public void setEmail(String email) {
//     this.email = email;
//   }
// }
// 
// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/repository/ContactsRepository.java
// public interface ContactsRepository {
//   List<Contact> getContacts();
//   void insertContact(Contact contact);
// }


// Path: domain/src/main/java/sergio/vasco/androidforexample/domain/interactors/main/GetContactsFromDataBaseInteractor.java
import java.util.List;
import sergio.vasco.androidforexample.domain.abstractions.Bus;
import sergio.vasco.androidforexample.domain.interactors.Interactor;
import sergio.vasco.androidforexample.domain.interactors.main.events.GetContactsEvent;
import sergio.vasco.androidforexample.domain.model.Contact;
import sergio.vasco.androidforexample.domain.repository.ContactsRepository;

package sergio.vasco.androidforexample.domain.interactors.main;


/**
 * Name: Sergio Vasco
 * Date: 15/1/16.
 */
public class GetContactsFromDataBaseInteractor implements Interactor {

  private Bus bus;
  private GetContactsEvent event;
  private ContactsRepository contactsRepository;

  public GetContactsFromDataBaseInteractor(Bus bus, ContactsRepository contactsRepository) {