Whether running on client or server side etc.
Previously this was an enum, but it is now a regular class. The change has been made to provide more flexibility in setting up the IsisContext lookup. implementation can be created, specifying in turn a custom {@link ContextCategory} (also now a regular class) can be specified, allowingdifferent was of setting up the .
To use this capability:
- Write your new implementation of IsisContext, along with a static factory method (cf IsisContextStatic#createInstance(IsisSessionFactory))
- Create a new subclass of {@link ContextCategory} (also now a regularclass rather than an enum); this is where your code goes to instantiate your IsisContext implementation
- Create a new subclass of {@link DeploymentType}, passing in the custom {@link ContextCategory} in its constructor
- In your bootstrap code, instantiate your new {@link DeploymentType}subclass
- When you run your app, don't forget to specify your custom {@link DeploymentType}, eg using the --type command line arg