mercredi 11 mars 2015

What is the most elegant way to choose what service implementation must be used?

in my controller, I need to choose what service implementation I need to use on spring. Before I was encapsulating this code in a factory, but I think that its not a good practice...



@Component
public class StoreServiceFactory {

@Autowired
private List<StoreService> storeServices;

public StoreService getService(){

if(isActiveSale){
return storeServices.get("PublicStoreService")
}

return storeServices.get("PrivateStoreService")
}
}


So I would like to encapsulate this behaviour to not care about inside my controller.. How can I get it??


Aucun commentaire:

Enregistrer un commentaire