I'm trying to replace the repository service. The deploy of one process, instead of being stored in the DB, it will be stored in a our own proprietary user database. But after seeing the Activiti source code, i have some questions around DbSqlSession, DbSqlSessionFactory classes
It's supposed to re-implement/extend those classes? Because if i do, i think i have to extend almost all manager's that extends AbstractManager. Or am i confusing things?
Basically what i need is instead of using a know DB, that exists in the configurations, i need to use our Object saving methods.
I just want to add it's going to be pretty complex to get working like that … and it will not only be the services, but also the internal EntityManagers for each type of entity the engine uses …
What exactly is your use case? You might be able to get away introducing a custom repositoryService with a custom command that extends the existing one if your use case is fairly easy.
Yeah, i'm just entering in the part of the Managers
The use case is simple, we just want to control the deploy's, i.e. the "place" where they are stored.
For example: Instead of using directly one Oracle or a hsql DB, we want to use our own "ObjectManager" to store the Process's Definition and some more information.
So when we say to activiti to complete one Process/Task, the place where the Activiti engine gets the Process Definition is at the "ObjectManager".
Doesn't know if i was explicit enough to give the ideia. :s
As Joram says, that's pretty hard to achieve, as this is the core of the engine and can't be abstracted out. Perhaps you can take a look at the DeploymentCache class which is consulted every time a processDefinition is needed for execution (not when externally queried).