Any API available to clone application objects?

I have a scenario to clone application objects to create them as separate application and I couldn't find any api that can clone objects (under different application prefix) and set the object dependencies to newly created objects (uuids or object with new prefix). For example: Application has rule A_A, CDT 'A_B' and process model 'A C' where process model 'C' uses rule A & cdt B. I have to now create another application with prefix lets say 'X' and clone objects from A into it with rule X_A, CDT X_B and process model 'X C' and ensure that process model 'X C' now refers to X_A and X_B. All of this to happen in a plugin (servlet or smart service).

Explored ApplicationService and AssociatedObjects and both of them don't offer any such methods. 

Appreciate any help/suggestions.

  Discussion posts and replies are publicly visible