"D" - <<SMO>> ServiceConfiguration
SMO - ServiceConfiguration
The ServiceConfiguration provides a collection point for future or deployed configurations. Only Services which are available can have a configuration created. A configuration for a "Deployed" instance cannot be deleted. The Service Resource Configuration join a runtime location with a service instance at that location.
For the purposes of this implementation we will assume the following:
The Controller will be RESTful from the service endpoint of {apiRoot}/serviceConfig/v1. The initial REST resource tree is show below.
The Service Configuration Model is represented in the class diagram below
The View will be JSON.
The ServiceConfiguration record in the Model Catalog follows a Stateful lifecycle. The ResourceConfigurations follow a sub-state model. The State can be updated with a partial update (PUT) as long as the current revisionID is supplied as a query parameter. Upon a successful update the revisionID will be changed by the system to a newly generated value. Deletes can only occur if the object has returned to its initial state.
The valid values for ServiceState are "READY", "INPROGESS", and "DEPLOYED". The state transitions allowed are:
The valid values for ResourceState are "READY" "DEPLOYED". The state transitions allowed are: