I'm trying to bring a multi-tenancy feature to my existing GWT app. Requirements are as follows
- Use company specific CSS and images
- Few changes to the texts
- Some changes to the actual app logic
Currently my app has one ClientBundle which includes all images and CSS and is accessed via a static constant:
public interface MyRes extends ClientBundle {
public static final MyRes RES = GWT.create(myRes.class);
...
}
Image image = new Image(MyRes.RES.myLogo());
My texts are all inside one big Java properties file which is parsed in to an GWT Messages Interface.
My idea is to setup a different locale for the texts and determine the locale via an URL parameter. I'm still not sure how to load different ClientBundles depending on the company. Do I need to create an abstract ClientBundle and inherit that one into CompanyA and CompanyB ClientBundles?
My main question is, is whether this is a good solution or if there are other, my elegant ways.