1 19 20 package com.lutris.airsent.business; 21 22 import com.lutris.airsent.business.messenger.*; 23 import com.lutris.airsent.business.delivery.*; 24 import com.lutris.airsent.business.customer.*; 25 import com.lutris.airsent.business.address.*; 26 import com.lutris.airsent.business.email.*; 27 import com.lutris.airsent.business.sms.*; 28 import com.lutris.airsent.spec.delivery.DeliveryManager; 29 import com.lutris.airsent.spec.messenger.MessengerManager; 30 import com.lutris.airsent.spec.sms.SMSManager; 31 import com.lutris.airsent.spec.customer.CustomerManager; 32 import com.lutris.airsent.spec.email.EmailManager; 33 import com.lutris.airsent.business.address.AddressManager; 34 import com.lutris.airsent.spec.AirSentException; 35 import com.lutris.airsent.spec.HomeManager; 36 import com.lutris.util.Config; 37 38 41 public class HomeManagerImpl implements HomeManager { 42 43 private static HomeManagerImpl instance = null; 44 private CustomerManagerImpl customerManager = null; 45 private DeliveryManagerImpl deliveryManager = null; 46 private MessengerManagerImpl messengerManager = null; 47 private AddressManager addressManager = null; 48 private EmailManagerImpl emailManager = null; 49 private SMSManagerImpl smsManager = null; 50 51 55 public static HomeManagerImpl getInstance() 56 throws AirSentBusinessException { 57 58 if (instance == null) { 59 throw new AirSentBusinessException("HomeManager: not initialized."); 60 61 } 62 return instance; 63 } 64 65 public HomeManager getInst() 66 throws AirSentBusinessException { 67 68 if (instance == null) { 69 throw new AirSentBusinessException("HomeManager: not initialized."); 70 } 71 return instance; 72 } 73 74 public HomeManagerImpl(){} 75 76 81 private HomeManagerImpl(Config config) 82 throws AirSentBusinessException { 83 84 try { 85 deliveryManager = new DeliveryManagerImpl(); 86 customerManager = new CustomerManagerImpl(); 87 messengerManager = new MessengerManagerImpl(); 88 addressManager = new AddressManager(); 89 emailManager = new EmailManagerImpl(config); 90 smsManager = new SMSManagerImpl(config); 91 } catch (Exception e) { 92 throw new AirSentBusinessException("Exception creating factories", e); 93 } 94 } 95 96 97 102 public synchronized void initialize(Config config) 103 throws AirSentBusinessException { 104 105 if (instance != null) { 106 throw new AirSentBusinessException("HomeManager: already initialized."); 107 } 108 instance = new HomeManagerImpl(config); 109 } 110 111 112 113 118 public DeliveryManager getDeliveryManager() { 119 return deliveryManager; 120 } 121 122 127 public CustomerManager getCustomerManager() { 128 return customerManager; 129 } 130 131 135 public MessengerManager getMessengerManager() { 136 return messengerManager; 137 } 138 139 143 public AddressManager getAddressManager() { 144 return addressManager; 145 } 146 147 151 public EmailManager getEmailManager() { 152 return emailManager; 153 } 154 155 159 public SMSManager getSMSManager() { 160 return smsManager; 161 } 162 163 } 164 165 166 167 168 169 170 171 | Popular Tags |