|
Post by Leon Wang on Mar 13, 2018 8:52:20 GMT
Hi all,
Recently I learned from Swordfish v1.6.0 and planned to implement a prototype of Swordfish provider, but it confused me when I learned the relationship between ClassOfService and ***LoSCapabilities:
1. From the schema definition, it's very clear to me that one ClassOfService contains multiple (five exactly) LinesOfService with different capabilities.
2. From the schema definition, there is another schema called ***LoSCapabilties, and IMO it represents separate collections of LinesOfService with different types.
3. In the UserGuide docs, A use case is that StorageAdmin has access to create line of service, and it turns out to send a PATCH request to update the correspond ***LoSCapabilities.
4. Another use case is that when StorageAdmin creates class of service, some new ***LinesOfServices are also inputted as the properties of new-created ClassOfService, but I didn't see any updates on ***LoSCappabilities.
5. When learning other use cases related to these two schema, It was so complicated that I was completely confused about the relationship between these two schema.
It could be appreciated if anyone could offer some help and give any answers.
Thanks, Leon Wang
|
|
|
Post by gericson on Mar 14, 2018 21:20:03 GMT
Hi Leon. Following is additional information and clarifications that I hope will reduce your concerns. (see text taked with [GME])
1. From the schema definition, it's very clear to me that one ClassOfService contains multiple (five exactly) LinesOfService with different capabilities. [GME] Clarification. A ClassOfService may contain up to five different categories of service level requirements. Each category of service level requirement is represented by a zero or more corresponding ***LineOfService instances. Most likely, only DataProtectionLinesOfService will support more than instance, however the model does not enforce that.
2. From the schema definition, there is another schema called ***LoSCapabilties, and IMO it represents separate collections of LinesOfService with different types. [GME] Each xxxLoSCapabilities instance found in StorageServices represents the ability of the service to create and support new ***LineOfService instances that each represent a specific service level requirement. All currently defined and supported ***LineOfService instances should be copied into the ***xxxLoSCapabilities /SupportedLinesOfService collection.
3. In the UserGuide docs, A use case is that StorageAdmin has access to create line of service, and it turns out to send a PATCH request to update the correspond ***LoSCapabilities. [GME] The implementation of that ***LoSCapabilities. Should validate that the service is able to support each new or modified ***LineOfService instance added to the SupportedLinesOfService collection.
4. Another use case is that when StorageAdmin creates class of service, some new ***LinesOfServices are also inputted as the properties of new-created ClassOfService, but I didn't see any updates on ***LoSCappabilities. [GME] The implementation is responsible for validation and making the corresponding updates to the corresponding ***xxxLoSCapabilities /SupportedLinesOfService collections.
|
|
|
Post by leonwang on May 11, 2018 3:29:00 GMT
Hi George,
Firstly sorry for the late replies, it seems that the message wasn't sent to my email.
After your detailed explanation, it's quite clear to me, Thanks!
BRs, Leon Wang
|
|