All services and sources are Resources. The ResourceCatalog loads resources during the startup of the Server. The ResourceCatalog also manages saving, updating, renaming, deleting and versioning of resources.
Save: Saving a resource is done via the SaveResource internal service. The resource is assigned a ResourceID at this point it then uniquely identifies it within Warewolf.
Update: During the save process for an update the ResourceCatalog checks if the resource has changed or has dependents, then the ResourceCatalog will generate a message to inform the Studio that the dependent resource may need to be updated.
Delete: Resource is deleted from the ResourceCatalog. At present there is no built-in mechanism to undo a delete. This is done via the DeleteResource internal service.
Rename: Renaming a resource is done via the RenameResource internal service.
Versioning: During the update process of a resource it is versioned and the version is given a comment based on the action of the update. Interacting with versions i.e. rollback to a version is done via ServerVersionRepository.